r260425 - in /branches/c++-modules: ChangeLog.m...
nathan@gcc.gnu.org
nathan@gcc.gnu.org
Sun May 20 18:52:00 GMT 2018
Author: nathan
Date: Sun May 20 18:52:41 2018
New Revision: 260425
URL: https://gcc.gnu.org/viewcvs?rev=260425&root=gcc&view=rev
Log:
Import peeking
gcc/c-family/
* c-lex.c (c_lex_with_flags) <case CPP_STRING>: Check
C_LEX_STRING_IS_HEADER.
* c-pragma.h (C_LEX_STRING_IS_HEADER): New flag.
gcc/cp/
* cp-tree.h (HEADER_STRING_LITERAL_P): Delete.
(maybe_peek_import): Declare.
* cxx-module-server.sh: Adjust.
* lex.c (atom_preamble_prefix_peek): Add peeking state.
* module.c (module_server::peek_import_query): New.
(make_flat_name): New. Broken out of ...
(module_state::do_import): ... here. Call it.
(maybe_peek_import): New.
* parser.c (cp_parser_peek_module_name): New.
(cp_parser_module_name): Use it.
(cp_parser_import_declaration): Adjust.
(cp_parser_module_preamble): Do peeking.
gcc/
* doc/invoke.texi (C++ Modules): Tweak server protocol
gcc/testsuite/
* g++.dg/modules/atom-peek-1_[abc].C: New.
* g++.dg/modules/mod-decl-1.C: Adjust diags.
* g++.dg/modules/p0713-2.C: Likewise.
* g++.dg/modules/proclaim-1.C: Likewise.
Added:
branches/c++-modules/gcc/testsuite/g++.dg/modules/atom-peek-1_a.C
branches/c++-modules/gcc/testsuite/g++.dg/modules/atom-peek-1_b.C
branches/c++-modules/gcc/testsuite/g++.dg/modules/atom-peek-1_c.C
Modified:
branches/c++-modules/ChangeLog.modules
branches/c++-modules/gcc/c-family/c-lex.c
branches/c++-modules/gcc/c-family/c-pragma.h
branches/c++-modules/gcc/cp/cp-tree.h
branches/c++-modules/gcc/cp/cxx-module-server.sh
branches/c++-modules/gcc/cp/lex.c
branches/c++-modules/gcc/cp/module.c
branches/c++-modules/gcc/cp/parser.c
branches/c++-modules/gcc/doc/invoke.texi
branches/c++-modules/gcc/testsuite/g++.dg/modules/mod-decl-1.C
branches/c++-modules/gcc/testsuite/g++.dg/modules/p0713-2.C
branches/c++-modules/gcc/testsuite/g++.dg/modules/proclaim-1.C
More information about the Gcc-cvs
mailing list