aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-lex.c
diff options
context:
space:
mode:
authorZack Weinberg <zack@gcc.gnu.org>2004-10-27 17:24:20 +0000
committerZack Weinberg <zack@gcc.gnu.org>2004-10-27 17:24:20 +0000
commitb6ff777cfc7d3cca61aa2743c679d60b3251784d (patch)
tree4df0d15e48652636b5cf98875425ded7235c22c5 /gcc/c-lex.c
parent12525dd62628146ed6d2ec104058d5ea2b56db65 (diff)
downloadgcc-b6ff777cfc7d3cca61aa2743c679d60b3251784d.zip
gcc-b6ff777cfc7d3cca61aa2743c679d60b3251784d.tar.gz
gcc-b6ff777cfc7d3cca61aa2743c679d60b3251784d.tar.bz2
c-lex.c (cb_def_pragma): Clean up code for making location palatable to diagnostic.c.
* c-lex.c (cb_def_pragma): Clean up code for making location palatable to diagnostic.c. From-SVN: r89691
Diffstat (limited to 'gcc/c-lex.c')
-rw-r--r--gcc/c-lex.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/gcc/c-lex.c b/gcc/c-lex.c
index 415785d..f5425ce 100644
--- a/gcc/c-lex.c
+++ b/gcc/c-lex.c
@@ -283,11 +283,16 @@ cb_def_pragma (cpp_reader *pfile, source_location loc)
-Wunknown-pragmas has been given. */
if (warn_unknown_pragmas > in_system_header)
{
+ const unsigned char *space, *name;
+ const cpp_token *s;
#ifndef USE_MAPPED_LOCATION
+ location_t fe_loc;
const struct line_map *map = linemap_lookup (&line_table, loc);
+ fe_loc.file = map->to_file;
+ fe_loc.line = SOURCE_LINE (map, loc);
+#else
+ location_t fe_loc = loc;
#endif
- const unsigned char *space, *name;
- const cpp_token *s;
space = name = (const unsigned char *) "";
s = cpp_get_token (pfile);
@@ -299,12 +304,7 @@ cb_def_pragma (cpp_reader *pfile, source_location loc)
name = cpp_token_as_text (pfile, s);
}
-#ifdef USE_MAPPED_LOCATION
- input_location = loc;
-#else
- input_line = SOURCE_LINE (map, loc);
-#endif
- warning ("ignoring #pragma %s %s", space, name);
+ warning ("%Hignoring #pragma %s %s", &fe_loc, space, name);
}
}