diff --git a/analyzers/c_analyzer/c_analyzer.y b/analyzers/c_analyzer/c_analyzer.y index 0c1eeb5..4a3d910 100644 --- a/analyzers/c_analyzer/c_analyzer.y +++ b/analyzers/c_analyzer/c_analyzer.y @@ -36,16 +36,16 @@ block: // Возможные выражения expr: - RET expr // выражение вида return expr - | PRINT expr // выражение вида print expr - | IDENTIFIER ASSIGN expr // выражения вида a=expr - | expr PLUS expr // выражения вида expr+expr - | expr MINUS expr // выражения вида expr-expr - | expr MULT expr // выражения вида expr*expr - | expr DIV expr // выражения вида expr/expr - | expr MOD expr // выражения вида expr%expr - | IDENTIFIER { printf("IDENTIFIER = %s\n", $1); free($1); } - | NUMBER { printf("NUMBER = %s\n", $1); free($1); } + RET { printf("RET\n") } expr // выражение вида return expr + | PRINT { printf("PRINT\n") } expr // выражение вида print expr + | IDENTIFIER { printf("IDENTIFIER(%s)\n", $1); free($1); } ASSIGN { printf("ASSIGN\n"); } expr // выражения вида a=expr + | expr PLUS { printf("PLUS\n") } expr // выражения вида expr+expr + | expr MINUS { printf("MINUS\n") } expr // выражения вида expr-expr + | expr MULT { printf("MULT\n") } expr // выражения вида expr*expr + | expr DIV { printf("DIV\n") } expr // выражения вида expr/expr + | expr MOD { printf("MOD\n") } expr // выражения вида expr%expr + | IDENTIFIER { printf("IDENTIFIER(%s)\n", $1); free($1); } + | NUMBER { printf("NUMBER(%s)\n", $1); free($1); } ; %% @@ -60,6 +60,6 @@ int main(int argc, char **argv) { yyin = f; } yyparse(); - printf("\033[92m\nSuccess parsed!\033[0m"); + printf("\033[92m\nGood code\033[0m"); return 0; } \ No newline at end of file