Merge remote-tracking branch 'origin/maint'

* origin/maint:
  maint: remove useless file
  update files to ignore
  remove useless include
  use locale-indep. c_is* functions for parsing, not isspace, isprint etc
  gnulib: update
  --help: include a place to report translation issues
  tests: style changes
  tests: fix push-pull test
  yacc.c: style changes

Conflicts:
	src/system.h
This commit is contained in:
Akim Demaille
2012-09-04 18:51:55 +02:00
9 changed files with 63 additions and 44 deletions

View File

@@ -1404,7 +1404,7 @@ b4_function_define([[yyparse]], [[int]], b4_parse_param)[
int yyn; int yyn;
int yyresult; int yyresult;
/* Lookahead token as an internal (translated) token number. */ /* Lookahead token as an internal (translated) token number. */
int yytoken; int yytoken = 0;
/* The variables used to return semantic value and location from the /* The variables used to return semantic value and location from the
action routines. */ action routines. */
YYSTYPE yyval;]b4_locations_if([[ YYSTYPE yyval;]b4_locations_if([[
@@ -1429,7 +1429,6 @@ b4_function_define([[yyparse]], [[int]], b4_parse_param)[
goto yyread_pushed_token; goto yyread_pushed_token;
}]])[ }]])[
yytoken = 0;
yyss = yyssa; yyss = yyssa;
yyvs = yyvsa;]b4_locations_if([[ yyvs = yyvsa;]b4_locations_if([[
yyls = yylsa;]])[ yyls = yylsa;]])[

2
doc/.gitignore vendored
View File

@@ -1,4 +1,3 @@
/*.info*
/*~ /*~
/.dirstamp /.dirstamp
/bison.1 /bison.1
@@ -9,6 +8,7 @@
/bison.fn /bison.fn
/bison.help /bison.help
/bison.html /bison.html
/bison.info
/bison.ky /bison.ky
/bison.log /bison.log
/bison.pdf /bison.pdf

View File

@@ -1 +0,0 @@
external: gnulib

View File

@@ -344,7 +344,25 @@ THINGS is a list of comma separated words that can include:\n\
`none' disable the report\n\ `none' disable the report\n\
"), stdout); "), stdout);
printf (_("\nReport bugs to <%s>.\n"), PACKAGE_BUGREPORT); putc ('\n', stdout);
printf (_("Report bugs to <%s>.\n"), PACKAGE_BUGREPORT);
printf (_("%s home page: <%s>.\n"), PACKAGE_NAME, PACKAGE_URL);
fputs (_("General help using GNU software: "
"<http://www.gnu.org/gethelp/>.\n"),
stdout);
/* Don't output this redundant message for English locales.
Note we still output for 'C' so that it gets included in the
man page. */
const char *lc_messages = setlocale (LC_MESSAGES, NULL);
if (lc_messages && !STREQ (lc_messages, "en_"))
/* TRANSLATORS: Replace LANG_CODE in this URL with your language
code <http://translationproject.org/team/LANG_CODE.html> to
form one of the URLs at http://translationproject.org/team/.
Otherwise, replace the entire URL with your translation team's
email address. */
fputs (_("Report translation bugs to "
"<http://translationproject.org/team/>.\n"), stdout);
fputs (_("For complete documentation, run: info bison.\n"), stdout);
} }
exit (status); exit (status);

View File

@@ -94,6 +94,7 @@
#include <config.h> #include <config.h>
#include "system.h" #include "system.h"
#include "c-ctype.h"
#include "complain.h" #include "complain.h"
#include "conflicts.h" #include "conflicts.h"
#include "files.h" #include "files.h"
@@ -3255,11 +3256,11 @@ add_param (param_type type, char *decl, location loc)
/* Strip the surrounding '{' and '}', and any blanks just inside /* Strip the surrounding '{' and '}', and any blanks just inside
the braces. */ the braces. */
--p; --p;
while (isspace ((unsigned char) *p)) while (c_isspace ((unsigned char) *p))
--p; --p;
p[1] = '\0'; p[1] = '\0';
++decl; ++decl;
while (isspace ((unsigned char) *decl)) while (c_isspace ((unsigned char) *decl))
++decl; ++decl;
} }

View File

