* tests/regression.at (Invalid CPP headers): New.

From Alexander Belopolsky.
* src/files.c (compute_header_macro): Map non alnum chars to `_'.
This commit is contained in:
Akim Demaille
2001-10-02 16:17:41 +00:00
parent f1394282f0
commit d9302e4b73
4 changed files with 51 additions and 25 deletions

View File

@@ -1,3 +1,9 @@
2001-10-02 Akim Demaille <akim@epita.fr>
* tests/regression.at (Invalid CPP headers): New.
From Alexander Belopolsky.
* src/files.c (compute_header_macro): Map non alnum chars to `_'.
2001-10-02 Akim Demaille <akim@epita.fr>
* tests/regression.at (Invalid input): New.

31
THANKS
View File

@@ -1,24 +1,25 @@
Bison was originally written by Robert Corbett. It would not be what
it is today without the invaluable help of these people:
Akim Demaille akim@epita.fr
Akim Demaille akim@epita.fr
Albert Chin-A-Young china@thewrittenword.com
Daniel Hagerty hag@gnu.org
David J. MacKenzie djm@gnu.org
Fabrice Bauzac noon@cote-dazur.com
Hans Aberg haberg@matematik.su.se
Jesse Thilo jthilo@gnu.org
Jim Meyering meyering@gnu.org
Juan Manuel Guerrero ST001906@HRZ1.HRZ.TU-Darmstadt.De
Keith Browne kbrowne@legato.com
Laurent Mascherpa laurent.mascherpa@epita.fr
Alexander Belopolsky alexb@rentec.com
Daniel Hagerty hag@gnu.org
David J. MacKenzie djm@gnu.org
Fabrice Bauzac noon@cote-dazur.com
Hans Aberg haberg@matematik.su.se
Jesse Thilo jthilo@gnu.org
Jim Meyering meyering@gnu.org
Juan Manuel Guerrero ST001906@HRZ1.HRZ.TU-Darmstadt.De
Keith Browne kbrowne@legato.com
Laurent Mascherpa laurent.mascherpa@epita.fr
Marc Autret autret_m@epita.fr
Neil Booth NeilB@earthling.net
Noah Friedman friedman@gnu.org
Neil Booth NeilB@earthling.net
Noah Friedman friedman@gnu.org
Pascal Bart pascal.bart@epita.fr
Paul Eggert eggert@twinsun.com
Piotr Gackiewicz gacek@intertel.com.pl
Richard Stallman rms@gnu.org
Paul Eggert eggert@twinsun.com
Piotr Gackiewicz gacek@intertel.com.pl
Richard Stallman rms@gnu.org
Robert Anisko anisko_r@epita.fr
Shura debil_urod@ngs.ru

View File

@@ -94,8 +94,7 @@ stringappend (const char *string1, const char *string2)
static char *
compute_header_macro (void)
{
int ite;
char *macro_name;
char *macro_name, *cp;
if (spec_defines_file)
macro_name = xstrdup (spec_defines_file);
@@ -109,14 +108,12 @@ compute_header_macro (void)
strcat (macro_name, header_extension);
}
for (ite = 0; macro_name[ite]; ite++)
if (macro_name[ite] == '.')
macro_name[ite] = '_';
else
{
if (islower (macro_name[ite]))
macro_name[ite] -= ('a' - 'A');
}
for (cp = macro_name; *cp; ++cp)
if (islower (*cp))
*cp = toupper (*cp);
else if (!isalnum (*cp))
*cp = '_';
return macro_name;
}

View File

@@ -107,3 +107,25 @@ input.y:3: fatal error: no rules in the input grammar
])
AT_CLEANUP
## --------------------- ##
## Invalid CPP headers. ##
## --------------------- ##
AT_SETUP([Invalid CPP headers])
mkdir input
AT_DATA([input/input.y],
[%%
dummy:
])
AT_CHECK([bison --defines input/input.y])
AT_CHECK([sed 1q input/input.tab.h], 0,
[[#ifndef INPUT_INPUT_TAB_H
]])
AT_CLEANUP(input)