r254399 - in /branches/c++-modules: ChangeLog.m...

nathan@gcc.gnu.org nathan@gcc.gnu.org
Fri Nov 3 20:59:00 GMT 2017


Author: nathan
Date: Fri Nov  3 20:59:40 2017
New Revision: 254399

URL: https://gcc.gnu.org/viewcvs?rev=254399&root=gcc&view=rev
Log:
	Virtual bases!
	gcc/cp/
	* Make-lang.in: module.o depends on revision
	* class.c (layout_class_type): Unnamed types do not get base
	types.
	* cxx-module-wrapper.sh: Invoke make.  Strip bad args.
	* module.c (module_context): Allow NULL context.
	(cpms_{in,out}::define_class): Deal with classtype_as_base.
	(cpms_{in,out}::tag_definition): Allow raw class.
	(cpms_{in,out}:ident_imported_decl: Rework class scope.
	(cpms_out::tree_node): Deal with NULL module context.
	* name-lookup.c (maybe_lazily_declare): Break out of ...
	(get_class_binding): ... here.  Call it.
	(get_ident_in_class, find_by_ident_in_class): New.
	* name-lookup.h	(get_ident_in_class, find_by_ident_in_class): Declare.
	gcc/testsuite/
	* g++.dg/modules/class-7_[abc].C: New.
	* g++.dg/modules/main.cc: Move to ...
	* g++.dg/modules/main_a.C: ... here. Adjust.
	* g++.dg/modules/modules.exp: Remove main.cc exceptionalism.

Added:
    branches/c++-modules/gcc/testsuite/g++.dg/modules/class-7_a.C
    branches/c++-modules/gcc/testsuite/g++.dg/modules/class-7_b.C
    branches/c++-modules/gcc/testsuite/g++.dg/modules/class-7_c.C
    branches/c++-modules/gcc/testsuite/g++.dg/modules/main_a.C
Removed:
    branches/c++-modules/gcc/testsuite/g++.dg/modules/main.cc
Modified:
    branches/c++-modules/ChangeLog.modules
    branches/c++-modules/gcc/cp/Make-lang.in
    branches/c++-modules/gcc/cp/class.c
    branches/c++-modules/gcc/cp/cxx-module-wrapper.sh
    branches/c++-modules/gcc/cp/module.c
    branches/c++-modules/gcc/cp/name-lookup.c
    branches/c++-modules/gcc/cp/name-lookup.h
    branches/c++-modules/gcc/testsuite/g++.dg/modules/modules.exp



More information about the Gcc-cvs mailing list