Index: kernel/generic/include/context.h
===================================================================
--- kernel/generic/include/context.h	(revision 7a0359b903311f67678b4a0a3ebbcf0daf6eab38)
+++ kernel/generic/include/context.h	(revision c8d0f9e51c2c5a2a57ccd5bd36d0254ea8199cf4)
@@ -41,6 +41,8 @@
 
 #define context_set_generic(ctx, _pc, stack, size) \
-	(ctx)->pc = (uintptr_t) (_pc); \
-	(ctx)->sp = ((uintptr_t) (stack)) + (size) - SP_DELTA;
+	do { \
+		(ctx)->pc = (uintptr_t) (_pc); \
+		(ctx)->sp = ((uintptr_t) (stack)) + (size) - SP_DELTA; \
+	} while (0)
 
 extern int context_save_arch(context_t *ctx) __attribute__((returns_twice));
