lexer_pos.colno = 1; \
code
-#define eat(c_type) do { assert(c == c_type); next_char(); } while (0)
+#define eat(c_type) (assert(c == c_type), next_char())
static void maybe_concat_lines(void)
{
next_token();
break;
-#define CHECK_DOUBLE_TYPE() \
- do { \
- if ( type != NULL) \
- errorf(HERE, "multiple data types in declaration specifiers"); \
- } while(0)
+#define CHECK_DOUBLE_TYPE() \
+ (type != NULL ? errorf(HERE, "multiple types in declaration specifiers") : (void)0)
case T_struct:
CHECK_DOUBLE_TYPE();
++input.position.lineno; \
code
-#define eat(c_type) do { assert(CC == c_type); next_char(); } while(0)
+#define eat(c_type) (assert(CC == c_type), next_char())
static void maybe_concat_lines(void)
{