* error.c (cp_tree_printer): Rework.
authorGabriel Dos Reis <gdr@codesourcery.com>
Fri, 25 Aug 2000 12:31:00 +0000 (12:31 +0000)
committerGabriel Dos Reis <gdr@gcc.gnu.org>
Fri, 25 Aug 2000 12:31:00 +0000 (12:31 +0000)
From-SVN: r35981

gcc/cp/ChangeLog
gcc/cp/error.c

index e68534c..7a7514c 100644 (file)
@@ -1,3 +1,7 @@
+2000-08-25  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * error.c (cp_tree_printer): Rework.
+
 2000-08-25  Mark Mitchell  <mark@codesourcery.com>
 
        * Make-lang.in (CXX_LIB2FUNCS): Remove cp-demangle.o and
index 74d3cba..8a48360 100644 (file)
@@ -2651,43 +2651,50 @@ cp_tree_printer (buffer)
       ++output_buffer_text_cursor (buffer);
     }
 
-  if (*output_buffer_text_cursor (buffer) == 'P')
+  switch (*output_buffer_text_cursor (buffer))
+    {
+    case 'A':
+      tree_being_formatted (&tfi) =
+        va_arg (output_buffer_format_args (buffer), tree);
+      print_function_argument_list (buffer, &tfi);
+      break;
+      
+    case 'D':
+      tree_being_formatted (&tfi) =
+        va_arg (output_buffer_format_args (buffer), tree);
+      print_declaration (buffer, &tfi);
+      break;
+      
+    case 'E':
+      tree_being_formatted (&tfi) =
+        va_arg (output_buffer_format_args (buffer), tree);
+      print_expression (buffer, &tfi);
+      break;
+      
+    case 'F':
+      tree_being_formatted (&tfi) =
+        va_arg (output_buffer_format_args (buffer), tree);
+      print_function_declaration (buffer, &tfi);
+      break;
+      
+    case 'P':
       print_function_parameter
         (buffer, va_arg (output_buffer_format_args (buffer), int));
-  else
-    {
+      
+    case 'T':
       tree_being_formatted (&tfi) =
         va_arg (output_buffer_format_args (buffer), tree);
-
-      switch (*output_buffer_text_cursor (buffer))
-        {
-        case 'A':
-          print_function_argument_list (buffer, &tfi);
-          break;
-
-        case 'D':
-          print_declaration (buffer, &tfi);
-          break;
-
-        case 'E':
-          print_expression (buffer, &tfi);
-          break;
-          
-        case 'F':
-          print_function_declaration (buffer, &tfi);
-          break;
-
-        case 'T':
-          print_type (buffer, &tfi);
-          break;
-          
-        case 'V':
-          print_cv_qualifier (buffer, &tfi);
-          break;
-          
-        default:
-          return 0;
-        }
+      print_type (buffer, &tfi);
+      break;
+      
+    case 'V':
+      tree_being_formatted (&tfi) =
+        va_arg (output_buffer_format_args (buffer), tree);
+      print_cv_qualifier (buffer, &tfi);
+      break;
+      
+    default:
+      return 0;
     }
   
   return 1;