@@ -114,13 +114,19 @@ preparser_line: T_NEWLINE
114114;
115115
116116function:
117- | T_VAR_BOOL T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_BOOL); }
118- | T_VAR_NUMBER T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_NUMBER); }
119- | T_VAR_STRING T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_STRING); }
120- | T_VAR_ANY T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_ANY); }
121- | T_VAR_LIST T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_LIST); }
122- | T_VAR_DICT T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_DICT); }
123- | T_VOID T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_VOID); }
117+ | T_VAR_BOOL T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_BOOL, K_ANY); }
118+ | T_VAR_NUMBER T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_NUMBER, K_ANY); }
119+ | T_VAR_STRING T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_STRING, K_ANY); }
120+ | T_VAR_ANY T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_ANY, K_ANY); }
121+ | T_VAR_LIST T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_LIST, K_ANY); }
122+ | T_VAR_DICT T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_DICT, K_ANY); }
123+ | T_VAR_BOOL T_VAR_LIST T_FUNCTION T_VAR function_parameters_start { startFunction($4, K_LIST, K_BOOL); }
124+ | T_VAR_BOOL T_VAR_DICT T_FUNCTION T_VAR function_parameters_start { startFunction($4, K_DICT, K_BOOL); }
125+ | T_VAR_NUMBER T_VAR_LIST T_FUNCTION T_VAR function_parameters_start { startFunction($4, K_LIST, K_NUMBER); }
126+ | T_VAR_NUMBER T_VAR_DICT T_FUNCTION T_VAR function_parameters_start { startFunction($4, K_DICT, K_NUMBER); }
127+ | T_VAR_STRING T_VAR_LIST T_FUNCTION T_VAR function_parameters_start { startFunction($4, K_LIST, K_STRING); }
128+ | T_VAR_STRING T_VAR_DICT T_FUNCTION T_VAR function_parameters_start { startFunction($4, K_DICT, K_STRING); }
129+ | T_VOID T_FUNCTION T_VAR function_parameters_start { startFunction($3, K_VOID, K_ANY); }
124130 | T_PRINT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($2, NULL); printFunctionReturn($2, NULL, "\n", false, true); } free($2); }
125131 | T_ECHO T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($2, NULL); printFunctionReturn($2, NULL, "", false, true); } free($2); }
126132 | T_PRETTY T_PRINT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($3, NULL); printFunctionReturn($3, NULL, "\n", true, true); } free($3); }
@@ -537,6 +543,10 @@ variable: { }
537543 | T_VAR_BOOL T_VAR_DICT T_VAR T_EQUAL dictionarystart { finishComplexMode($3, K_BOOL); $$ = ""; free($3); }
538544 | T_VAR_BOOL T_VAR T_EQUAL T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($4, NULL); createCloneFromFunctionReturn($2, K_BOOL, $4, NULL, K_ANY); } else { free($2); free($4); } $$ = ""; }
539545 | T_VAR_BOOL T_VAR T_EQUAL T_VAR T_DOT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($6, $4); createCloneFromFunctionReturn($2, K_BOOL, $6, $4, K_ANY); } else { free($2); free($4); free($6); } $$ = ""; }
546+ | T_VAR_BOOL T_VAR_LIST T_VAR T_EQUAL T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($5, NULL); createCloneFromFunctionReturn($3, K_LIST, $5, NULL, K_BOOL); } else { free($3); free($5); } $$ = ""; }
547+ | T_VAR_BOOL T_VAR_LIST T_VAR T_EQUAL T_VAR T_DOT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($7, $5); createCloneFromFunctionReturn($3, K_LIST, $7, $5, K_BOOL); } else { free($3); free($5); free($7); } $$ = ""; }
548+ | T_VAR_BOOL T_VAR_DICT T_VAR T_EQUAL T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($5, NULL); createCloneFromFunctionReturn($3, K_DICT, $5, NULL, K_BOOL); } else { free($3); free($5); } $$ = ""; }
549+ | T_VAR_BOOL T_VAR_DICT T_VAR T_EQUAL T_VAR T_DOT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($7, $5); createCloneFromFunctionReturn($3, K_DICT, $7, $5, K_BOOL); } else { free($3); free($5); free($7); } $$ = ""; }
540550;
541551
542552variable: { }
@@ -550,6 +560,10 @@ variable: { }
550560 | T_VAR_NUMBER T_VAR T_EQUAL expression { addSymbolFloat($2, $4); $$ = ""; }
551561 | T_VAR_NUMBER T_VAR T_EQUAL T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($4, NULL); createCloneFromFunctionReturn($2, K_NUMBER, $4, NULL, K_ANY); } else { free($2); free($4); } $$ = ""; }
552562 | T_VAR_NUMBER T_VAR T_EQUAL T_VAR T_DOT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($6, $4); createCloneFromFunctionReturn($2, K_NUMBER, $6, $4, K_ANY); } else { free($2); free($4); free($6); } $$ = ""; }
563+ | T_VAR_NUMBER T_VAR_LIST T_VAR T_EQUAL T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($5, NULL); createCloneFromFunctionReturn($3, K_LIST, $5, NULL, K_NUMBER); } else { free($3); free($5); } $$ = ""; }
564+ | T_VAR_NUMBER T_VAR_LIST T_VAR T_EQUAL T_VAR T_DOT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($7, $5); createCloneFromFunctionReturn($3, K_LIST, $7, $5, K_NUMBER); } else { free($3); free($5); free($7); } $$ = ""; }
565+ | T_VAR_NUMBER T_VAR_DICT T_VAR T_EQUAL T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($5, NULL); createCloneFromFunctionReturn($3, K_DICT, $5, NULL, K_NUMBER); } else { free($3); free($5); } $$ = ""; }
566+ | T_VAR_NUMBER T_VAR_DICT T_VAR T_EQUAL T_VAR T_DOT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($7, $5); createCloneFromFunctionReturn($3, K_DICT, $7, $5, K_NUMBER); } else { free($3); free($5); free($7); } $$ = ""; }
553567;
554568
555569variable: { }
@@ -562,6 +576,10 @@ variable: { }
562576 | T_VAR_STRING T_VAR_DICT T_VAR T_EQUAL dictionarystart { finishComplexMode($3, K_STRING); $$ = ""; free($3); }
563577 | T_VAR_STRING T_VAR T_EQUAL T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($4, NULL); createCloneFromFunctionReturn($2, K_STRING, $4, NULL, K_ANY); } else { free($2); free($4); } $$ = ""; }
564578 | T_VAR_STRING T_VAR T_EQUAL T_VAR T_DOT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($6, $4); createCloneFromFunctionReturn($2, K_STRING, $6, $4, K_ANY); } else { free($2); free($4); free($6); } $$ = ""; }
579+ | T_VAR_STRING T_VAR_LIST T_VAR T_EQUAL T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($5, NULL); createCloneFromFunctionReturn($3, K_LIST, $5, NULL, K_STRING); } else { free($3); free($5); } $$ = ""; }
580+ | T_VAR_STRING T_VAR_LIST T_VAR T_EQUAL T_VAR T_DOT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($7, $5); createCloneFromFunctionReturn($3, K_LIST, $7, $5, K_STRING); } else { free($3); free($5); free($7); } $$ = ""; }
581+ | T_VAR_STRING T_VAR_DICT T_VAR T_EQUAL T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($5, NULL); createCloneFromFunctionReturn($3, K_DICT, $5, NULL, K_STRING); } else { free($3); free($5); } $$ = ""; }
582+ | T_VAR_STRING T_VAR_DICT T_VAR T_EQUAL T_VAR T_DOT T_VAR T_LEFT function_call_parameters_start { if (phase == PROGRAM) { callFunction($7, $5); createCloneFromFunctionReturn($3, K_DICT, $7, $5, K_STRING); } else { free($3); free($5); free($7); } $$ = ""; }
565583;
566584
567585variable: { }
0 commit comments