bison-patches
[Top][All Lists]
Advanced

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

[PATCH 4/6] traces: add some colors


From: Akim Demaille
Subject: [PATCH 4/6] traces: add some colors
Date: Sun, 9 Jun 2019 11:13:10 +0200

This is an experiment.  Maybe more styles will be used (in which case
a short-hand function will be useful), maybe it will be just reverted.
* data/bison-default.css (.traces0): New.
* src/lalr.c (lalr): Use it.
---
 TODO                   |  5 ++++-
 data/bison-default.css |  1 +
 src/lalr.c             | 15 +++++++++++++++
 3 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/TODO b/TODO
index 9fb8c922..efe4a9d5 100644
--- a/TODO
+++ b/TODO
@@ -119,7 +119,10 @@ introduce lr(0) and lalr, just the way we have ielr 
categories.  The
 "set" can still be used for summariring the important sets.  That would make
 tests easy to maintain.
 
-
+*** complain.*
+Rename these guys as "diagnostics.*" (or "diagnose.*"), since that the name
+they have in gcc, clang, etc.  Likewise for the complain_* series of
+functions.
 
 * Completion
 Several features are not available in all the backends.
diff --git a/data/bison-default.css b/data/bison-default.css
index ea6656c7..db9d87eb 100644
--- a/data/bison-default.css
+++ b/data/bison-default.css
@@ -22,3 +22,4 @@
 .note      { color: cyan; }
 /* Semantic values in Bison's own parser traces.  */
 .value     { color: green; }
+.trace0    { color: green; }
diff --git a/src/lalr.c b/src/lalr.c
index eb4a1e87..bb9491ec 100644
--- a/src/lalr.c
+++ b/src/lalr.c
@@ -550,6 +550,14 @@ lookahead_tokens_print (FILE *out)
 void
 lalr (void)
 {
+  if (trace_flag & trace_automaton)
+    {
+      fputc ('\n', stderr);
+      begin_use_class ("trace0", stderr);
+      fprintf (stderr, "lalr: begin");
+      end_use_class ("trace0", stderr);
+      fputc ('\n', stderr);
+    }
   initialize_LA ();
   set_goto_map ();
   initialize_goto_follows ();
@@ -560,6 +568,13 @@ lalr (void)
 
   if (trace_flag & trace_sets)
     lookahead_tokens_print (stderr);
+  if (trace_flag & trace_automaton)
+    {
+      begin_use_class ("trace0", stderr);
+      fprintf (stderr, "lalr: done");
+      end_use_class ("trace0", stderr);
+      fputc ('\n', stderr);
+    }
 }
 
 
-- 
2.21.0




reply via email to

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