added test cases
This commit is contained in:
35
test/corpus/positive/ArithmeticExpression1.txt
Normal file
35
test/corpus/positive/ArithmeticExpression1.txt
Normal file
@@ -0,0 +1,35 @@
|
||||
====================
|
||||
ArithmeticExpression1
|
||||
====================
|
||||
|
||||
int x = a + b;
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
51
test/corpus/positive/ArithmeticExpression2.txt
Normal file
51
test/corpus/positive/ArithmeticExpression2.txt
Normal file
@@ -0,0 +1,51 @@
|
||||
====================
|
||||
ArithmeticExpression2
|
||||
====================
|
||||
|
||||
int x = (a * b) + c;
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
51
test/corpus/positive/ArithmeticExpression3.txt
Normal file
51
test/corpus/positive/ArithmeticExpression3.txt
Normal file
@@ -0,0 +1,51 @@
|
||||
====================
|
||||
ArithmeticExpression3
|
||||
====================
|
||||
|
||||
int x = a * (b + c);
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
51
test/corpus/positive/ArithmeticExpression4.txt
Normal file
51
test/corpus/positive/ArithmeticExpression4.txt
Normal file
@@ -0,0 +1,51 @@
|
||||
====================
|
||||
ArithmeticExpression4
|
||||
====================
|
||||
|
||||
int x = a / (b - c);
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
76
test/corpus/positive/ArithmeticExpression5.txt
Normal file
76
test/corpus/positive/ArithmeticExpression5.txt
Normal file
@@ -0,0 +1,76 @@
|
||||
====================
|
||||
ArithmeticExpression5
|
||||
====================
|
||||
|
||||
int x = (4I) - (5i) / (2U);
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(signed_integer_literal))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(signed_integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal))))))))))))))))))))))))))))
|
||||
42
test/corpus/positive/ArrayExpression1.txt
Normal file
42
test/corpus/positive/ArrayExpression1.txt
Normal file
@@ -0,0 +1,42 @@
|
||||
====================
|
||||
ArrayExpression1
|
||||
====================
|
||||
|
||||
int x = y[3u];
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))))))))))))))))
|
||||
67
test/corpus/positive/ArrayExpression2.txt
Normal file
67
test/corpus/positive/ArrayExpression2.txt
Normal file
@@ -0,0 +1,67 @@
|
||||
====================
|
||||
ArrayExpression2
|
||||
====================
|
||||
|
||||
int x = y[3u][a][9];
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))
|
||||
447
test/corpus/positive/ArrayExpression3.txt
Normal file
447
test/corpus/positive/ArrayExpression3.txt
Normal file
@@ -0,0 +1,447 @@
|
||||
====================
|
||||
ArrayExpression3
|
||||
====================
|
||||
|
||||
int x = (a[(e / 11 - (h + 12)) * ((e * f) * 13)][12][f]) -
|
||||
((f[13 * 12]) * (f + ((b - 3) - (11 - e)))) /
|
||||
(((11 / a - (3 + g)) * ((c - d) / 12)) / (13 - (d[0][12])));
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
|
||||
205
test/corpus/positive/ArrayExpression4.txt
Normal file
205
test/corpus/positive/ArrayExpression4.txt
Normal file
@@ -0,0 +1,205 @@
|
||||
====================
|
||||
ArrayExpression4
|
||||
====================
|
||||
|
||||
int x = h[(((f - h) - 11i8) - (d / 0i64) / (11u16 - b)) +
|
||||
(a[g / f][f - e][d - 12I32])];
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(signed_integer_literal))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(signed_integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(signed_integer_literal))))))))))))))))))))))))))))))))))))))))))))))))
|
||||
233
test/corpus/positive/ArrayExpression5.txt
Normal file
233
test/corpus/positive/ArrayExpression5.txt
Normal file
@@ -0,0 +1,233 @@
|
||||
====================
|
||||
ArrayExpression5
|
||||
====================
|
||||
|
||||
int x = (e[(c[13u16]) - 11i16 / f][(e / e) / 13U16 + (c + 0I16) * b]) /
|
||||
(e - (11I8 - (a[12U8 * a][d])));
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal))))))))))))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(signed_integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(signed_integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(signed_integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
|
||||
555
test/corpus/positive/ArrayExpression6.txt
Normal file
555
test/corpus/positive/ArrayExpression6.txt
Normal file
@@ -0,0 +1,555 @@
|
||||
====================
|
||||
ArrayExpression6
|
||||
====================
|
||||
|
||||
|
||||
int x = (((h[3][a]) / (3 / 13 + 12 * 3)) * ((a[13][e][b]) * 13) +
|
||||
((13 * 12) / 0 + 3 / (d * 3)) * (13 - c)) /
|
||||
(((d[i]) / 12 + (h + (12 + 12)) * f) +
|
||||
(0 * (3 - (0 - 3))) / ((12 - g) / (a + 0) + (i + a) / (g * 12)));
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))))))))))))))))))))))))
|
||||
307
test/corpus/positive/ArrayExpression7.txt
Normal file
307
test/corpus/positive/ArrayExpression7.txt
Normal file
@@ -0,0 +1,307 @@
|
||||
====================
|
||||
ArrayExpression7
|
||||
====================
|
||||
|
||||
function main() {
|
||||
x[24][a / 4 * 3 + 3][x[3][b[1]]] =
|
||||
(12 + (c[13 + 12][11][12]) * (((12 + 13) - (13 + g)) - i)) *
|
||||
(12 / 11);
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature)
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))))))))
|
||||
94
test/corpus/positive/ArrayExpression8.txt
Normal file
94
test/corpus/positive/ArrayExpression8.txt
Normal file
@@ -0,0 +1,94 @@
|
||||
====================
|
||||
ArrayExpression8
|
||||
====================
|
||||
|
||||
function main() {
|
||||
int b;
|
||||
int[10] x;
|
||||
|
||||
x[b = 4] = 4;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature)
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(int_type))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement))))))))
|
||||
171
test/corpus/positive/Assignments1.txt
Normal file
171
test/corpus/positive/Assignments1.txt
Normal file
@@ -0,0 +1,171 @@
|
||||
====================
|
||||
Assignments1
|
||||
====================
|
||||
|
||||
|
||||
function main() {
|
||||
int x = 0;
|
||||
int y = 3;
|
||||
|
||||
x += 3;
|
||||
y -= x + 3;
|
||||
x *= y * y - 3;
|
||||
y /= x;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature)
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement))))))))
|
||||
68
test/corpus/positive/BooleanExpression1.txt
Normal file
68
test/corpus/positive/BooleanExpression1.txt
Normal file
@@ -0,0 +1,68 @@
|
||||
====================
|
||||
BooleanExpression1
|
||||
====================
|
||||
|
||||
function main() {
|
||||
|
||||
bool b = true && false || false && true;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature)
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(predefined_constant))))))))))
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(predefined_constant))))))))))
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(predefined_constant))))))))))
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(predefined_constant)))))))))))))))))))))
|
||||
184
test/corpus/positive/BooleanExpression2.txt
Normal file
184
test/corpus/positive/BooleanExpression2.txt
Normal file
@@ -0,0 +1,184 @@
|
||||
====================
|
||||
BooleanExpression2
|
||||
====================
|
||||
|
||||
function main() {
|
||||
bool b =
|
||||
((x < 9) || (y >= -1)) || (9 == z) && (x + c > 10 || x - c <= 4);
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature)
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(geq_operator)
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))))))))
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(leq_operator)
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))))))
|
||||
102
test/corpus/positive/CastingExpression1.txt
Normal file
102
test/corpus/positive/CastingExpression1.txt
Normal file
@@ -0,0 +1,102 @@
|
||||
====================
|
||||
CastingExpression1
|
||||
====================
|
||||
|
||||
function main() {
|
||||
int x = (int)b;
|
||||
int y = (int)(uint)b;
|
||||
int z = (int)(char)(uint)b;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature)
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type)))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type)))
|
||||
(cast_expression
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type)))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type)))
|
||||
(cast_expression
|
||||
(type_specifier_qualifier
|
||||
(type_specifier))
|
||||
(cast_expression
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type)))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))
|
||||
113
test/corpus/positive/Character1.txt
Normal file
113
test/corpus/positive/Character1.txt
Normal file
@@ -0,0 +1,113 @@
|
||||
====================
|
||||
Character1
|
||||
====================
|
||||
|
||||
char a = 'a';
|
||||
char b = '\n';
|
||||
char c = '\v';
|
||||
char d = '=';
|
||||
char e = '\'';
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(char_literal))))))))))))))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(char_literal))))))))))))))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(char_literal))))))))))))))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(char_literal))))))))))))))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(char_literal)))))))))))))))))
|
||||
321
test/corpus/positive/ForStatement1.txt
Normal file
321
test/corpus/positive/ForStatement1.txt
Normal file
@@ -0,0 +1,321 @@
|
||||
====================
|
||||
ForStatement1
|
||||
====================
|
||||
|
||||
function e() {
|
||||
int d;
|
||||
i = 12 * (0 * (d - 13 * e));
|
||||
for (; 0 * ((12 / h) / 3) != 13 + g;)
|
||||
++d;
|
||||
for (int i = 0; f > 0 && 12 == a; i++) {
|
||||
int d;
|
||||
i = b;
|
||||
}
|
||||
|
||||
d = h + 12;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature)
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))
|
||||
579
test/corpus/positive/ForStatement2.txt
Normal file
579
test/corpus/positive/ForStatement2.txt
Normal file
@@ -0,0 +1,579 @@
|
||||
====================
|
||||
ForStatement2
|
||||
====================
|
||||
|
||||
function a() {
|
||||
int f;
|
||||
uint64_t b;
|
||||
for (;;) {
|
||||
if ((11 + g) * (3 + d) - (i / 13) / (e - 13) <
|
||||
(13 * (a + d)) * ((f - 11) + (b - 11))) {
|
||||
break;
|
||||
} else if (f[d] == 3) {
|
||||
uint h;
|
||||
for (; b != 11 || d >= 0;) {
|
||||
int a;
|
||||
uint d;
|
||||
f = 12;
|
||||
a = 13;
|
||||
}
|
||||
e = d;
|
||||
} else {
|
||||
for (int i = 0;;)
|
||||
break;
|
||||
}
|
||||
|
||||
int d;
|
||||
for (;; d--) {
|
||||
for (;;) {
|
||||
d += 9;
|
||||
}
|
||||
g[3][d] = d;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature)
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(selection_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))))))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement)))))
|
||||
(selection_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(geq_operator)
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(jump_statement))))))))))))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))))))))))))))
|
||||
72
test/corpus/positive/ForStatement3.txt
Normal file
72
test/corpus/positive/ForStatement3.txt
Normal file
@@ -0,0 +1,72 @@
|
||||
====================
|
||||
ForStatement3
|
||||
====================
|
||||
|
||||
function main() -> int {
|
||||
I32 x = 0;
|
||||
|
||||
for (;;) {
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))
|
||||
48
test/corpus/positive/ForStatement4.txt
Normal file
48
test/corpus/positive/ForStatement4.txt
Normal file
@@ -0,0 +1,48 @@
|
||||
====================
|
||||
ForStatement4
|
||||
====================
|
||||
|
||||
function main() -> int {
|
||||
for (;;)
|
||||
;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(secondary_block
|
||||
(statement
|
||||
(expression_statement)))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))
|
||||
164
test/corpus/positive/InitializerDeclaration1.txt
Normal file
164
test/corpus/positive/InitializerDeclaration1.txt
Normal file
@@ -0,0 +1,164 @@
|
||||
====================
|
||||
InitializerDeclaration1
|
||||
====================
|
||||
|
||||
int[10] x = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(int_type))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(braced_initializer
|
||||
(initializer_list
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))
|
||||
75
test/corpus/positive/Limits1.txt
Normal file
75
test/corpus/positive/Limits1.txt
Normal file
@@ -0,0 +1,75 @@
|
||||
====================
|
||||
Limits1
|
||||
====================
|
||||
|
||||
I64 x = 9223372036854775807;
|
||||
I64 y = -9223372036854775808;
|
||||
U64 z = 18446744073709551615;
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
648
test/corpus/positive/Program1.txt
Normal file
648
test/corpus/positive/Program1.txt
Normal file
@@ -0,0 +1,648 @@
|
||||
====================
|
||||
Program1
|
||||
====================
|
||||
|
||||
|
||||
function y(int x, uint32_t z) -> int16_t {
|
||||
mut int[3][13][3] x;
|
||||
const int a = 3;
|
||||
x = y(3, z(y, y));
|
||||
x(x(13, z) - (z / 3 + a + x), y(y, 13) / (13 / 3 - y / x));
|
||||
}
|
||||
|
||||
// ----------
|
||||
|
||||
function x(int z, int x) -> int {
|
||||
mut int x;
|
||||
int b = 45;
|
||||
return y(13 + (-b) + y, y * y - z / y);
|
||||
y(((y - 13) / (3 - x)) / (13 * (13 + 13)), y(3 - 3, 3 * x));
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(parameter_list
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(identifier))
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(identifier)))
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(int_type))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))))))))))))))
|
||||
(comment)
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(parameter_list
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(identifier))
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(identifier)))
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))))))))))))))
|
||||
906
test/corpus/positive/Program2.txt
Normal file
906
test/corpus/positive/Program2.txt
Normal file
@@ -0,0 +1,906 @@
|
||||
====================
|
||||
Program2
|
||||
====================
|
||||
|
||||
function x(int y, int x) -> int {
|
||||
const int y;
|
||||
z = x(3 / 3, y) * y(3 + z, z);
|
||||
while (y > 13 / x) {
|
||||
int[13][3][3] x;
|
||||
y = (z - 3) * 3;
|
||||
y(z * y, 3 + 3);
|
||||
}
|
||||
}
|
||||
|
||||
//----------
|
||||
|
||||
function y(int y, char z) -> int[3u] {
|
||||
mut bool z;
|
||||
if (y * ((z - 13) - z) >= ((z * 3) / (y - y)) * ((x - z) * x)) {
|
||||
U64 y;
|
||||
if (y + y <= 3 + x) {
|
||||
I32 z;
|
||||
return y;
|
||||
return;
|
||||
}
|
||||
z(13 / x, z);
|
||||
} else if (x * 3 > 0) {
|
||||
const uint32_t a = y(y * x, 3);
|
||||
return a;
|
||||
} else {
|
||||
z(13i32);
|
||||
}
|
||||
x = x(13 - y, 13 * 3) * ((z * 3 - 3) - (13 - 13) / z);
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(parameter_list
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(identifier))
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(identifier)))
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(int_type))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))))))))))))))
|
||||
(comment)
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(parameter_list
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(identifier))
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(identifier)))
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(int_type))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal))))))))))))))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(selection_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))
|
||||
(geq_operator)
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(selection_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(leq_operator)
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement)))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))))))))))
|
||||
(selection_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(signed_integer_literal)))))))))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))))))
|
||||
788
test/corpus/positive/Program3.txt
Normal file
788
test/corpus/positive/Program3.txt
Normal file
@@ -0,0 +1,788 @@
|
||||
====================
|
||||
Program3
|
||||
====================
|
||||
|
||||
mut uint[10u] array = {3u, 58u, 17u, 81u, 22u, 0u, 39u, 11u, 49u, 64u};
|
||||
|
||||
function bubble(uint n) -> int {
|
||||
for (mut uint i = n - 1u; i > 0u; i--) {
|
||||
for (mut uint j = 0u; j < i; j++) {
|
||||
if (array[j] > array[j + 1u]) {
|
||||
uint tmp = array[j + 1u];
|
||||
array[j + 1u] = array[j];
|
||||
array[j] = tmp;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
function print_array(uint n) {
|
||||
for (mut uint i = 0u; i < n; i++) {
|
||||
print((string)(array[i]) + ", ");
|
||||
}
|
||||
print("\n");
|
||||
}
|
||||
|
||||
function main() -> int {
|
||||
print_array(10u);
|
||||
bubble(10u);
|
||||
print_array(10u);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(array_specifier
|
||||
(type_specifier
|
||||
(uint_type))
|
||||
(constant_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal))))))))))))))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(braced_initializer
|
||||
(initializer_list
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))))))))
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(parameter_list
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(identifier)))
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(selection_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))))))))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(parameter_list
|
||||
(parameter_declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(identifier))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal)))))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(print_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(type_specifier_qualifier
|
||||
(type_specifier))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(string_literal)))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(print_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(string_literal))))))))))))))))))))
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))
|
||||
(argument_expression_list
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(unsigned_integer_literal))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))
|
||||
101
test/corpus/positive/ReturnStatement1.txt
Normal file
101
test/corpus/positive/ReturnStatement1.txt
Normal file
@@ -0,0 +1,101 @@
|
||||
====================
|
||||
ReturnStatement1
|
||||
====================
|
||||
|
||||
function g() -> int {
|
||||
mut int i;
|
||||
const mut bool b;
|
||||
return (11 - 3) / (c + 13);
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier)
|
||||
(type_qualifier))
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))))))))))))))))))))))))))
|
||||
92
test/corpus/positive/String1.txt
Normal file
92
test/corpus/positive/String1.txt
Normal file
@@ -0,0 +1,92 @@
|
||||
====================
|
||||
String1
|
||||
====================
|
||||
|
||||
string s1 = "this is a test\n";
|
||||
string s2 = "'a filepath'";
|
||||
string s3 = "this\0 is a test\n";
|
||||
string s4 = "\tthis\tis\v\a\'my\'test\n";
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(string_literal))))))))))))))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(string_literal))))))))))))))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(string_literal))))))))))))))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier)
|
||||
(initializer
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(string_literal)))))))))))))))))
|
||||
81
test/corpus/positive/Types1.txt
Normal file
81
test/corpus/positive/Types1.txt
Normal file
@@ -0,0 +1,81 @@
|
||||
====================
|
||||
Types1
|
||||
====================
|
||||
|
||||
mut int x;
|
||||
const int y;
|
||||
const mut int z;
|
||||
mut const int a;
|
||||
const mut const int b;
|
||||
const mut mut const uint c;
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier)
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier)
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier)
|
||||
(type_qualifier)
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(translation_entity
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier)
|
||||
(type_qualifier)
|
||||
(type_qualifier)
|
||||
(type_qualifier))
|
||||
(type_specifier
|
||||
(uint_type))))
|
||||
(init_declarator
|
||||
(identifier)))))
|
||||
383
test/corpus/positive/WhileStatement1.txt
Normal file
383
test/corpus/positive/WhileStatement1.txt
Normal file
@@ -0,0 +1,383 @@
|
||||
====================
|
||||
WhileStatement1
|
||||
====================
|
||||
|
||||
function i() {
|
||||
I8 i;
|
||||
while (a - 12 > (i + (c + 11)) - 11) {
|
||||
int g;
|
||||
mut bool d;
|
||||
d = g / f - 3;
|
||||
g = 12 + (d + e);
|
||||
}
|
||||
while (13 * i >= (h + 0) / c + i)
|
||||
g++;
|
||||
int f;
|
||||
while (b - h <= g) {
|
||||
int f;
|
||||
int32_t e;
|
||||
b = d;
|
||||
a = a;
|
||||
}
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature)
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))))
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))))))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_qualifier_list
|
||||
(type_qualifier))
|
||||
(type_specifier)))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(geq_operator)
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))))))))))))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier)))))))
|
||||
(leq_operator)
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(declaration
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))
|
||||
(init_declarator
|
||||
(identifier))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(expression_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(identifier))))))))))))))))))))))))))))))
|
||||
62
test/corpus/positive/WhileStatement2.txt
Normal file
62
test/corpus/positive/WhileStatement2.txt
Normal file
@@ -0,0 +1,62 @@
|
||||
====================
|
||||
WhileStatement2
|
||||
====================
|
||||
|
||||
function main() -> int {
|
||||
while (true) {
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(predefined_constant)))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(primary_block
|
||||
(statement_block))))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))
|
||||
61
test/corpus/positive/WhileStatement3.txt
Normal file
61
test/corpus/positive/WhileStatement3.txt
Normal file
@@ -0,0 +1,61 @@
|
||||
====================
|
||||
WhileStatement3
|
||||
====================
|
||||
|
||||
function main() -> int {
|
||||
while (true)
|
||||
;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
--------------------
|
||||
|
||||
(source_file
|
||||
(translation_entity
|
||||
(function_definition
|
||||
(identifier)
|
||||
(function_signature
|
||||
(return_list
|
||||
(declaration_specifier
|
||||
(type_specifier_qualifier
|
||||
(type_specifier
|
||||
(int_type))))))
|
||||
(statement_block
|
||||
(block_item_list
|
||||
(block_item
|
||||
(statement
|
||||
(primary_block
|
||||
(iteration_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(predefined_constant)))))))))))))
|
||||
(secondary_block
|
||||
(statement
|
||||
(expression_statement)))))))
|
||||
(block_item
|
||||
(statement
|
||||
(jump_statement
|
||||
(expression
|
||||
(assignment_expression
|
||||
(logical_expression
|
||||
(equality_expression
|
||||
(relational_expression
|
||||
(additive_expression
|
||||
(multiplicative_expression
|
||||
(cast_expression
|
||||
(unary_expression
|
||||
(postfix_expression
|
||||
(base_expression
|
||||
(constant
|
||||
(integer_literal)))))))))))))))))))))
|
||||
Reference in New Issue
Block a user