aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNeil Booth <neil@daikokuya.demon.co.uk>2002-04-25 06:24:41 +0000
committerNeil Booth <neil@gcc.gnu.org>2002-04-25 06:24:41 +0000
commitff45c01ef4b2560e6036c379e67b38cfa1508623 (patch)
treed894f1320f9d146f1f97b61373115b7a5313fac5
parent9127b2da1b3a993d36180facfaee9e42a48b00f9 (diff)
downloadgcc-ff45c01ef4b2560e6036c379e67b38cfa1508623.zip
gcc-ff45c01ef4b2560e6036c379e67b38cfa1508623.tar.gz
gcc-ff45c01ef4b2560e6036c379e67b38cfa1508623.tar.bz2
c-common.h (c_common_parse_file): Update.
* c-common.h (c_common_parse_file): Update. * c-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove. * c-lex.c (YYDEBUG): Get from c-lex.h. (c_common_parse_file): Update. * c-lex.h (YYDEBUG, yydebug): New. * c-parse.in (YYDEBUG): Get from c-lex.h. (c_set_yydebug): Remove. * c-tree.h (c_set_yydebug): Remove. * langhooks-def.h (lhd_do_nothing_i): New. (lhd_set_yydebug, LANG_HOOKS_SET_YYDEBUG): Remove. (LANG_HOOKS_PARSE_FILE, LANG_HOOKS_INITIALIZER): Update. * langhooks.c (lhd_do_nothing_i): New. (lhd_set_yydebug): Remove. * langhooks.h (struct lang_hooks): Update. * toplev.c (set_yydebug): New. (compile_file): Update call to parse_file hook. (decode_d_option): Update. ada: * misc.c (gnat_parse_file): Update. cp: * cp-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove. * cp-tree.h (cxx_set_yydebug): Die. * lex.c (YYDEBUG): Get from c-lex.h. (cxx_set_yydebug): Remove. * parse.y: Include c-lex.h. (YYDEBUG): Get from c-lex.h. f: * com.h (ffe_parse_file): Update. * lex.c (ffe_parse_file): Update. java: * java-tree.h (java_parse_file): Update. (java_set_yydebug): Remove. * jcf-parse.c (yydebug): Remove. (java_set_yydebug): Die. (java_parse_file): Update. * lang.c (LANG_HOOKS_SET_YYDEBUG): Remove. objc: * objc-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove. From-SVN: r52753
-rw-r--r--gcc/ChangeLog22
-rw-r--r--gcc/ada/ChangeLog4
-rw-r--r--gcc/ada/misc.c5
-rw-r--r--gcc/c-common.h2
-rw-r--r--gcc/c-lang.c2
-rw-r--r--gcc/c-lex.c12
-rw-r--r--gcc/c-lex.h4
-rw-r--r--gcc/c-parse.in20
-rw-r--r--gcc/c-tree.h1
-rw-r--r--gcc/cp/ChangeLog9
-rw-r--r--gcc/cp/cp-lang.c2
-rw-r--r--gcc/cp/cp-tree.h1
-rw-r--r--gcc/cp/lex.c19
-rw-r--r--gcc/cp/parse.y4
-rw-r--r--gcc/f/ChangeLog5
-rw-r--r--gcc/f/com.h2
-rw-r--r--gcc/f/parse.c3
-rw-r--r--gcc/java/ChangeLog9
-rw-r--r--gcc/java/java-tree.h3
-rw-r--r--gcc/java/jcf-parse.c12
-rw-r--r--gcc/java/lang.c2
-rw-r--r--gcc/langhooks-def.h6
-rw-r--r--gcc/langhooks.c18
-rw-r--r--gcc/langhooks.h10
-rw-r--r--gcc/objc/objc-lang.c2
-rw-r--r--gcc/toplev.c7
26 files changed, 91 insertions, 95 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 37e68d7..f4cd535 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,25 @@
+2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-common.h (c_common_parse_file): Update.
+ * c-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
+ * c-lex.c (YYDEBUG): Get from c-lex.h.
+ (c_common_parse_file): Update.
+ * c-lex.h (YYDEBUG, yydebug): New.
+ * c-parse.in (YYDEBUG): Get from c-lex.h.
+ (c_set_yydebug): Remove.
+ * c-tree.h (c_set_yydebug): Remove.
+ * langhooks-def.h (lhd_do_nothing_i): New.
+ (lhd_set_yydebug, LANG_HOOKS_SET_YYDEBUG): Remove.
+ (LANG_HOOKS_PARSE_FILE, LANG_HOOKS_INITIALIZER): Update.
+ * langhooks.c (lhd_do_nothing_i): New.
+ (lhd_set_yydebug): Remove.
+ * langhooks.h (struct lang_hooks): Update.
+ * toplev.c (set_yydebug): New.
+ (compile_file): Update call to parse_file hook.
+ (decode_d_option): Update.
+objc:
+ * objc-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
+
Wed Apr 24 23:45:37 2002 J"orn Rennecke <joern.rennecke@superh.com>
* loop.c (load_mems): Don't change the interface of called functions.
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 8ec214c..492dd09 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,7 @@
+2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (gnat_parse_file): Update.
+
2002-04-24 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (gnat_init): Don't set lang_attribute_common.
diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c
index 20b2b01..63ac00a 100644
--- a/gcc/ada/misc.c
+++ b/gcc/ada/misc.c
@@ -85,7 +85,7 @@ static void gnat_print_type PARAMS ((FILE *, tree, int));
static const char *gnat_printable_name PARAMS ((tree, int));
static tree gnat_eh_runtime_type PARAMS ((tree));
static int gnat_eh_type_covers PARAMS ((tree, tree));
-static void gnat_parse_file PARAMS ((void));
+static void gnat_parse_file PARAMS ((int));
static void gnat_mark_tree PARAMS ((tree));
static rtx gnat_expand_expr PARAMS ((tree, rtx, enum machine_mode,
int));
@@ -192,7 +192,8 @@ extern void _ada_gnat1drv PARAMS((void));
/* The parser for the language. For us, we process the GNAT tree. */
static void
-gnat_parse_file ()
+gnat_parse_file (set_yydebug)
+ int set_yydebug ATTRIBUTE_UNUSED;
{
/* call the target specific initializations */
__gnat_initialize();
diff --git a/gcc/c-common.h b/gcc/c-common.h
index bce32e3..f44b0c3 100644
--- a/gcc/c-common.h
+++ b/gcc/c-common.h
@@ -568,7 +568,7 @@ extern void c_common_init_options PARAMS ((enum c_language_kind));
extern void c_common_post_options PARAMS ((void));
extern const char *c_common_init PARAMS ((const char *));
extern void c_common_finish PARAMS ((void));
-extern void c_common_parse_file PARAMS ((void));
+extern void c_common_parse_file PARAMS ((int));
extern HOST_WIDE_INT c_common_get_alias_set PARAMS ((tree));
extern bool c_promoting_integer_type_p PARAMS ((tree));
extern int self_promoting_args_p PARAMS ((tree));
diff --git a/gcc/c-lang.c b/gcc/c-lang.c
index f8f5b12..225967d 100644
--- a/gcc/c-lang.c
+++ b/gcc/c-lang.c
@@ -72,8 +72,6 @@ static void c_post_options PARAMS ((void));
#define LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL c_warn_unused_global_decl
#undef LANG_HOOKS_PRINT_IDENTIFIER
#define LANG_HOOKS_PRINT_IDENTIFIER c_print_identifier
-#undef LANG_HOOKS_SET_YYDEBUG
-#define LANG_HOOKS_SET_YYDEBUG c_set_yydebug
#undef LANG_HOOKS_FUNCTION_ENTER_NESTED
#define LANG_HOOKS_FUNCTION_ENTER_NESTED c_push_function_context
#undef LANG_HOOKS_FUNCTION_LEAVE_NESTED
diff --git a/gcc/c-lex.c b/gcc/c-lex.c
index f2f8c8c..30ef877 100644
--- a/gcc/c-lex.c
+++ b/gcc/c-lex.c
@@ -58,9 +58,6 @@ static unsigned int src_lineno;
static int header_time, body_time;
static splay_tree file_info_tree;
-/* Cause the `yydebug' variable to be defined. */
-#define YYDEBUG 1
-
/* File used for outputting assembler code. */
extern FILE *asm_out_file;
@@ -149,8 +146,15 @@ init_c_lex (filename)
the primary source file. */
void
-c_common_parse_file ()
+c_common_parse_file (set_yydebug)
+ int set_yydebug ATTRIBUTE_UNUSED;
{
+#if YYDEBUG != 0
+ yydebug = set_yydebug;
+#else
+ warning ("YYDEBUG not defined");
+#endif
+
(*debug_hooks->start_source_file) (lineno, input_filename);
cpp_finish_options (parse_in);
diff --git a/gcc/c-lex.h b/gcc/c-lex.h
index 1e088dd..fed695d 100644
--- a/gcc/c-lex.h
+++ b/gcc/c-lex.h
@@ -21,6 +21,10 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#ifndef GCC_C_LEX_H
#define GCC_C_LEX_H
+/* Cause the `yydebug' variable to be defined. */
+#define YYDEBUG 1
+extern int yydebug;
+
extern tree make_pointer_declarator PARAMS ((tree, tree));
extern int c_lex PARAMS ((tree *));
diff --git a/gcc/c-parse.in b/gcc/c-parse.in
index f415e41..5835fe1 100644
--- a/gcc/c-parse.in
+++ b/gcc/c-parse.in
@@ -43,7 +43,7 @@ end ifc
#include "cpplib.h"
#include "intl.h"
#include "timevar.h"
-#include "c-lex.h"
+#include "c-lex.h" /* Gets YYDEBUG macro. */
#include "c-tree.h"
#include "c-pragma.h"
#include "flags.h"
@@ -61,9 +61,6 @@ end ifobjc
/* Like YYERROR but do call yyerror. */
#define YYERROR1 { yyerror ("syntax error"); YYERROR; }
-
-/* Cause the "yydebug" variable to be defined. */
-#define YYDEBUG 1
%}
%start program
@@ -3802,21 +3799,6 @@ yylex()
return r;
}
-/* Sets the value of the 'yydebug' variable to VALUE.
- This is a function so we don't have to have YYDEBUG defined
- in order to build the compiler. */
-
-void
-c_set_yydebug (value)
- int value;
-{
-#if YYDEBUG != 0
- yydebug = value;
-#else
- warning ("YYDEBUG not defined");
-#endif
-}
-
/* Function used when yydebug is set, to print a token in more detail. */
static void
diff --git a/gcc/c-tree.h b/gcc/c-tree.h
index eedaa7a..7225f5d 100644
--- a/gcc/c-tree.h
+++ b/gcc/c-tree.h
@@ -160,7 +160,6 @@ extern tree lookup_objc_ivar PARAMS ((tree));
/* in c-parse.in */
extern void c_parse_init PARAMS ((void));
-extern void c_set_yydebug PARAMS ((int));
/* in c-aux-info.c */
extern void gen_aux_info_record PARAMS ((tree, int, int, int));
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index ef5faf4..ee39ddc 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,12 @@
+2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cp-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
+ * cp-tree.h (cxx_set_yydebug): Die.
+ * lex.c (YYDEBUG): Get from c-lex.h.
+ (cxx_set_yydebug): Remove.
+ * parse.y: Include c-lex.h.
+ (YYDEBUG): Get from c-lex.h.
+
2002-04-24 Mark Mitchell <mark@codesourcery.com>
PR c++/6438.
diff --git a/gcc/cp/cp-lang.c b/gcc/cp/cp-lang.c
index 3a8417d..815ede9 100644
--- a/gcc/cp/cp-lang.c
+++ b/gcc/cp/cp-lang.c
@@ -88,8 +88,6 @@ static bool cxx_warn_unused_global_decl PARAMS ((tree));
#define LANG_HOOKS_DECL_PRINTABLE_NAME cxx_printable_name
#undef LANG_HOOKS_PRINT_ERROR_FUNCTION
#define LANG_HOOKS_PRINT_ERROR_FUNCTION cxx_print_error_function
-#undef LANG_HOOKS_SET_YYDEBUG
-#define LANG_HOOKS_SET_YYDEBUG cxx_set_yydebug
#undef LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL
#define LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL cxx_warn_unused_global_decl
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index a692c98..43b17c8 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -3615,7 +3615,6 @@ extern void cxx_print_type PARAMS ((FILE *, tree, int));
extern void cxx_print_identifier PARAMS ((FILE *, tree, int));
extern void cxx_print_error_function PARAMS ((struct diagnostic_context *,
const char *));
-extern void cxx_set_yydebug PARAMS ((int));
extern void build_self_reference PARAMS ((void));
extern int same_signature_p PARAMS ((tree, tree));
extern void warn_hidden PARAMS ((tree));
diff --git a/gcc/cp/lex.c b/gcc/cp/lex.c
index 2f61487..7e4657c 100644
--- a/gcc/cp/lex.c
+++ b/gcc/cp/lex.c
@@ -23,9 +23,6 @@ Boston, MA 02111-1307, USA. */
/* This file is the lexical analyzer for GNU C++. */
-/* Cause the `yydebug' variable to be defined. */
-#define YYDEBUG 1
-
#include "config.h"
#include "system.h"
#include "input.h"
@@ -846,22 +843,6 @@ print_parse_statistics ()
#endif
}
-/* Sets the value of the 'yydebug' variable to VALUE.
- This is a function so we don't have to have YYDEBUG defined
- in order to build the compiler. */
-
-void
-cxx_set_yydebug (value)
- int value;
-{
-#if YYDEBUG != 0
- extern int yydebug;
- yydebug = value;
-#else
- warning ("YYDEBUG not defined");
-#endif
-}
-
/* Helper function to load global variables with interface
information. */
diff --git a/gcc/cp/parse.y b/gcc/cp/parse.y
index 491c83e..627e734 100644
--- a/gcc/cp/parse.y
+++ b/gcc/cp/parse.y
@@ -28,9 +28,6 @@ Boston, MA 02111-1307, USA. */
is given. Keep this in mind when reading the actions. */
%{
-/* Cause the `yydebug' variable to be defined. */
-#define YYDEBUG 1
-
#include "config.h"
#include "system.h"
@@ -40,6 +37,7 @@ Boston, MA 02111-1307, USA. */
#include "flags.h"
#include "cp-tree.h"
#include "lex.h"
+#include "c-lex.h" /* For YYDEBUG definition. */
#include "output.h"
#include "except.h"
#include "toplev.h"
diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog
index 361c965..2e1df82 100644
--- a/gcc/f/ChangeLog
+++ b/gcc/f/ChangeLog
@@ -1,3 +1,8 @@
+Thu Apr 25 07:44:44 2002 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * com.h (ffe_parse_file): Update.
+ * lex.c (ffe_parse_file): Update.
+
2002-04-20 Toon Moene <toon@moene.indiv.nluug.nl>
* root.texi: Remove variable version-g77.
diff --git a/gcc/f/com.h b/gcc/f/com.h
index 90d231c..be49242 100644
--- a/gcc/f/com.h
+++ b/gcc/f/com.h
@@ -270,7 +270,7 @@ tree ffecom_truth_value (tree expr);
tree ffecom_truth_value_invert (tree expr);
tree ffecom_type_expr (ffebld expr);
tree ffecom_which_entrypoint_decl (void);
-void ffe_parse_file (void);
+void ffe_parse_file (int);
/* Define macros. */
diff --git a/gcc/f/parse.c b/gcc/f/parse.c
index fe48b6d..f687e59 100644
--- a/gcc/f/parse.c
+++ b/gcc/f/parse.c
@@ -29,7 +29,8 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
extern FILE *finput;
void
-ffe_parse_file ()
+ffe_parse_file (set_yydebug)
+ int set_yydebug ATTRIBUTE_UNUSED;
{
ffewhereFile wf;
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index d11cba1..2db0c12 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,12 @@
+2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * java-tree.h (java_parse_file): Update.
+ (java_set_yydebug): Remove.
+ * jcf-parse.c (yydebug): Remove.
+ (java_set_yydebug): Die.
+ (java_parse_file): Update.
+ * lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
+
2002-04-24 Tom Tromey <tromey@redhat.com>
For PR java/6425:
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h
index d6d698c..f591b5f 100644
--- a/gcc/java/java-tree.h
+++ b/gcc/java/java-tree.h
@@ -1036,8 +1036,7 @@ struct lang_type
#define JCF_u4 unsigned long
#define JCF_u2 unsigned short
-extern void java_set_yydebug PARAMS ((int));
-extern void java_parse_file PARAMS ((void));
+extern void java_parse_file PARAMS ((int));
extern void java_mark_tree PARAMS ((tree));
extern bool java_mark_addressable PARAMS ((tree));
extern tree java_type_for_mode PARAMS ((enum machine_mode, int));
diff --git a/gcc/java/jcf-parse.c b/gcc/java/jcf-parse.c
index 6a93141..7faa74c 100644
--- a/gcc/java/jcf-parse.c
+++ b/gcc/java/jcf-parse.c
@@ -247,8 +247,6 @@ set_source_filename (jcf, index)
#include "jcf-reader.c"
-static int yydebug;
-
tree
parse_signature (jcf, sig_index)
JCF *jcf;
@@ -262,13 +260,6 @@ parse_signature (jcf, sig_index)
JPOOL_UTF_LENGTH (jcf, sig_index));
}
-void
-java_set_yydebug (value)
- int value;
-{
- yydebug = value;
-}
-
tree
get_constant (jcf, index)
JCF *jcf;
@@ -920,7 +911,8 @@ predefined_filename_p (node)
}
void
-java_parse_file ()
+java_parse_file (set_yydebug)
+ int set_yydebug ATTRIBUTE_UNUSED;
{
int filename_count = 0;
char *list, *next;
diff --git a/gcc/java/lang.c b/gcc/java/lang.c
index 0f0984c..c699da3 100644
--- a/gcc/java/lang.c
+++ b/gcc/java/lang.c
@@ -223,8 +223,6 @@ static int dependency_tracking = 0;
#define LANG_HOOKS_INIT_OPTIONS java_init_options
#undef LANG_HOOKS_DECODE_OPTION
#define LANG_HOOKS_DECODE_OPTION java_decode_option
-#undef LANG_HOOKS_SET_YYDEBUG
-#define LANG_HOOKS_SET_YYDEBUG java_set_yydebug
#undef LANG_HOOKS_PARSE_FILE
#define LANG_HOOKS_PARSE_FILE java_parse_file
#undef LANG_HOOKS_MARK_TREE
diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h
index 341a69a..daf0010 100644
--- a/gcc/langhooks-def.h
+++ b/gcc/langhooks-def.h
@@ -41,6 +41,7 @@ extern HOST_WIDE_INT hook_get_alias_set_0 PARAMS ((tree));
extern void lhd_do_nothing PARAMS ((void));
extern void lhd_do_nothing_t PARAMS ((tree));
+extern void lhd_do_nothing_i PARAMS ((int));
extern void lhd_do_nothing_f PARAMS ((struct function *));
extern int lhd_decode_option PARAMS ((int, char **));
extern HOST_WIDE_INT lhd_get_alias_set PARAMS ((tree));
@@ -52,7 +53,6 @@ extern int lhd_unsafe_for_reeval PARAMS ((tree));
extern void lhd_clear_binding_stack PARAMS ((void));
extern void lhd_print_tree_nothing PARAMS ((FILE *, tree, int));
extern const char *lhd_decl_printable_name PARAMS ((tree, int));
-extern void lhd_set_yydebug PARAMS ((int));
extern rtx lhd_expand_expr PARAMS ((tree, rtx, enum machine_mode, int));
extern void lhd_print_error_function PARAMS ((struct diagnostic_context *,
const char *));
@@ -82,7 +82,7 @@ tree lhd_tree_inlining_convert_parm_for_inlining PARAMS ((tree, tree, tree));
#define LANG_HOOKS_IDENTIFIER_SIZE sizeof (struct lang_identifier)
#define LANG_HOOKS_INIT lhd_do_nothing
#define LANG_HOOKS_FINISH lhd_do_nothing
-#define LANG_HOOKS_PARSE_FILE lhd_do_nothing
+#define LANG_HOOKS_PARSE_FILE lhd_do_nothing_i
#define LANG_HOOKS_CLEAR_BINDING_STACK lhd_clear_binding_stack
#define LANG_HOOKS_INIT_OPTIONS lhd_do_nothing
#define LANG_HOOKS_DECODE_OPTION lhd_decode_option
@@ -108,7 +108,6 @@ tree lhd_tree_inlining_convert_parm_for_inlining PARAMS ((tree, tree, tree));
#define LANG_HOOKS_PRINT_IDENTIFIER lhd_print_tree_nothing
#define LANG_HOOKS_PRINT_ERROR_FUNCTION lhd_print_error_function
#define LANG_HOOKS_DECL_PRINTABLE_NAME lhd_decl_printable_name
-#define LANG_HOOKS_SET_YYDEBUG lhd_set_yydebug
#define LANG_HOOKS_FUNCTION_INIT lhd_do_nothing_f
#define LANG_HOOKS_FUNCTION_FREE lhd_do_nothing_f
@@ -250,7 +249,6 @@ int lhd_tree_dump_type_quals PARAMS ((tree));
LANG_HOOKS_PRINT_IDENTIFIER, \
LANG_HOOKS_DECL_PRINTABLE_NAME, \
LANG_HOOKS_PRINT_ERROR_FUNCTION, \
- LANG_HOOKS_SET_YYDEBUG, \
LANG_HOOKS_ATTRIBUTE_TABLE, \
LANG_HOOKS_COMMON_ATTRIBUTE_TABLE, \
LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE, \
diff --git a/gcc/langhooks.c b/gcc/langhooks.c
index 0bbb5e3..4f0e2f3 100644
--- a/gcc/langhooks.c
+++ b/gcc/langhooks.c
@@ -47,6 +47,14 @@ lhd_do_nothing_t (t)
{
}
+/* Do nothing (int). */
+
+void
+lhd_do_nothing_i (i)
+ int i ATTRIBUTE_UNUSED;
+{
+}
+
/* Do nothing (function). */
void
@@ -140,16 +148,6 @@ lhd_warn_unused_global_decl (decl)
return true;
}
-/* Called when -dy is given on the command line. */
-
-void
-lhd_set_yydebug (value)
- int value;
-{
- if (value)
- fprintf (stderr, "warning: no yacc/bison-generated output to debug!\n");
-}
-
/* Set the DECL_ASSEMBLER_NAME for DECL. */
void
lhd_set_decl_assembler_name (decl)
diff --git a/gcc/langhooks.h b/gcc/langhooks.h
index 8c0b8ef..417f77b 100644
--- a/gcc/langhooks.h
+++ b/gcc/langhooks.h
@@ -213,8 +213,9 @@ struct lang_hooks
/* Called at the end of compilation, as a finalizer. */
void (*finish) PARAMS ((void));
- /* Parses the entire file. */
- void (*parse_file) PARAMS ((void));
+ /* Parses the entire file. The argument is non-zero to cause bison
+ parsers to dump debugging information during parsing. */
+ void (*parse_file) PARAMS ((int));
/* Called immediately after parsing to clear the binding stack. */
void (*clear_binding_stack) PARAMS ((void));
@@ -327,11 +328,6 @@ struct lang_hooks
void (*print_error_function) PARAMS ((struct diagnostic_context *,
const char *));
- /* Set yydebug for bison-based parsers, when -dy is given on the
- command line. By default, if the parameter is non-zero, prints a
- warning that the front end does not use such a parser. */
- void (*set_yydebug) PARAMS ((int));
-
/* Pointers to machine-independent attribute tables, for front ends
using attribs.c. If one is NULL, it is ignored. Respectively, a
table of attributes specific to the language, a table of
diff --git a/gcc/objc/objc-lang.c b/gcc/objc/objc-lang.c
index 6719e52..588d547 100644
--- a/gcc/objc/objc-lang.c
+++ b/gcc/objc/objc-lang.c
@@ -68,8 +68,6 @@ static void objc_post_options PARAMS ((void));
#define LANG_HOOKS_PRINT_IDENTIFIER c_print_identifier
#undef LANG_HOOKS_DECL_PRINTABLE_NAME
#define LANG_HOOKS_DECL_PRINTABLE_NAME objc_printable_name
-#undef LANG_HOOKS_SET_YYDEBUG
-#define LANG_HOOKS_SET_YYDEBUG c_set_yydebug
#undef LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL
#define LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL c_warn_unused_global_decl
diff --git a/gcc/toplev.c b/gcc/toplev.c
index fa8e289..07dc649 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -126,6 +126,9 @@ static int print_single_switch PARAMS ((FILE *, int, int, const char *,
static void print_switch_values PARAMS ((FILE *, int, int, const char *,
const char *, const char *));
+/* Nonzero to dump debug info whilst parsing (-dy option). */
+static int set_yydebug;
+
/* Length of line when printing switch values. */
#define MAX_LINE 75
@@ -2029,7 +2032,7 @@ compile_file ()
/* Call the parser, which parses the entire file (calling
rest_of_compilation for each function). */
- (*lang_hooks.parse_file) ();
+ (*lang_hooks.parse_file) (set_yydebug);
/* In case there were missing block closers,
get us back to the global binding level. */
@@ -3721,7 +3724,7 @@ decode_d_option (arg)
rtl_dump_and_exit = 1;
break;
case 'y':
- (*lang_hooks.set_yydebug) (1);
+ set_yydebug = 1;
break;
case 'D': /* These are handled by the preprocessor. */
case 'I':