+2008-11-07 Akim Demaille <demaille@gostai.com>
+
+ Pass command line location to skeleton_arg and language_argmatch.
+ * src/getargs.h, src/getargs.c (skeleton_arg, language_argmatch):
+ The location argument is now mandatory.
+ Adjust all dependencies.
+ (getargs): Use command_line_location.
+
2008-11-07 Akim Demaille <demaille@gostai.com>
-D, --define.
`--------------------------------------*/
void
-skeleton_arg (char const *arg, int prio, location const *loc)
+skeleton_arg (char const *arg, int prio, location loc)
{
if (prio < skeleton_prio)
{
{
char const *msg =
_("multiple skeleton declarations are invalid");
- if (loc)
- complain_at (*loc, msg);
- else
- complain (msg);
+ complain_at (loc, msg);
}
}
void
-language_argmatch (char const *arg, int prio, location const *loc)
+language_argmatch (char const *arg, int prio, location loc)
{
char const *msg;
else
return;
- if (loc)
- complain_at (*loc, msg, arg);
- else
- complain (msg, arg);
+ complain_at (loc, msg, arg);
}
/*----------------------.
break;
case 'L':
- language_argmatch (optarg, 0, NULL);
+ language_argmatch (optarg, 0, command_line_location ());
break;
case 'S':
- skeleton_arg (AS_FILE_NAME (optarg), 0, NULL);
+ skeleton_arg (AS_FILE_NAME (optarg), 0, command_line_location ());
break;
case 'T':
/* Parse command line arguments for bison.
Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006, 2007 Free Software Foundation, Inc.
+ 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This file is part of Bison, the GNU Compiler Compiler.
void getargs (int argc, char *argv[]);
/* Used by parse-gram.y. */
-void language_argmatch (char const *arg, int prio, location const *loc);
-void skeleton_arg (const char *arg, int prio, location const *loc);
+void language_argmatch (char const *arg, int prio, location loc);
+void skeleton_arg (const char *arg, int prio, location loc);
#endif /* !GETARGS_H_ */
/* Line 1457 of yacc.c */
#line 257 "parse-gram.y"
- { language_argmatch ((yyvsp[(2) - (2)].chars), 1, &(yylsp[(1) - (2)])); }
+ { language_argmatch ((yyvsp[(2) - (2)].chars), 1, (yylsp[(1) - (2)])); }
/* Line 1457 of yacc.c */
#line 2036 "../../../src/parse-gram.c"
skeleton_user = uniqstr_new (skeleton_build);
free (skeleton_build);
}
- skeleton_arg (skeleton_user, 1, &(yylsp[(1) - (2)]));
+ skeleton_arg (skeleton_user, 1, (yylsp[(1) - (2)]));
}
/* Line 1457 of yacc.c */
muscle_code_grow ("initial_action", action.code, @2);
code_scanner_last_string_free ();
}
-| "%language" STRING { language_argmatch ($2, 1, &@1); }
+| "%language" STRING { language_argmatch ($2, 1, @1); }
| "%lex-param" "{...}" { add_param ("lex_param", $2, @2); }
| "%locations" { locations_flag = true; }
| "%name-prefix" STRING { spec_name_prefix = $2; }
skeleton_user = uniqstr_new (skeleton_build);
free (skeleton_build);
}
- skeleton_arg (skeleton_user, 1, &@1);
+ skeleton_arg (skeleton_user, 1, @1);
}
| "%token-table" { token_table_flag = true; }
| "%verbose" { report_flag |= report_states; }