Do not use @output_header_name@ unless

b4_defines_flag is set.  This fixes two bugs reported by
Tim Van Holder in
<http://mail.gnu.org/archive/html/bug-bison/2003-01/msg00071.html>
and <http://mail.gnu.org/archive/html/bug-bison/2003-01/msg00073.html>.
This commit is contained in:
Paul Eggert
2003-01-29 06:31:02 +00:00
parent b2a836b51e
commit b61c697827

View File

@@ -1,6 +1,6 @@
m4_divert(-1) m4_divert(-1)
# C++ skeleton for Bison # C++ skeleton for Bison
# Copyright (C) 2002 Free Software Foundation, Inc. # Copyright (C) 2002, 2003 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@@ -87,9 +87,10 @@ m4_define([b4_constructor],
# We do want M4 expansion after # for CPP macros. # We do want M4 expansion after # for CPP macros.
m4_changecom() m4_changecom()
m4_divert(0)dnl m4_divert(0)dnl
@output @output_header_name@ m4_if(b4_defines_flag, 0, [],
[@output @output_header_name@
b4_copyright([C++ Skeleton parser for LALR(1) parsing with Bison], b4_copyright([C++ Skeleton parser for LALR(1) parsing with Bison],
[2002])[ [2002, 2003])[
/* FIXME: This is wrong, we want computed header guards. /* FIXME: This is wrong, we want computed header guards.
I don't know why the macros are missing now. :( */ I don't know why the macros are missing now. :( */
#ifndef PARSER_HEADER_H #ifndef PARSER_HEADER_H
@@ -282,12 +283,12 @@ namespace yy
} }
#endif /* ! defined PARSER_HEADER_H */] #endif /* ! defined PARSER_HEADER_H */]
dnl ])dnl
@output @output_parser_name@ @output @output_parser_name@
b4_copyright([C++ Skeleton parser for LALR(1) parsing with Bison], b4_copyright([C++ Skeleton parser for LALR(1) parsing with Bison],
[2002])[ [2002, 2003])
#include @output_header_name@ m4_if(b4_defines_flag, 0, [], [#include @output_header_name@])[
/* Enable debugging if requested. */ /* Enable debugging if requested. */
#if YYDEBUG #if YYDEBUG
@@ -766,7 +767,7 @@ const yy::]b4_parser_class_name[::TokenNumberType yy::]b4_parser_class_name[::un
]b4_epilogue ]b4_epilogue
dnl dnl
@output stack.hh @output stack.hh
b4_copyright([2002])[ b4_copyright([2002, 2003])[
#ifndef BISON_STACK_HH #ifndef BISON_STACK_HH
# define BISON_STACK_HH # define BISON_STACK_HH
@@ -863,7 +864,7 @@ namespace yy
#endif // not BISON_STACK_HH] #endif // not BISON_STACK_HH]
dnl dnl
@output location.hh @output location.hh
b4_copyright([2002])[ b4_copyright([2002, 2003])[
#ifndef BISON_LOCATION_HH #ifndef BISON_LOCATION_HH
# define BISON_LOCATION_HH # define BISON_LOCATION_HH