non-NULL. */
enum cpp_ttype
-c_lex_with_flags (tree *value, unsigned char *cpp_flags)
+c_lex_with_flags (tree *value, location_t *loc, unsigned char *cpp_flags)
{
static bool no_more_pch;
const cpp_token *tok;
type = tok->type;
retry_after_at:
+#ifdef USE_MAPPED_LOCATION
+ *loc = tok->src_loc;
+#else
+ *loc = input_location;
+#endif
switch (type)
{
case CPP_PADDING:
{
unsigned char name[4];
- *cpp_spell_token (parse_in, tok, name) = 0;
+ *cpp_spell_token (parse_in, tok, name, true) = 0;
error ("stray %qs in program", name);
}
enum cpp_ttype
c_lex (tree *value)
{
- return c_lex_with_flags (value, NULL);
+ location_t loc;
+ return c_lex_with_flags (value, &loc, NULL);
}
/* Returns the narrowest C-visible unsigned type, starting with the