gcc/libcpp
Dodji Seketeli c468587ac2 Support location tracking for built-in macro tokens
When a built-in macro is expanded, the location of the token in the
epansion list is the location of the expansion point of the built-in
macro.

This patch creates a virtual location for that token instead,
effectively tracking locations of tokens resulting from built-in macro
tokens.

libcpp/
	* include/line-map.h (line_maps::builtin_location): New data
	member.
	(line_map_init): Add a new parameter to initialize the new
	line_maps::builtin_location data member.
	* line-map.c (linemap_init): Initialize the
	line_maps::builtin_location data member.
	* macro.c (builtin_macro): Create a macro map and track the token
	resulting from the expansion of a built-in macro.
gcc/
	* input.h (is_location_from_builtin_token): New function
	declaration.
	* input.c (is_location_from_builtin_token): New function
	definition.
	* toplev.c (general_init): Tell libcpp what the pre-defined
	spelling location for built-in tokens is.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>

From-SVN: r212637
2014-07-16 12:33:27 +02:00
..
include Support location tracking for built-in macro tokens 2014-07-16 12:33:27 +02:00
po * de.po: Update. 2014-03-18 16:04:06 +00:00
ChangeLog Support location tracking for built-in macro tokens 2014-07-16 12:33:27 +02:00
Makefile.in Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
aclocal.m4 Undo inadvertent commit in rev 160105. 2010-06-01 10:20:24 -04:00
charset.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
config.in configure.ac: Remove long long and __int64 type checks... 2014-05-26 08:19:02 +00:00
configure configure.ac: Remove long long and __int64 type checks... 2014-05-26 08:19:02 +00:00
configure.ac configure.ac: Remove long long and __int64 type checks... 2014-05-26 08:19:02 +00:00
directives-only.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
directives.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
errors.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
expr.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
files.c re PR c/61212 (gcc build failure on "dos file system" due to warnings treated as errors) 2014-05-21 18:54:12 +00:00
identifiers.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
init.c files.c (find_file_in_dir): Always try to shorten for DOS non-system headers. 2014-05-09 08:50:22 +00:00
internal.h Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
lex.c re PR preprocessor/61389 (libcpp diagnostics shouldn't talk about ISO C99 for C++ input files) 2014-07-10 22:26:50 +00:00
line-map.c Support location tracking for built-in macro tokens 2014-07-16 12:33:27 +02:00
macro.c Support location tracking for built-in macro tokens 2014-07-16 12:33:27 +02:00
makeucnid.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
mkdeps.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
pch.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
symtab.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
system.h Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
traditional.c Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
ucnid.h Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00
ucnid.tab Update copyright years in libcpp/ 2014-01-02 22:24:45 +00:00