quote consistently and make tests pass with new quoting from gnulib

Updating to gnulib pulled in new quote and quotarg modules,
by which quoting is now done like 'this' rather than `this'.
That change induces many "make check" test failures.  This change
adapts code and tests so that "make check" passes once again.
* src/scan-code.l: Quote like 'this', not like `this'.
* src/scan-gram.l: Likewise.
* src/symtab.c: Likewise.
* tests/actions.at: Adjust tests to match.
* tests/input.at: Likewise.
* tests/named-refs.at: Likewise.
* tests/output.at: Likewise.
* tests/regression.at: Likewise.
* lib/.gitignore: Regenerate.
* m4/.gitignore: Likewise.
This commit is contained in:
Jim Meyering
2012-01-16 19:20:50 +01:00
parent 728415f885
commit ae93e4e4b8
10 changed files with 183 additions and 158 deletions

16
lib/.gitignore vendored
View File

@@ -243,3 +243,19 @@
/xstrndup.c
/xstrndup.h
/c-strcaseeq.h
/fd-hook.c
/fd-hook.h
/float.c
/fstat.c
/itold.c
/msvc-inval.c
/msvc-inval.h
/msvc-nothrow.c
/msvc-nothrow.h
/pathmax.h
/raise.c
/strerror-override.c
/strerror-override.h
/strerror_r.c
/xalloc-oversized.h

9
m4/.gitignore vendored
View File

@@ -157,3 +157,12 @@
/xsize.m4
/xstrndup.m4
/fstat.m4
/largefile.m4
/ldexp.m4
/msvc-inval.m4
/msvc-nothrow.m4
/pathmax.m4
/raise.m4
/ssize_t.m4
/strerror_r.m4

View File