@@ -20,6 +20,7 @@
#include <config.h> #include <config.h>
#include "system.h" #include "system.h"
#include "c-ctype.h"
#include "complain.h" #include "complain.h"
#include "conflicts.h" #include "conflicts.h"
#include "files.h" #include "files.h"
@@ -776,11 +777,11 @@ add_param (param_type type, char *decl, location loc)
/* Strip the surrounding '{' and '}', and any blanks just inside /* Strip the surrounding '{' and '}', and any blanks just inside
the braces. */ the braces. */
--p; --p;
while (isspace ((unsigned char) *p)) while (c_isspace ((unsigned char) *p))
--p; --p;
p[1] = '\0'; p[1] = '\0';
++decl; ++decl;
while (isspace ((unsigned char) *decl)) while (c_isspace ((unsigned char) *decl))
++decl; ++decl;
} }

View File

@@ -36,7 +36,7 @@
#include <src/reader.h> #include <src/reader.h>
#include <src/uniqstr.h> #include <src/uniqstr.h>
#include <ctype.h> #include <c-ctype.h>
#include <mbswidth.h> #include <mbswidth.h>
#include <quote.h> #include <quote.h>
@@ -637,7 +637,7 @@ splice (\\[ \f\t\v]*\n)*
\\(.|\n) { \\(.|\n) {
char const *p = yytext + 1; char const *p = yytext + 1;
/* Quote only if escaping won't make the character visible. */ /* Quote only if escaping won't make the character visible. */
if (isspace ((unsigned char) *p) && isprint ((unsigned char) *p)) if (c_isspace ((unsigned char) *p) && c_isprint ((unsigned char) *p))
p = quote (p); p = quote (p);
else else
p = quotearg_style_mem (escape_quoting_style, p, 1); p = quotearg_style_mem (escape_quoting_style, p, 1);

View File

@@ -52,10 +52,6 @@
#define STRPREFIX_LIT(Literal, S) \ #define STRPREFIX_LIT(Literal, S) \
(STRNCMP_LIT (S, Literal) == 0) (STRNCMP_LIT (S, Literal) == 0)
#if HAVE_SYS_TYPES_H
# include <sys/types.h>
#endif
#include <unistd.h> #include <unistd.h>
#include <inttypes.h> #include <inttypes.h>
@@ -118,7 +114,6 @@ typedef size_t uintptr_t;
# define ATTRIBUTE_UNUSED __attribute__ ((__unused__)) # define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
#endif #endif
#define FUNCTION_PRINT() fprintf (stderr, "%s: ", __func__)
/*------. /*------.
| NLS. | | NLS. |

View File

@@ -412,38 +412,44 @@ yylex (void)
return EOF; return EOF;
} }
/* Return argv[1] as an int. */
static int
get_args (int argc, const char **argv)
{
int res;
char *endp;
assert (argc == 2);
res = strtol (argv[1], &endp, 10);
assert (argv[1] != endp);
assert (0 <= res);
assert (res <= INT_MAX);
assert (errno != ERANGE);
return res;
}
int int
main (int argc, const char **argv) main (int argc, const char **argv)
{ {
char *endp; YYSTYPE yylval_init = get_args (argc, argv);
YYSTYPE yylval_init; int status;
assert (argc == 2); int count;
yylval_init = strtol (argv[1], &endp, 10); ]m4_bmatch([$2], [api.push-pull both],
assert (argv[1] != endp); [[ yypstate *ps = yypstate_new ();
assert (0 <= yylval_init); ]])[ yydebug = 1;
assert (yylval_init <= INT_MAX); for (count = 0; count < 2; ++count)
assert (errno != ERANGE); {
yydebug = 1; int new_status;
{ yylval = yylval_init;
int count; new_status = ]m4_bmatch([$2], [api.push-pull both],
int status; [[yypull_parse (ps)]],
]m4_bmatch([$2], [%push-], [[yyparse ()]])[;
[[ yypstate *ps = yypstate_new (); if (count == 0)
]])[ for (count = 0; count < 2; ++count)
{
int new_status;
yylval = yylval_init;
]m4_bmatch([$2], [%push-],
[[ new_status = yypull_parse (ps);
]],
[[ new_status = yyparse ();
]])[ assert (0 <= count || new_status == status);
status = new_status; status = new_status;
} else
]m4_bmatch([$2], [%push-], assert (new_status == status);
[[ yypstate_delete (ps); }]m4_bmatch([$2], [api.push-pull both],[[
]])[ return status; yypstate_delete (ps);]])[
} return status;
} }
]]) ]])
AT_BISON_OPTION_POPDEFS([$2]) AT_BISON_OPTION_POPDEFS([$2])