This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r263429 - in /trunk: gcc/ChangeLog gcc/c-family...
- From: nathan at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 08 Aug 2018 18:13:00 -0000
- Subject: r263429 - in /trunk: gcc/ChangeLog gcc/c-family...
Author: nathan
Date: Wed Aug 8 18:13:00 2018
New Revision: 263429
URL: https://gcc.gnu.org/viewcvs?rev=263429&root=gcc&view=rev
Log:
[PATCH] line-map include-from representation
https://gcc.gnu.org/ml/gcc-patches/2018-08/msg00554.html
Make linemap::included_from a location
libcpp/
* include/line-map.h (struct line_map_ordinary): Replace
included_from map index with included_at source_location.
(ORDINARY_MAP_INCLUDER_FILE_INDEX): Delete.
(LAST_SOURCE_LINE_LOCATION): Delete.
(LAST_SOURCE_LINE, LAST_SOURCE_COLUMN): Delete.
(linemap_included_from): New.
(linemap_included_from_linemap): Declare.
(MAIN_FILE_P): Adjust.
* line-map.c (linemap_included_from_linemap): New.
(lonemap_check_files_exited): Use linemap_included_at.
(linemap_add): Adjust inclusion setting.
(linemap_dump, linemap_dump_location): Adjust.
* directives.c (do_linemarker): Use linemap_included_at.
gcc/
* diagnostic.c (diagnostic_report_current_module): Use
linemap_included_from & linemap_included_from_linemap.
gcc/c-family/
* c-common.c (try_to_locate_new_include_inertion_point): Use
linemap_included_from_linemap.
* c-lex.c (fe_file_change): Use linemap_included_from.
* c-ppoutput.c (pp_file_change): Likewise.
gcc/fortran/
* cpp.c (cb_file_change): Use linemap_included_from.
gcc/testsuite/
* c-c++-common/inc-from-1a.h, c-c++-common/inc-from-1b.h,
c-c++-common/inc-from-1.c: New
Added:
trunk/gcc/testsuite/c-c++-common/inc-from-1.c
trunk/gcc/testsuite/c-c++-common/inc-from-1a.h
trunk/gcc/testsuite/c-c++-common/inc-from-1b.h
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-family/ChangeLog
trunk/gcc/c-family/c-common.c
trunk/gcc/c-family/c-lex.c
trunk/gcc/c-family/c-ppoutput.c
trunk/gcc/diagnostic.c
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/cpp.c
trunk/gcc/testsuite/ChangeLog
trunk/libcpp/ChangeLog
trunk/libcpp/directives.c
trunk/libcpp/include/line-map.h
trunk/libcpp/line-map.c