diff --git a/CSharpTranslator/antlr3/src/cs2j/CSharp/JavaMaker.g b/CSharpTranslator/antlr3/src/cs2j/CSharp/JavaMaker.g index ee93c0f..36b403e 100644 --- a/CSharpTranslator/antlr3/src/cs2j/CSharp/JavaMaker.g +++ b/CSharpTranslator/antlr3/src/cs2j/CSharp/JavaMaker.g @@ -524,8 +524,8 @@ additive_expression: multiplicative_expression (('+'|'-')^ multiplicative_expression)* ; // >> check needed (no whitespace) shift_expression: - a1=additive_expression ((so='<<' a3=additive_expression -> ^($so $a1 $a3)) - | ('>' '>' a2=additive_expression -> ^(RIGHT_SHIFT $a1 $a2)) + (a1=additive_expression -> $a1) ((so='<<' a3=additive_expression -> ^($so $shift_expression $a3)) + | ('>' '>' a2=additive_expression -> ^(RIGHT_SHIFT $shift_expression $a2)) )* ; relational_expression: (s1=shift_expression -> $s1) diff --git a/CSharpTranslator/antlr3/src/cs2j/CSharp/JavaPrettyPrint.g b/CSharpTranslator/antlr3/src/cs2j/CSharp/JavaPrettyPrint.g index f8deef4..2681d1c 100644 --- a/CSharpTranslator/antlr3/src/cs2j/CSharp/JavaPrettyPrint.g +++ b/CSharpTranslator/antlr3/src/cs2j/CSharp/JavaPrettyPrint.g @@ -351,7 +351,7 @@ type List stars = new List(); string opt = null; }: - ^(TYPE (tp=predefined_type {nm=$tp.st;} | tn=type_name {nm=$tn.st;}) rank_specifiers ('*' { stars.Add("*");})* ('?' { opt = "?";} )?) -> type(name={ nm }, stars={ stars }, rs={ $rank_specifiers.st }, opt={ opt }) + ^(TYPE (tp=predefined_type {nm=$tp.st;} | tn=type_name {nm=$tn.st;}) rank_specifiers? ('*' { stars.Add("*");})* ('?' { opt = "?";} )?) -> type(name={ nm }, stars={ stars }, rs={ $rank_specifiers.st }, opt={ opt }) ; non_nullable_type: type -> { $type.st } ; @@ -440,7 +440,7 @@ non_assignment_expression: | ^('*' non_assignment_expression non_assignment_expression) | ^('/' non_assignment_expression non_assignment_expression) | ^('%' non_assignment_expression non_assignment_expression) - | ^(UNARY_EXPR unary_expression) -> { $unary_expression.st } + | unary_expression -> { $unary_expression.st } ; /////////////////////////////////////////////////////// @@ -1067,8 +1067,8 @@ literal: | Character_literal | STRINGLITERAL | Verbatim_string_literal - | TRUE - | FALSE + | TRUE -> string(payload={"true"}) + | FALSE -> string(payload={"false"}) | NULL -> string(payload={"null"}) ; diff --git a/CSharpTranslator/antlr3/src/cs2j/CSharp/NetMaker.g b/CSharpTranslator/antlr3/src/cs2j/CSharp/NetMaker.g index 3af1938..973a78b 100644 --- a/CSharpTranslator/antlr3/src/cs2j/CSharp/NetMaker.g +++ b/CSharpTranslator/antlr3/src/cs2j/CSharp/NetMaker.g @@ -290,7 +290,7 @@ type_arguments: type (',' type)* ; type: - ^(TYPE (predefined_type | type_name) rank_specifiers '*'* '?'?); + ^(TYPE (predefined_type | type_name) rank_specifiers? '*'* '?'?); non_nullable_type: type; non_array_type: @@ -353,7 +353,6 @@ pointer_indirection_expression: addressof_expression: '&' unary_expression ; - non_assignment_expression: //'non ASSIGNment' (anonymous_function_signature '=>') => lambda_expression