arm: fix typo in dg-require-effective-target [PR118089]
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / reassoc-43.c
blob1194e2cdbc7a84823809b9a7b873a0162f3b3946
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-reassoc -w" } */
4 typedef union tree_node *tree;
5 enum cpp_ttype { CPP_COLON, CPP_SEMICOLON, CPP_CLOSE_BRACE, CPP_COMMA };
6 enum rid { RID_STATIC = 0, RID_ATTRIBUTE, };
7 typedef struct c_token
9 enum cpp_ttype type:8;
11 c_token;
12 typedef struct c_parser
14 c_token tokens[2];
15 short tokens_avail;
17 c_parser;
18 int c_parser_next_token_is_keyword (c_parser *, enum rid);
19 tree chainon (int, tree);
20 int c_parser_attributes (c_parser *);
21 __inline__ c_token *
22 c_parser_peek_token (c_parser * parser)
24 if (parser->tokens_avail == 0)
26 parser->tokens_avail = 1;
28 return &parser->tokens[0];
31 __inline__ unsigned char
32 c_parser_next_token_is (c_parser * parser, enum cpp_ttype type)
34 return c_parser_peek_token (parser)->type == type;
37 void
38 c_parser_translation_unit (c_parser * parser)
40 tree prefix_attrs;
41 tree all_prefix_attrs;
42 while (1)
44 if (c_parser_next_token_is (parser, CPP_COLON)
45 || c_parser_next_token_is (parser, CPP_COMMA)
46 || c_parser_next_token_is (parser, CPP_SEMICOLON)
47 || c_parser_next_token_is (parser, CPP_CLOSE_BRACE)
48 || c_parser_next_token_is_keyword (parser, RID_ATTRIBUTE))
50 if (c_parser_next_token_is_keyword (parser, RID_ATTRIBUTE))
51 all_prefix_attrs =
52 chainon (c_parser_attributes (parser), prefix_attrs);
56 /* { dg-final { scan-tree-dump-not "\[ (\]0 != 0" "reassoc2"} } */