Syntactic analyser implementation with HTML conversion code
[TP_AL_C.git] / lexer / print_helper.c
index 23684d5e22e6785fdd30fc7925b82bbb5e26cac0..f7ab04ffb9887b2e2fbdf5d96ea06b6016ca509c 100644 (file)
@@ -10,6 +10,7 @@ void pr_warning(const char* format, ...) {
     va_start(args, format);
     fprintf(stdout, format, args);
     va_end(args);
+    fflush(stdout);
 }
 
 void pr_error(const char *format, ...) {
@@ -18,6 +19,7 @@ void pr_error(const char *format, ...) {
     va_start(args, format);
     fprintf(stderr, format, args);
     va_end(args);
+    fflush(stderr);
 }
 
 #if DEBUG
@@ -27,6 +29,7 @@ void pr_debug(const char *format, ...) {
     va_start(args, format);
     fprintf(stderr, format, args);
     va_end(args);
+    fflush(stderr);
 }
 #else
 void pr_debug(const char *format, ...);
@@ -38,6 +41,7 @@ void wpr_warning(const wchar_t *format, ...) {
     va_start(args, format);
     fwprintf(stdout, format, args);
     va_end(args);
+    fflush(stdout);
 }
 
 void wpr_error(const wchar_t *format, ...) {
@@ -46,9 +50,19 @@ void wpr_error(const wchar_t *format, ...) {
     va_start(args, format);
     fwprintf(stderr, format, args);
     va_end(args);
+    fflush(stderr);
 }
 
-void wprint_token() {
+void wprint_token_stdout() {
+    if (tokenType == MOT || tokenType == MOTCLE) {
+        fwprintf(stdout, L"%20s: %ls\n", tokenTypestr[tokenType], token[tokenFound].value);
+    } else {
+        fwprintf(stdout, L"%20s\n", tokenTypestr[tokenType]);
+    }
+    fflush(stdout);
+}
+
+void wprint_token_target() {
     if (tokenType == MOT || tokenType == MOTCLE) {
         fwprintf(target, L"%20s: %ls\n", tokenTypestr[tokenType], token[tokenFound].value);
     } else {