diff --git a/base-linux/src/platform/linux_syscalls.h b/base-linux/src/platform/linux_syscalls.h index 3cc473dca8..09c9380830 100644 --- a/base-linux/src/platform/linux_syscalls.h +++ b/base-linux/src/platform/linux_syscalls.h @@ -57,8 +57,8 @@ extern "C" int lx_clone(int (*fn)(void *), void *child_stack, inline Genode::uint16_t lx_bswap16(Genode::uint16_t x) { char v[2] = { - (x & 0xff00) >> 8, - (x & 0x00ff) >> 0, + (char)((x & 0xff00) >> 8), + (char)((x & 0x00ff) >> 0), }; return *(Genode::uint16_t *)v; } @@ -67,10 +67,10 @@ inline Genode::uint16_t lx_bswap16(Genode::uint16_t x) inline Genode::uint32_t lx_bswap32(Genode::uint32_t x) { char v[4] = { - (x & 0xff000000) >> 24, - (x & 0x00ff0000) >> 16, - (x & 0x0000ff00) >> 8, - (x & 0x000000ff) >> 0, + (char)((x & 0xff000000) >> 24), + (char)((x & 0x00ff0000) >> 16), + (char)((x & 0x0000ff00) >> 8), + (char)((x & 0x000000ff) >> 0), }; return *(Genode::uint32_t *)v; } diff --git a/os/src/lib/dde_kit/printf.cc b/os/src/lib/dde_kit/printf.cc index 16b0785484..3ee428746e 100644 --- a/os/src/lib/dde_kit/printf.cc +++ b/os/src/lib/dde_kit/printf.cc @@ -20,7 +20,7 @@ extern "C" { extern "C" void dde_kit_print(const char *msg) { - Genode::printf(msg); + Genode::printf("%s", msg); }