Fix PR c++/40007 gcc/cp/ChangeLog: PR c++/40007 * cp-tree.h (MEMBER_TYPES_NEEDING_ACCESS_CHECK): Remove this accessor. (TI_TYPEDEFS_NEEDING_ACCESS_CHECKING): New accessor. (get_types_needing_access_check): Declare new entry point. * pt.c (append_type_to_template_for_access_check_1, get_types_needing_access_check): New functions. (perform_typedefs_access_check): Accept FUNCTION_DECLs and RECORD_TYPEs rather than TEMPLATE_DECLs. Use the new get_types_needing_access_check, no more MEMBER_TYPES_NEEDING_ACCESS_CHECK. (instantiate_class_template): Set input_location to the source location of the most specialized template definition. Perform access check using the RECORD_TYPE of the template, not its associated most generic TEMPLATE_DECL. (append_type_to_template_for_access_check): Augment function comments. Use the new get_types_needing_access_check, not MEMBER_TYPE_NEEDING_ACCESS_CHECK. Use the new append_type_to_template_for_access_check_1 subroutine. gcc/testsuite/ChangeLog: PR c++/40007 * g++.dg/template/typedef18.C: New test. * g++.dg/template/typedef19.C: Likewise. * g++.dg/template/typedef20.C: Likewise. * g++.dg/template/access11.C: Adjust. From-SVN: r147866
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
ChangeLog | Loading commit data... | |
ChangeLog-1993 | Loading commit data... | |
ChangeLog-1994 | Loading commit data... | |
ChangeLog-1995 | Loading commit data... | |
ChangeLog-1996 | Loading commit data... | |
ChangeLog-1997 | Loading commit data... | |
ChangeLog-1998 | Loading commit data... | |
ChangeLog-1999 | Loading commit data... | |
ChangeLog-2000 | Loading commit data... | |
ChangeLog-2001 | Loading commit data... | |
ChangeLog-2002 | Loading commit data... | |
ChangeLog-2003 | Loading commit data... | |
ChangeLog-2004 | Loading commit data... | |
ChangeLog-2005 | Loading commit data... | |
ChangeLog-2006 | Loading commit data... | |
ChangeLog-2007 | Loading commit data... | |
ChangeLog-2008 | Loading commit data... | |
ChangeLog.ptr | Loading commit data... | |
ChangeLog.tree-ssa | Loading commit data... | |
Make-lang.in | Loading commit data... | |
NEWS | Loading commit data... | |
call.c | Loading commit data... | |
cfns.gperf | Loading commit data... | |
cfns.h | Loading commit data... | |
class.c | Loading commit data... | |
config-lang.in | Loading commit data... | |
cp-gimplify.c | Loading commit data... | |
cp-lang.c | Loading commit data... | |
cp-objcp-common.c | Loading commit data... | |
cp-objcp-common.h | Loading commit data... | |
cp-tree.def | Loading commit data... | |
cp-tree.h | Loading commit data... | |
cvt.c | Loading commit data... | |
cxx-pretty-print.c | Loading commit data... | |
cxx-pretty-print.h | Loading commit data... | |
decl.c | Loading commit data... | |
decl.h | Loading commit data... | |
decl2.c | Loading commit data... | |
dump.c | Loading commit data... | |
error.c | Loading commit data... | |
except.c | Loading commit data... | |
expr.c | Loading commit data... | |
friend.c | Loading commit data... | |
g++spec.c | Loading commit data... | |
init.c | Loading commit data... | |
lang-specs.h | Loading commit data... | |
lex.c | Loading commit data... | |
mangle.c | Loading commit data... | |
method.c | Loading commit data... | |
name-lookup.c | Loading commit data... | |
name-lookup.h | Loading commit data... | |
operators.def | Loading commit data... | |
optimize.c | Loading commit data... | |
parser.c | Loading commit data... | |
pt.c | Loading commit data... | |
ptree.c | Loading commit data... | |
repo.c | Loading commit data... | |
rtti.c | Loading commit data... | |
search.c | Loading commit data... | |
semantics.c | Loading commit data... | |
tree.c | Loading commit data... | |
typeck.c | Loading commit data... | |
typeck2.c | Loading commit data... |