case EXPR_UNARY_DELETE_ARRAY:
/**
- * unary expression with optinal operand
+ * unary expression with optional operand
*/
#define EXPR_UNARY_CASES_OPTIONAL \
case EXPR_UNARY_THROW: \
GNU_AK_FASTCALL,
GNU_AK_DEPRECATED,
GNU_AK_NOINLINE,
+ GNU_AK_RETURNS_TWICE,
GNU_AK_NORETURN,
GNU_AK_NAKED,
GNU_AK_PURE,
STATEMENT_COMPOUND,
STATEMENT_RETURN,
STATEMENT_DECLARATION,
- STATEMENT_LOCAL_LABEL,
STATEMENT_IF,
STATEMENT_SWITCH,
STATEMENT_EXPRESSION,
statement_base_t base;
statement_t *statements;
scope_t scope;
+ bool stmt_expr; /* The compound statement is a statement expression */
};
struct declaration_statement_t {
entity_t *declarations_end;
};
-struct local_label_statement_t {
- statement_base_t base;
- entity_t *labels_begin;
- entity_t *labels_end;
-};
-
struct if_statement_t {
statement_base_t base;
expression_t *condition;
return_statement_t returns;
compound_statement_t compound;
declaration_statement_t declaration;
- local_label_statement_t local_label;
if_statement_t ifs;
switch_statement_t switchs;
goto_statement_t gotos;