* tests/cxx-type.at (_AT_TEST_GLR_CXXTYPES): Define YYSTACKEXPANDABLE.
* tests/glr-regression.at
(Improper handling of embedded actions and dollar(-N) in GLR parsers):
- YYSTYPE is char *, not char const *, so that strcpy ($$, ...) works.
+ Add casts to pacify C++ compilers.
* tests/glr-regression.at (Improper merging of GLR delayed action
sets): Declare yylex before using it.
* tests/Makefile.am (maintainer-check-g++): Fix a stray
/* Reported by S. Eken */
%{
- #define YYSTYPE char *
+ #define YYSTYPE char const *
#define yyfalse 0
#define yytrue 1
{ $$ = $1; }
| var ',' var_list
{
- $$ = malloc (strlen ($1) + 1 + strlen ($3) + 1);
- strcpy ($$, $1);
- strcat ($$, ",");
- strcat ($$, $3);
+ char *s = (char *) malloc (strlen ($1) + 1 + strlen ($3) + 1);
+ strcpy (s, $1);
+ strcat (s, ",");
+ strcat (s, $3);
+ $$ = s;
}
;
yylex (void)
{
char buf[50];
+ char *s;
switch (fscanf (yyin, " %1[a-z,]", buf)) {
case 1:
return buf[0];
abort ();
if (sizeof buf - 1 <= strlen (buf))
abort ();
- yylval = malloc (strlen (buf) + 1);
- strcpy (yylval, buf);
+ s = (char *) malloc (strlen (buf) + 1);
+ strcpy (s, buf);
+ yylval = s;
return 'V';
}