* in RELEASE mode, returns ret if the expression expr evaluates to zero
* in ASSERT mode, asserts the expression expr (and the string string).
*/
-#define ASSERT_AND_RET(expr, string, ret) if (!(expr)) return (ret)
+#define ASSERT_AND_RET(expr, string, ret) do { if (!(expr)) return (ret); } while (0)
/*
* in RELEASE mode, returns ret if the expression expr evaluates to zero
* in ASSERT mode, executes blk if the expression expr evaluates to zero and asserts expr
*/
-#define ASSERT_AND_RET_DBG(expr, string, ret, blk) if (!(expr)) return (ret)
+#define ASSERT_AND_RET_DBG(expr, string, ret, blk) do { if (!(expr)) return (ret); } while (0)
#else
#define ASSERT_AND_RET(expr, string, ret) \
do { \
/**
* Set the default verify_node and verify_proj_node operation for an ir_op_ops.
*/
-void firm_set_default_verifyer(opcode code, ir_op_ops *ops);
+void firm_set_default_verifyer(ir_opcode code, ir_op_ops *ops);
#endif /* _IRVRFY_T_H_ */