bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

glr: example: flush the output


From: Akim Demaille
Subject: glr: example: flush the output
Date: Mon, 4 Jan 2021 07:30:30 +0100

commit 31b8b8f1799e43b5accf471e0f9645c832ffb8a3
Author: Akim Demaille <akim.demaille@gmail.com>
Date:   Sun Jan 3 19:42:21 2021 +0100

    glr: example: flush the output
    
    * examples/c/glr/c++-types.y: Flush stdout so that the logs (on
    stderr) and the effective output (on stdout) mix correctly.
    While at it, be a bit more const-correct.

diff --git a/examples/c/glr/c++-types.y b/examples/c/glr/c++-types.y
index 2d52b2b1..f99e0426 100644
--- a/examples/c/glr/c++-types.y
+++ b/examples/c/glr/c++-types.y
@@ -64,8 +64,8 @@
   static Node *new_nterm (char const *, Node *, Node *, Node *);
   static Node *new_term (char *);
   static void free_node (Node *);
-  static char *node_to_string (Node *);
-  static void node_print (FILE *, Node *);
+  static char *node_to_string (const Node *);
+  static void node_print (FILE *, const Node *);
   static Node *stmtMerge (YYSTYPE x0, YYSTYPE x1);
 
   static void yyerror (YYLTYPE const * const llocp, const char *msg);
@@ -95,6 +95,7 @@ prog : %empty
                      fputs (": ", stdout);
                      node_print (stdout, $2);
                      putc ('\n', stdout);
+                     fflush (stdout);
                      free_node ($2);
                    }
      ;
@@ -255,7 +256,7 @@ free_node (Node *node)
 }
 
 static char *
-node_to_string (Node *node)
+node_to_string (const Node *node)
 {
   char *res;
   if (!node)
@@ -280,7 +281,8 @@ node_to_string (Node *node)
   return res;
 }
 
-static void node_print (FILE *out, Node *n)
+static void
+node_print (FILE *out, const Node *n)
 {
   char *str = node_to_string (n);
   fputs (str, out);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]