@@ -1180,7 +1180,7 @@ public function walkArithmeticExpression($arithmeticExpr): string
1180
1180
public function walkSimpleArithmeticExpression ($ simpleArithmeticExpr ): string
1181
1181
{
1182
1182
if (!$ simpleArithmeticExpr instanceof AST \SimpleArithmeticExpression) {
1183
- return $ this ->marshalType ( new MixedType () );
1183
+ return $ this ->walkArithmeticTerm ( $ simpleArithmeticExpr );
1184
1184
}
1185
1185
1186
1186
$ types = [];
@@ -1206,7 +1206,7 @@ public function walkSimpleArithmeticExpression($simpleArithmeticExpr): string
1206
1206
public function walkArithmeticTerm ($ term ): string
1207
1207
{
1208
1208
if (!$ term instanceof AST \ArithmeticTerm) {
1209
- return $ this ->marshalType ( new MixedType () );
1209
+ return $ this ->walkArithmeticFactor ( $ term );
1210
1210
}
1211
1211
1212
1212
$ types = [];
@@ -1232,7 +1232,7 @@ public function walkArithmeticTerm($term): string
1232
1232
public function walkArithmeticFactor ($ factor ): string
1233
1233
{
1234
1234
if (!$ factor instanceof AST \ArithmeticFactor) {
1235
- return $ this ->marshalType ( new MixedType () );
1235
+ return $ this ->walkArithmeticPrimary ( $ factor );
1236
1236
}
1237
1237
1238
1238
$ primary = $ factor ->arithmeticPrimary ;
@@ -1265,6 +1265,10 @@ public function walkArithmeticPrimary($primary): string
1265
1265
*/
1266
1266
public function walkStringPrimary ($ stringPrimary ): string
1267
1267
{
1268
+ if ($ stringPrimary instanceof AST \Node) {
1269
+ return $ stringPrimary ->dispatch ($ this );
1270
+ }
1271
+
1268
1272
return $ this ->marshalType (new MixedType ());
1269
1273
}
1270
1274
0 commit comments