@@ -96,10 +96,10 @@ ref -?[0-9]+|{id}|"["{id}"]"|"$"
int braces_level = 0;
/* Whether a semicolon is probably needed.
The heuristic is that a semicolon is not needed after `{', `}', `;',
The heuristic is that a semicolon is not needed after '{', '}', ';',
or a C preprocessor directive, and that whitespaces and comments
do not affect this flag.
Note that `{' does not need a semicolon because of `{}'.
Note that '{' does not need a semicolon because of '{}'.
A semicolon may be needed before a cpp direcive, but don't bother. */
bool need_semicolon = false;
@@ -118,7 +118,7 @@ ref -?[0-9]+|{id}|"["{id}"]"|"$"
%}
/*------------------------------------------------------------.
| Scanning a C comment. The initial `/ *' is already eaten. |
| Scanning a C comment. The initial '/ *' is already eaten. |
`------------------------------------------------------------*/
<SC_COMMENT>
@@ -128,7 +128,7 @@ ref -?[0-9]+|{id}|"["{id}"]"|"$"
/*--------------------------------------------------------------.
| Scanning a line comment. The initial `//' is already eaten. |
| Scanning a line comment. The initial '//' is already eaten. |
`--------------------------------------------------------------*/
<SC_LINE_COMMENT>
@@ -198,12 +198,12 @@ ref -?[0-9]+|{id}|"["{id}"]"|"$"
need_semicolon = true;
}
"$" {
warn_at (*loc, _("stray `$'"));
warn_at (*loc, _("stray '$'"));
obstack_sgrow (&obstack_for_string, "$][");
need_semicolon = true;
}
"@" {
warn_at (*loc, _("stray `@'"));
warn_at (*loc, _("stray '@'"));
obstack_sgrow (&obstack_for_string, "@@");
need_semicolon = true;
}
@@ -221,15 +221,15 @@ ref -?[0-9]+|{id}|"["{id}"]"|"$"
"}" {
bool outer_brace = --braces_level == 0;
/* As an undocumented Bison extension, append `;' before the last
/* As an undocumented Bison extension, append ';' before the last
brace in braced code, so that the user code can omit trailing
`;'. But do not append `;' if emulating Yacc, since Yacc does
';'. But do not append ';' if emulating Yacc, since Yacc does
not append one. */
if (outer_brace && !yacc_flag && language_prio == default_prio
&& skeleton_prio == default_prio && need_semicolon && ! in_cpp)
{
warn_at (*loc, _("a `;' might be needed at the end of action code"));
warn_at (*loc, _("future versions of Bison will not add the `;'"));
warn_at (*loc, _("a ';' might be needed at the end of action code"));
warn_at (*loc, _("future versions of Bison will not add the ';'"));
obstack_1grow (&obstack_for_string, ';');
}
@@ -239,8 +239,8 @@ ref -?[0-9]+|{id}|"["{id}"]"|"$"
/* Preprocessing directives should only be recognized at the beginning
of lines, allowing whitespace including comments, but in C/C++,
`#' can only be the start of preprocessor directives or within
`#define' directives anyway, so don't bother with begin of line. */
'#' can only be the start of preprocessor directives or within
'#define' directives anyway, so don't bother with begin of line. */
"#" STRING_GROW; in_cpp = true;
{splice} STRING_GROW;
@@ -627,8 +627,8 @@ parse_ref (char *cp, symbol_list *rule, int rule_length,
sym_loc.start.column += 1;
sym_loc.end = sym_loc.start;
const char *format =
_("syntax error after `%c', expecting integer, letter,"
" `_', `[', or `$'");
_("syntax error after '%c', expecting integer, letter,"
" '_', '[', or '$'");
complain_at_indent (sym_loc, &indent, format, dollar_or_at);
}
else if (midrule_rhs_index)
@@ -690,7 +690,7 @@ int max_left_semantic_context = 0;
/*------------------------------------------------------------------.
| TEXT is pointing to a wannabee semantic value (i.e., a `$'). |
| TEXT is pointing to a wannabee semantic value (i.e., a '$'). |
| |
| Possible inputs: $[<TYPENAME>]($|integer) |
| |
@@ -755,12 +755,12 @@ handle_action_dollar (symbol_list *rule, char *text, location dollar_loc)
{
if (rule->midrule_parent_rule)
complain_at (dollar_loc,
_("$$ for the midrule at $%d of `%s'"
_("$$ for the midrule at $%d of '%s'"
" has no declared type"),
rule->midrule_parent_rhs_index,
effective_rule->content.sym->tag);
else
complain_at (dollar_loc, _("$$ of `%s' has no declared type"),
complain_at (dollar_loc, _("$$ of '%s' has no declared type"),
rule->content.sym->tag);
}
else
@@ -782,7 +782,7 @@ handle_action_dollar (symbol_list *rule, char *text, location dollar_loc)
if (!type_name)
{
if (union_seen | tag_seen)
complain_at (dollar_loc, _("$%s of `%s' has no declared type"),
complain_at (dollar_loc, _("$%s of '%s' has no declared type"),
cp, effective_rule->content.sym->tag);
else
untyped_var_seen = true;
@@ -801,7 +801,7 @@ handle_action_dollar (symbol_list *rule, char *text, location dollar_loc)
/*------------------------------------------------------.
| TEXT is a location token (i.e., a `@...'). Output to |
| TEXT is a location token (i.e., a '@...'). Output to |
| OBSTACK_FOR_STRING a reference to this location. |
`------------------------------------------------------*/

View File

@@ -100,16 +100,16 @@ static void unexpected_newline (boundary, char const *);
/* Strings and characters in directives/rules. */
%x SC_ESCAPED_STRING SC_ESCAPED_CHARACTER
/* A identifier was just read in directives/rules. Special state
to capture the sequence `identifier :'. */
to capture the sequence 'identifier :'. */
%x SC_AFTER_IDENTIFIER
/* A complex tag, with nested angles brackets. */
%x SC_TAG
/* Four types of user code:
- prologue (code between `%{' `%}' in the first section, before %%);
- prologue (code between '%{' '%}' in the first section, before %%);
- actions, printers, union, etc, (between braced in the middle section);
- epilogue (everything after the second %%).
- predicate (code between `%?{' and `{' in middle section); */
- predicate (code between '%?{' and '{' in middle section); */
%x SC_PROLOGUE SC_BRACED_CODE SC_EPILOGUE SC_PREDICATE
/* C and C++ comments in code. */
%x SC_COMMENT SC_LINE_COMMENT
@@ -164,7 +164,7 @@ splice (\\[ \f\t\v]*\n)*
<INITIAL,SC_AFTER_IDENTIFIER,SC_BRACKETED_ID,SC_RETURN_BRACKETED_ID>
{
/* Comments and white space. */
"," warn_at (*loc, _("stray `,' treated as white space"));
"," warn_at (*loc, _("stray ',' treated as white space"));
[ \f\n\t\v] |
"//".* ;
"/*" {
@@ -440,7 +440,7 @@ splice (\\[ \f\t\v]*\n)*
/*---------------------------------------------------------------.
| Scanning a Yacc comment. The initial `/ *' is already eaten. |
| Scanning a Yacc comment. The initial '/ *' is already eaten. |
`---------------------------------------------------------------*/
<SC_YACC_COMMENT>
@@ -452,7 +452,7 @@ splice (\\[ \f\t\v]*\n)*
/*------------------------------------------------------------.
| Scanning a C comment. The initial `/ *' is already eaten. |
| Scanning a C comment. The initial '/ *' is already eaten. |
`------------------------------------------------------------*/
<SC_COMMENT>
@@ -463,7 +463,7 @@ splice (\\[ \f\t\v]*\n)*
/*--------------------------------------------------------------.
| Scanning a line comment. The initial `//' is already eaten. |
| Scanning a line comment. The initial '//' is already eaten. |
`--------------------------------------------------------------*/
<SC_LINE_COMMENT>
@@ -707,8 +707,8 @@ splice (\\[ \f\t\v]*\n)*
"{"|"<"{splice}"%" STRING_GROW; nesting++;
"%"{splice}">" STRING_GROW; nesting--;
/* Tokenize `<<%' correctly (as `<<' `%') rather than incorrrectly
(as `<' `<%'). */
/* Tokenize '<<%' correctly (as '<<' '%') rather than incorrrectly
(as '<' '<%'). */
"<"{splice}"<" STRING_GROW;
<<EOF>> {
@@ -933,7 +933,7 @@ convert_ucn_to_byte (char const *ucn)
/*----------------------------------------------------------------.
| Handle `#line INT "FILE"'. ARGS has already skipped `#line '. |
| Handle '#line INT "FILE"'. ARGS has already skipped '#line '. |
`----------------------------------------------------------------*/
static void
@@ -977,7 +977,7 @@ unexpected_end (boundary start, char const *msgid, char const *token_end)
static void
unexpected_eof (boundary start, char const *token_end)
{
unexpected_end (start, N_("missing `%s' at end of file"), token_end);
unexpected_end (start, N_("missing '%s' at end of file"), token_end);
}
@@ -988,7 +988,7 @@ unexpected_eof (boundary start, char const *token_end)
static void
unexpected_newline (boundary start, char const *token_end)
{
unexpected_end (start, N_("missing `%s' at end of line"), token_end);
unexpected_end (start, N_("missing '%s' at end of line"), token_end);
}

View File

@@ -444,10 +444,10 @@ void
symbol_make_alias (symbol *sym, symbol *str, location loc)
{
if (str->alias)
warn_at (loc, _("symbol `%s' used more than once as a literal string"),
warn_at (loc, _("symbol '%s' used more than once as a literal string"),
str->tag);
else if (sym->alias)
warn_at (loc, _("symbol `%s' given more than one literal string"),
warn_at (loc, _("symbol '%s' given more than one literal string"),
sym->tag);
else
{

View File

@@ -1409,42 +1409,42 @@ string;"}
]])
AT_BISON_CHECK([[-o input.c input.y]], [0], [],
[[input.y:8.48: warning: a `;' might be needed at the end of action code
input.y:8.48: warning: future versions of Bison will not add the `;'
input.y:9.48: warning: a `;' might be needed at the end of action code
input.y:9.48: warning: future versions of Bison will not add the `;'
input.y:10.48: warning: a `;' might be needed at the end of action code
input.y:10.48: warning: future versions of Bison will not add the `;'
input.y:11.48: warning: a `;' might be needed at the end of action code
input.y:11.48: warning: future versions of Bison will not add the `;'
input.y:12.48: warning: a `;' might be needed at the end of action code
input.y:12.48: warning: future versions of Bison will not add the `;'
input.y:13.48: warning: a `;' might be needed at the end of action code
input.y:13.48: warning: future versions of Bison will not add the `;'
input.y:20.1: warning: a `;' might be needed at the end of action code
input.y:20.1: warning: future versions of Bison will not add the `;'
input.y:21.1: warning: a `;' might be needed at the end of action code
input.y:21.1: warning: future versions of Bison will not add the `;'
input.y:22.1: warning: a `;' might be needed at the end of action code
input.y:22.1: warning: future versions of Bison will not add the `;'
input.y:23.1: warning: a `;' might be needed at the end of action code
input.y:23.1: warning: future versions of Bison will not add the `;'
input.y:24.1: warning: a `;' might be needed at the end of action code
input.y:24.1: warning: future versions of Bison will not add the `;'
input.y:25.1: warning: a `;' might be needed at the end of action code
input.y:25.1: warning: future versions of Bison will not add the `;'
input.y:31.1: warning: a `;' might be needed at the end of action code
input.y:31.1: warning: future versions of Bison will not add the `;'
input.y:32.1: warning: a `;' might be needed at the end of action code
input.y:32.1: warning: future versions of Bison will not add the `;'
input.y:33.1: warning: a `;' might be needed at the end of action code
input.y:33.1: warning: future versions of Bison will not add the `;'
input.y:34.1: warning: a `;' might be needed at the end of action code
input.y:34.1: warning: future versions of Bison will not add the `;'
input.y:35.1: warning: a `;' might be needed at the end of action code
input.y:35.1: warning: future versions of Bison will not add the `;'
input.y:36.1: warning: a `;' might be needed at the end of action code
input.y:36.1: warning: future versions of Bison will not add the `;'
[[input.y:8.48: warning: a ';' might be needed at the end of action code
input.y:8.48: warning: future versions of Bison will not add the ';'
input.y:9.48: warning: a ';' might be needed at the end of action code
input.y:9.48: warning: future versions of Bison will not add the ';'
input.y:10.48: warning: a ';' might be needed at the end of action code
input.y:10.48: warning: future versions of Bison will not add the ';'
input.y:11.48: warning: a ';' might be needed at the end of action code
input.y:11.48: warning: future versions of Bison will not add the ';'
input.y:12.48: warning: a ';' might be needed at the end of action code
input.y:12.48: warning: future versions of Bison will not add the ';'
input.y:13.48: warning: a ';' might be needed at the end of action code
input.y:13.48: warning: future versions of Bison will not add the ';'
input.y:20.1: warning: a ';' might be needed at the end of action code
input.y:20.1: warning: future versions of Bison will not add the ';'
input.y:21.1: warning: a ';' might be needed at the end of action code
input.y:21.1: warning: future versions of Bison will not add the ';'
input.y:22.1: warning: a ';' might be needed at the end of action code
input.y:22.1: warning: future versions of Bison will not add the ';'
input.y:23.1: warning: a ';' might be needed at the end of action code
input.y:23.1: warning: future versions of Bison will not add the ';'
input.y:24.1: warning: a ';' might be needed at the end of action code
input.y:24.1: warning: future versions of Bison will not add the ';'
input.y:25.1: warning: a ';' might be needed at the end of action code
input.y:25.1: warning: future versions of Bison will not add the ';'
input.y:31.1: warning: a ';' might be needed at the end of action code
input.y:31.1: warning: future versions of Bison will not add the ';'
input.y:32.1: warning: a ';' might be needed at the end of action code
input.y:32.1: warning: future versions of Bison will not add the ';'
input.y:33.1: warning: a ';' might be needed at the end of action code
input.y:33.1: warning: future versions of Bison will not add the ';'
input.y:34.1: warning: a ';' might be needed at the end of action code
input.y:34.1: warning: future versions of Bison will not add the ';'
input.y:35.1: warning: a ';' might be needed at the end of action code
input.y:35.1: warning: future versions of Bison will not add the ';'
input.y:36.1: warning: a ';' might be needed at the end of action code
input.y:36.1: warning: future versions of Bison will not add the ';'
]])
AT_MATCHES_CHECK([input.c], [[/\* TEST:N:2 \*/ \}$]], [[3]])

View File

@@ -33,8 +33,8 @@ exp: { @$ = @1 ; };
]])
AT_BISON_CHECK([input.y], [1], [],
[[input.y:2.13-14: integer out of range: `$1'
input.y:3.13-14: integer out of range: `@1'
[[input.y:2.13-14: integer out of range: '$1'
input.y:3.13-14: integer out of range: '@1'
]])
AT_CLEANUP
@@ -58,8 +58,8 @@ exp: foo { $$; } foo { $2; } foo
]])
AT_BISON_CHECK([input.y], [1], [],
[[input.y:5.12-13: $$ for the midrule at $2 of `exp' has no declared type
input.y:5.24-25: $2 of `exp' has no declared type
[[input.y:5.12-13: $$ for the midrule at $2 of 'exp' has no declared type
input.y:5.24-25: $2 of 'exp' has no declared type
input.y:5.6-32: warning: type clash on default action: <bar> != <>
input.y:6.6-8: warning: type clash on default action: <bar> != <>
input.y:7.5: warning: empty rule for typed nonterminal, and no action
@@ -664,9 +664,9 @@ AT_DATA_GRAMMAR([input.y],
start: .GOOD GOOD
]])
AT_BISON_CHECK([-o input.c input.y], [1], [],
[[input.y:10.10: invalid character: `-'
input.y:11.10-16: invalid identifier: `1NV4L1D'
input.y:12.10: invalid character: `-'
[[input.y:10.10: invalid character: '-'
input.y:11.10-16: invalid identifier: '1NV4L1D'
input.y:12.10: invalid character: '-'
]])
AT_CLEANUP
@@ -703,8 +703,8 @@ start: TOO_LARGE_DEC TOO_LARGE_HEX
]])
AT_BISON_CHECK([too-large.y], [1], [],
[[too-large.y:9.22-42: integer out of range: `999999999999999999999'
too-large.y:10.24-44: integer out of range: `0xFFFFFFFFFFFFFFFFFFF'
[[too-large.y:9.22-42: integer out of range: '999999999999999999999'
too-large.y:10.24-44: integer out of range: '0xFFFFFFFFFFFFFFFFFFF'
]])
AT_CLEANUP
@@ -744,11 +744,11 @@ start: ;
]])
AT_BISON_CHECK([-o input.c input.y], 1, [],
[[input.y:1.10-2.0: missing `"' at end of line
input.y:4.10-5.0: missing `'' at end of line
input.y:14.11-15.0: missing `'' at end of line
input.y:16.11-17.0: missing `"' at end of line
input.y:19.13-20.0: missing `}' at end of file
[[input.y:1.10-2.0: missing '"' at end of line
input.y:4.10-5.0: missing ''' at end of line
input.y:14.11-15.0: missing ''' at end of line
input.y:16.11-17.0: missing '"' at end of line
input.y:19.13-20.0: missing '}' at end of file
input.y:20.1: syntax error, unexpected end of file
]])
@@ -1206,9 +1206,9 @@ AT_CHECK([[perl -e "print 'start: \'';" >> empty.y || exit 77]])
AT_BISON_CHECK([empty.y], [1], [],
[[empty.y:2.8-9: warning: empty character literal
empty.y:3.8-4.0: warning: empty character literal
empty.y:3.8-4.0: missing `'' at end of line
empty.y:3.8-4.0: missing ''' at end of line
empty.y:4.8: warning: empty character literal
empty.y:4.8: missing `'' at end of file
empty.y:4.8: missing ''' at end of file
]])
AT_DATA([two.y],
@@ -1221,9 +1221,9 @@ AT_CHECK([[perl -e "print 'start: \'ab';" >> two.y || exit 77]])
AT_BISON_CHECK([two.y], [1], [],
[[two.y:2.8-11: warning: extra characters in character literal
two.y:3.8-4.0: warning: extra characters in character literal
two.y:3.8-4.0: missing `'' at end of line
two.y:3.8-4.0: missing ''' at end of line
two.y:4.8-10: warning: extra characters in character literal
two.y:4.8-10: missing `'' at end of file
two.y:4.8-10: missing ''' at end of file
]])
AT_DATA([three.y],
@@ -1236,9 +1236,9 @@ AT_CHECK([[perl -e "print 'start: \'abc';" >> three.y || exit 77]])
AT_BISON_CHECK([three.y], [1], [],
[[three.y:2.8-12: warning: extra characters in character literal
three.y:3.8-4.0: warning: extra characters in character literal
three.y:3.8-4.0: missing `'' at end of line
three.y:3.8-4.0: missing ''' at end of line
three.y:4.8-11: warning: extra characters in character literal
three.y:4.8-11: missing `'' at end of file
three.y:4.8-11: missing ''' at end of file
]])
AT_CLEANUP
@@ -1280,7 +1280,7 @@ input.y:3.27-36: invalid number after \-escape: Uffffffff
input.y:3.26-37: warning: empty character literal
input.y:3.40-49: invalid number after \-escape: U00000000
input.y:3.39-50: warning: empty character literal
input.y:4.9-10: invalid character after \-escape: ` '
input.y:4.9-10: invalid character after \-escape: ' '
input.y:4.8-11: warning: empty character literal
input.y:4.14-15: invalid character after \-escape: A
input.y:4.13-16: warning: empty character literal

View File

@@ -255,16 +255,16 @@ exp:
]])
AT_BISON_CHECK([-o test.c test.y], 1, [],
[[test.y:50.51-60: invalid reference: `$<ival>lo9'
[[test.y:50.51-60: invalid reference: '$<ival>lo9'
test.y:50.3-68: symbol not found in production: lo9
test.y:51.51-60: warning: misleading reference: `$<ival>exp'
test.y:51.51-60: warning: misleading reference: '$<ival>exp'
test.y:42.1-3: warning: refers to: $exp at $$
test.y:51.7: warning: possibly meant: $x, hiding $exp at $1
test.y:51.41: warning: possibly meant: $r, hiding $exp at $4
test.y:52.51-52: $l of `exp' has no declared type
test.y:55.46-49: invalid reference: `$r12'
test.y:52.51-52: $l of 'exp' has no declared type
test.y:55.46-49: invalid reference: '$r12'
test.y:55.3-53: symbol not found in production: r12
test.y:56.29-33: invalid reference: `$expo'
test.y:56.29-33: invalid reference: '$expo'
test.y:56.3-46: symbol not found in production: expo
]])
AT_CLEANUP
@@ -280,7 +280,7 @@ foo: '1'
foo.bar: '2'
]])
AT_BISON_CHECK([-o test.c test.y], 0, [],
[[test.y:11.22-29: warning: misleading reference: `$foo.bar'
[[test.y:11.22-29: warning: misleading reference: '$foo.bar'
test.y:11.8-10: warning: refers to: $foo at $1
test.y:11.12-18: warning: possibly meant: $[foo.bar] at $2
]])
@@ -356,43 +356,43 @@ factor: '(' expr ')' { $$ = $2; }
;
]])
AT_BISON_CHECK([-o test.c test.y], 1, [],
[[test.y:24.36-41: invalid reference: `$cond1'
[[test.y:24.36-41: invalid reference: '$cond1'
test.y:23.11-24.62: symbol not found in production: cond1
test.y:26.43-53: invalid reference: `$stmt.field'
test.y:26.43-53: invalid reference: '$stmt.field'
test.y:25.11-26.60: symbol not found in production: stmt
test.y:25.35-38: possibly meant: $then.field, hiding $stmt.field at $4
test.y:28.43-52: invalid reference: `$stmt.list'
test.y:28.43-52: invalid reference: '$stmt.list'
test.y:27.11-28.59: symbol not found in production: stmt
test.y:27.30-38: possibly meant: $[stmt.list] at $4
test.y:30.43-46: ambiguous reference: `$xyz'
test.y:30.43-46: ambiguous reference: '$xyz'
test.y:29.35-37: refers to: $xyz at $4
test.y:29.50-52: refers to: $xyz at $6
test.y:32.43-52: invalid reference: `$stmt.list'
test.y:32.43-52: invalid reference: '$stmt.list'
test.y:31.11-32.63: symbol not found in production: stmt
test.y:31.40-43: possibly meant: $then, hiding $[stmt.list] at $4
test.y:31.61-64: possibly meant: $else, hiding $[stmt.list] at $6
test.y:34.43-58: invalid reference: `$stmt.list.field'
test.y:34.43-58: invalid reference: '$stmt.list.field'
test.y:33.11-34.69: symbol not found in production: stmt
test.y:33.40-43: possibly meant: $then.field, hiding $[stmt.list].field at $4
test.y:33.61-64: possibly meant: $else.field, hiding $[stmt.list].field at $6
test.y:36.43-54: invalid reference: `$[stmt.list]'
test.y:36.43-54: invalid reference: '$[stmt.list]'
test.y:35.11-36.71: symbol not found in production: stmt.list
test.y:35.40-43: possibly meant: $then, hiding $[stmt.list] at $4
test.y:35.61-64: possibly meant: $else, hiding $[stmt.list] at $6
test.y:38.43-49: invalid reference: `$then.1'
test.y:38.43-49: invalid reference: '$then.1'
test.y:37.11-38.60: symbol not found in production: then
test.y:37.40-45: possibly meant: $[then.1] at $4
test.y:40.43-55: invalid reference: `$then.1.field'
test.y:40.43-55: invalid reference: '$then.1.field'
test.y:39.11-40.66: symbol not found in production: then
test.y:39.40-45: possibly meant: $[then.1].field at $4
test.y:42.44-50: invalid reference: `$stmt.x'
test.y:42.44-50: invalid reference: '$stmt.x'
test.y:41.12-42.57: symbol not found in production: stmt
test.y:41.36-41: possibly meant: $[stmt.x].x, hiding $stmt.x at $4
test.y:41.36-41: possibly meant: $[stmt.x] at $4
test.y:44.13-22: invalid reference: `$if-stmt-a'
test.y:44.13-22: invalid reference: '$if-stmt-a'
test.y:43.12-44.59: symbol not found in production: if
test.y:43.1-9: possibly meant: $[if-stmt-a] at $$
test.y:46.46-54: invalid reference: `$then-a.f'
test.y:46.46-54: invalid reference: '$then-a.f'
test.y:45.12-46.65: symbol not found in production: then
test.y:45.41-46: possibly meant: $[then-a].f at $4
]])
@@ -422,7 +422,7 @@ start: foo[ a d ] bar
{ s = $foo; }
]])
AT_BISON_CHECK([-o test.c test.y], 1, [],
[[test.y:11.15: unexpected identifier in bracketed name: `d'
[[test.y:11.15: unexpected identifier in bracketed name: 'd'
]])
AT_CLEANUP
@@ -450,10 +450,10 @@ start: foo[ /* aaa */ *&-.+ ] bar
{ s = $foo; }
]])
AT_BISON_CHECK([-o test.c test.y], 1, [],
[[test.y:11.23: invalid character in bracketed name: `*'
test.y:11.24: invalid character in bracketed name: `&'
test.y:11.25: invalid character in bracketed name: `-'
test.y:11.27: invalid character in bracketed name: `+'
[[test.y:11.23: invalid character in bracketed name: '*'
test.y:11.24: invalid character in bracketed name: '&'
test.y:11.25: invalid character in bracketed name: '-'
test.y:11.27: invalid character in bracketed name: '+'
]])
AT_CLEANUP
@@ -466,7 +466,7 @@ AT_DATA_GRAMMAR([test.y],
start[a s]: foo;
]])
AT_BISON_CHECK([-o test.c test.y], 1, [],
[[test.y:11.9: unexpected identifier in bracketed name: `s'
[[test.y:11.9: unexpected identifier in bracketed name: 's'
]])
AT_CLEANUP
@@ -513,37 +513,37 @@ sym_a: 'a';
sym_b: 'b';
]])
AT_BISON_CHECK([-o test.c test.y], 1, [],
[[test.y:12.22-31: invalid reference: `$sym.field'
[[test.y:12.22-31: invalid reference: '$sym.field'
test.y:12.3-35: symbol not found in production: sym
test.y:13.22-35: invalid reference: `$<aa>sym.field'
test.y:13.22-35: invalid reference: '$<aa>sym.field'
test.y:13.3-39: symbol not found in production: sym
test.y:14.22-33: invalid reference: `$[sym.field]'
test.y:14.22-33: invalid reference: '$[sym.field]'
test.y:14.3-37: symbol not found in production: sym.field
test.y:15.22-37: invalid reference: `$<aa>[sym.field]'
test.y:15.22-37: invalid reference: '$<aa>[sym.field]'
test.y:15.3-41: symbol not found in production: sym.field
test.y:16.22-25: invalid reference: `$sym'
test.y:16.22-25: invalid reference: '$sym'
test.y:16.3-29: symbol not found in production: sym
test.y:17.22-29: invalid reference: `$<aa>sym'
test.y:17.22-29: invalid reference: '$<aa>sym'
test.y:17.3-33: symbol not found in production: sym
test.y:18.22-27: invalid reference: `$[sym]'
test.y:18.22-27: invalid reference: '$[sym]'
test.y:18.3-65: symbol not found in production before $3: sym
test.y:18.52-61: invalid reference: `$<aa>[sym]'
test.y:18.52-61: invalid reference: '$<aa>[sym]'
test.y:18.3-65: symbol not found in production: sym
test.y:22.22-31: invalid reference: `$sym-field'
test.y:22.22-31: invalid reference: '$sym-field'
test.y:22.3-35: symbol not found in production: sym
test.y:23.22-35: invalid reference: `$<aa>sym-field'
test.y:23.22-35: invalid reference: '$<aa>sym-field'
test.y:23.3-39: symbol not found in production: sym
test.y:24.22-33: invalid reference: `$[sym-field]'
test.y:24.22-33: invalid reference: '$[sym-field]'
test.y:24.3-37: symbol not found in production: sym-field
test.y:25.22-37: invalid reference: `$<aa>[sym-field]'
test.y:25.22-37: invalid reference: '$<aa>[sym-field]'
test.y:25.3-41: symbol not found in production: sym-field
test.y:26.22-25: invalid reference: `$sym'
test.y:26.22-25: invalid reference: '$sym'
test.y:26.3-29: symbol not found in production: sym
test.y:27.22-29: invalid reference: `$<aa>sym'
test.y:27.22-29: invalid reference: '$<aa>sym'
test.y:27.3-33: symbol not found in production: sym
test.y:28.22-27: invalid reference: `$[sym]'
test.y:28.22-27: invalid reference: '$[sym]'
test.y:28.3-65: symbol not found in production before $3: sym
test.y:28.52-61: invalid reference: `$<aa>[sym]'
test.y:28.52-61: invalid reference: '$<aa>[sym]'
test.y:28.3-65: symbol not found in production: sym
]])
AT_CLEANUP
@@ -561,11 +561,11 @@ start:
.field: ;
]])
AT_BISON_CHECK([[test.y]], [[1]], [],
[[test.y:4.12-18: invalid reference: `$.field'
test.y:4.13: syntax error after `$', expecting integer, letter, `_', `@<:@', or `$'
[[test.y:4.12-18: invalid reference: '$.field'
test.y:4.13: syntax error after '$', expecting integer, letter, '_', '@<:@', or '$'
test.y:4.3-8: possibly meant: $[.field] at $1
test.y:5.12-18: invalid reference: `@.field'
test.y:5.13: syntax error after `@', expecting integer, letter, `_', `@<:@', or `$'
test.y:5.12-18: invalid reference: '@.field'
test.y:5.13: syntax error after '@', expecting integer, letter, '_', '@<:@', or '$'
]])
AT_DATA([[test.y]],
[[
@@ -576,7 +576,7 @@ start:
;
]])
AT_BISON_CHECK([[test.y]], [[0]], [],
[[test.y:4.9: warning: stray `$'
test.y:5.9: warning: stray `@'
[[test.y:4.9: warning: stray '$'
test.y:5.9: warning: stray '@'
]])
AT_CLEANUP

View File

@@ -72,7 +72,7 @@ AT_CHECK_OUTPUT([foo.y], [%defines %verbose %yacc],[],
AT_CHECK_OUTPUT([foo.yy], [%defines %verbose %yacc],[],
[y.output y.tab.c y.tab.h])
# Exercise %output and %file-prefix including deprecated `='
# Exercise %output and %file-prefix including deprecated '='
AT_CHECK_OUTPUT([foo.y], [%file-prefix "bar" %defines %verbose], [],
[bar.output bar.tab.c bar.tab.h])
AT_CHECK_OUTPUT([foo.y], [%output="bar.c" %defines %verbose %yacc],[],
@@ -165,21 +165,21 @@ AT_CLEANUP
AT_CHECK_CONFLICTING_OUTPUT([foo.y],
[], [--graph="foo.tab.c"],
[foo.y: warning: conflicting outputs to file `foo.tab.c'
[foo.y: warning: conflicting outputs to file 'foo.tab.c'
])
AT_CHECK_CONFLICTING_OUTPUT([foo.y],
[%defines "foo.output"], [-v],
[foo.y: warning: conflicting outputs to file `foo.output'
[foo.y: warning: conflicting outputs to file 'foo.output'
])
AT_CHECK_CONFLICTING_OUTPUT([foo.y],
[%skeleton "lalr1.cc" %defines %locations], [--graph="location.hh"],
[foo.y: warning: conflicting outputs to file `location.hh'
[foo.y: warning: conflicting outputs to file 'location.hh'
])
AT_CHECK_CONFLICTING_OUTPUT([foo.y], [], [-o foo.y],
[foo.y: refusing to overwrite the input file `foo.y'
[foo.y: refusing to overwrite the input file 'foo.y'
], 1)
@@ -221,7 +221,7 @@ AT_CLEANUP
])
# Notice that the header file name here cannot contain
# `"' since FILENAME in `#include "FILENAME"' cannot.
# '"' since FILENAME in '#include "FILENAME"' cannot.
AT_CHECK_OUTPUT_FILE_NAME([[`~!@#$%^&*()-=_+{}[]|\:;<>, .']])
dnl Work around a bug in m4_expand that broke AT_SETUP in autoconf 2.62,
dnl by using the definition from 2.63.

View File

@@ -162,7 +162,7 @@ AT_CLEANUP
AT_SETUP([Braces parsing])
AT_DATA([input.y],
[[/* Bison used to swallow the character after `}'. */
[[/* Bison used to swallow the character after '}'. */
%%
exp: { tests = {{{{{{{{{{}}}}}}}}}}; };
@@ -184,7 +184,7 @@ AT_CLEANUP
AT_SETUP([Duplicate string])
AT_DATA([input.y],
[[/* `Bison -v' used to dump core when two tokens are defined with the same
[[/* 'Bison -v' used to dump core when two tokens are defined with the same
string, as LE and GE below. */
%token NUM
@@ -197,7 +197,7 @@ exp: '(' exp ')' | NUM ;
]])
AT_BISON_CHECK([-v -o input.c input.y], 0, [],
[[input.y:6.8-14: warning: symbol `"<="' used more than once as a literal string
[[input.y:6.8-14: warning: symbol '"<="' used more than once as a literal string
]])
AT_CLEANUP
@@ -387,14 +387,14 @@ default: 'a' }
]])
AT_BISON_CHECK([input.y], [1], [],
[[input.y:2.1: invalid character: `?'
input.y:3.14: invalid character: `}'
input.y:4.1: invalid character: `%'
input.y:4.2: invalid character: `&'
input.y:5.1-17: invalid directive: `%a-does-not-exist'
input.y:6.1: invalid character: `%'
input.y:6.2: invalid character: `-'
input.y:7.1-8.0: missing `%}' at end of file
[[input.y:2.1: invalid character: '?'
input.y:3.14: invalid character: '}'
input.y:4.1: invalid character: '%'
input.y:4.2: invalid character: '&'
input.y:5.1-17: invalid directive: '%a-does-not-exist'
input.y:6.1: invalid character: '%'
input.y:6.2: invalid character: '-'
input.y:7.1-8.0: missing '%}' at end of file
input.y:7.1-8.0: syntax error, unexpected %{...%}
]])
@@ -428,7 +428,7 @@ AT_CLEANUP
AT_SETUP([Token definitions])
# Bison managed, when fed with `%token 'f' "f"' to #define 'f'!
# Bison managed, when fed with '%token 'f' "f"' to #define 'f'!
AT_DATA_GRAMMAR([input.y],
[%{
#include <stdlib.h>
@@ -475,7 +475,7 @@ main (void)
# the user specification is eliminated.
AT_BISON_CHECK([-o input.c input.y], [[0]], [[]],
[[input.y:22.8-14: warning: symbol SPECIAL redeclared
input.y:22.8-63: warning: symbol `"\\'?\"\a\b\f\n\r\t\v\001\201\001\201??!"' used more than once as a literal string
input.y:22.8-63: warning: symbol '"\\'?\"\a\b\f\n\r\t\v\001\201\001\201??!"' used more than once as a literal string
]])
AT_COMPILE([input])
@@ -524,7 +524,7 @@ AT_CLEANUP
# The generation of the reduction was once wrong in Bison, and made it
# miss some reductions. In the following test case, the reduction on
# `undef_id_tok' in state 1 was missing. This is stripped down from
# 'undef_id_tok' in state 1 was missing. This is stripped down from
# the actual web2c.y.
AT_SETUP([Web2c Report])
@@ -686,7 +686,7 @@ AT_CLEANUP
## Web2c Actions. ##
## --------------- ##
# The generation of the mapping `state -> action' was once wrong in
# The generation of the mapping 'state -> action' was once wrong in
# extremely specific situations. web2c.y exhibits this situation.
# Below is a stripped version of the grammar. It looks like one can
# simplify it further, but just don't: it is tuned to exhibit a bug,
@@ -1148,7 +1148,7 @@ AT_SETUP([[Extra lookahead sets in report]])
# state's one item that (1) is associated with the same rule as the reduction
# and (2) has its dot at the end of its RHS. Previously, Bison also
# erroneously printed the lookahead set next to all of the state's other items
# associated with the same rule. This bug affected only the `.output' file and
# associated with the same rule. This bug affected only the '.output' file and
# not the generated parser source code.
AT_DATA([[input.y]],