This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r237715 - in /trunk: gcc/testsuite/ChangeLog gc...
- From: dmalcolm at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 22 Jun 2016 15:29:21 -0000
- Subject: r237715 - in /trunk: gcc/testsuite/ChangeLog gc...
Author: dmalcolm
Date: Wed Jun 22 15:29:21 2016
New Revision: 237715
URL: https://gcc.gnu.org/viewcvs?rev=237715&root=gcc&view=rev
Log:
libcpp: Tweak to missing #include source location
This patch tweaks the error message location for missing header files.
Previously these read:
test.c:1:17: fatal error: 404.h: No such file or directory
#include "404.h"
^
compilation terminated.
With this patch, the pertinent string is underlined:
test.c:1:10: fatal error: 404.h: No such file or directory
#include "404.h"
^~~~~~~
compilation terminated.
gcc/testsuite/ChangeLog:
* c-c++-common/missing-header-1.c: New test case.
* c-c++-common/missing-header-2.c: New test case.
* c-c++-common/missing-header-3.c: New test case.
* c-c++-common/missing-header-4.c: New test case.
libcpp/ChangeLog:
* directives.c (do_include_common): Pass on "location" to
_cpp_stack_include.
* errors.c (cpp_diagnostic): Reimplement in terms of...
(cpp_diagnostic_at): New function.
(cpp_error_at): New function.
(cpp_errno_filename): Add "loc" param and use it by using
cpp_error_at rather than cpp_error.
* files.c (find_file_in_dir): Add "loc" param and pass it to
open_file_failed.
(_cpp_find_file): Add "loc" param. Use it to convert calls to
cpp_error to cpp_error_at, and pass it to find_file_in_dir and
open_file_failed.
(read_file_guts): Add "loc" param. Use it to convert calls to
cpp_error to cpp_error_at. Pass it to cpp_errno_filename.
(read_file): Add "loc" param. Pass it to open_file_failed and
read_file_guts.
(should_stack_file): Add "loc" param. Pass it to read_file.
(_cpp_stack_file): Add "loc" param. Pass it to should_stack_file.
(_cpp_stack_include): Add "loc" param. Pass it to
_cpp_find_file and _cpp_stack_file.
(open_file_failed): Add "loc" param. Pass it to
cpp_errno_filename.
(_cpp_fake_include): Add 0 as a source_location in call to
_cpp_find_file.
(_cpp_compare_file_date): Likewise.
(cpp_push_include): Likewise for call to _cpp_stack_include.
(cpp_push_default_include): Likewise.
(_cpp_save_file_entries): Likewise for call to open_file_failed.
(_cpp_has_header): Likewise for call to _cpp_find_file.
* include/cpplib.h (cpp_errno_filename): Add source_location
param.
(cpp_error_at): New declaration.
* init.c (cpp_read_main_file): Add 0 as a source_location in calls
to _cpp_find_file and _cpp_stack_file.
* internal.h (_cpp_find_file): Add source_location param.
(_cpp_stack_file): Likewise.
(_cpp_stack_include): Likewise.
Added:
trunk/gcc/testsuite/c-c++-common/missing-header-1.c
trunk/gcc/testsuite/c-c++-common/missing-header-2.c
trunk/gcc/testsuite/c-c++-common/missing-header-3.c
trunk/gcc/testsuite/c-c++-common/missing-header-4.c
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libcpp/ChangeLog
trunk/libcpp/directives.c
trunk/libcpp/errors.c
trunk/libcpp/files.c
trunk/libcpp/include/cpplib.h
trunk/libcpp/init.c
trunk/libcpp/internal.h