diff options
Diffstat (limited to 'edify/main.c')
-rw-r--r-- | edify/main.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/edify/main.c b/edify/main.c index c9596837..7da89e2e 100644 --- a/edify/main.c +++ b/edify/main.c | |||
@@ -153,10 +153,11 @@ int main(int argc, char** argv) { | |||
153 | buffer[size] = '\0'; | 153 | buffer[size] = '\0'; |
154 | 154 | ||
155 | Expr* root; | 155 | Expr* root; |
156 | int error_count = 0; | ||
156 | yy_scan_bytes(buffer, size); | 157 | yy_scan_bytes(buffer, size); |
157 | int error = yyparse(&root); | 158 | int error = yyparse(&root, &error_count); |
158 | printf("parse returned %d\n", error); | 159 | printf("parse returned %d; %d errors encountered\n", error, error_count); |
159 | if (error == 0) { | 160 | if (error == 0 || error_count > 0) { |
160 | char* result = Evaluate(NULL, root); | 161 | char* result = Evaluate(NULL, root); |
161 | if (result == NULL) { | 162 | if (result == NULL) { |
162 | char* errmsg = GetError(); | 163 | char* errmsg = GetError(); |