http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51213
--- Comment #6 from Jason Merrill <jason at gcc dot gnu.org> 2012-07-19 01:36:55 UTC --- Author: jason Date: Thu Jul 19 01:36:50 2012 New Revision: 189639 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=189639 Log: DR 1170 PR c++/51213 * semantics.c (perform_access_checks): Add complain parm, return bool. (perform_deferred_access_checks): Likewise. (perform_or_defer_access_check): Likewise. (speculative_access_check): Remove. * call.c (enforce_access): Add complain parm, return bool. * decl.c, friend.c, class.c, init.c, parser.c: Adjust callers. * search.c: Adjust callers. * cp-tree.h (TINFO_RECHECK_ACCESS_P): New macro. (FNDECL_RECHECK_ACCESS_P): New macro. * method.c (synthesized_method_walk): Stop deferring access checks. * pt.c (recheck_decl_substitution): New. (instantiate_template_1): Set and check FNDECL_RECHECK_ACCESS_P. Added: trunk/gcc/testsuite/g++.dg/cpp0x/sfinae37.C trunk/gcc/testsuite/g++.dg/template/access23.C trunk/libstdc++-v3/testsuite/20_util/pair/noncopyable.cc Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/call.c trunk/gcc/cp/class.c trunk/gcc/cp/cp-tree.h trunk/gcc/cp/decl.c trunk/gcc/cp/friend.c trunk/gcc/cp/init.c trunk/gcc/cp/method.c trunk/gcc/cp/parser.c trunk/gcc/cp/pt.c trunk/gcc/cp/search.c trunk/gcc/cp/semantics.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/template/access7.C trunk/gcc/testsuite/g++.dg/template/sfinae10.C trunk/gcc/testsuite/g++.dg/template/sfinae6_neg.C trunk/libstdc++-v3/ChangeLog