Bug 3663 - G++ doesn't check access control during template instanation
Bug#: 3663 Product:  gcc Version: 3.0
Host:  Target:  Build: 
Status: RESOLVED Severity: normal Priority: P3
Resolution: FIXED Assigned To: lerdsuwa@gcc.gnu.org Reported By: mark@codesourcery.com
Component: c++ Target Milestone: ---
Summary: G++ doesn't check access control during template instanation
Keywords:  accepts-invalid
Opened: 2001-07-12 10:36
Description:   Last confirmed: Opened: 2001-07-12 10:36
The attached program sould generate an error during
template instantiation since the `S<int>::T' is not
accessible.

Release:
3.0

------- Comment #1 From Nathan Sidwell 2001-12-15 10:10 -------
State-Changed-From-To: open->analyzed
State-Changed-Why: yup, doesn't do that either

------- Comment #2 From Kriang Lerdsuwanakij 2002-11-08 02:05 -------
Responsible-Changed-From-To: unassigned->lerdsuwa
Responsible-Changed-Why: Will look at it.

------- Comment #3 From Kriang Lerdsuwanakij 2002-12-16 23:26 -------
From: Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
To: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org, lerdsuwa@gcc.gnu.org,
        gcc-bugs@gcc.gnu.org, mark@codesourcery.com
Cc:  
Subject: Re: c++/3663: G++ doesn't check access control during template instanation
Date: Mon, 16 Dec 2002 23:26:16 +0700

 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3663
 
 I have submit a patch that fixes this.  It is waiting for approval:
 
    http://gcc.gnu.org/ml/gcc-patches/2002-11/msg00958.html
 
 --Kriang
 


------- Comment #4 From Kriang Lerdsuwanakij 2002-12-19 07:26 -------
State-Changed-From-To: analyzed->closed
State-Changed-Why: Fixed in 3.3 and trunk.

------- Comment #5 From Kriang Lerdsuwanakij 2002-12-19 14:45 -------
From: lerdsuwa@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org
Cc:  
Subject: c++/3663
Date: 19 Dec 2002 14:45:19 -0000

 CVSROOT:	/cvs/gcc
 Module name:	gcc
 Changes by:	lerdsuwa@gcc.gnu.org	2002-12-19 06:45:19
 
 Modified files:
 	gcc/cp         : ChangeLog pt.c 
 	gcc/testsuite  : ChangeLog 
 Added files:
 	gcc/testsuite/g++.dg/template: access7.C 
 
 Log message:
 	PR c++/3663
 	* pt.c (lookup_template_class): Copy TREE_PRIVATE and
 	TREE_PROTECTED to created decl nodes.
 	
 	* g++.dg/template/access7.C: New test.
 
 Patches:
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.3082&r2=1.3083
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&r1=1.636&r2=1.637
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.2265&r2=1.2266
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/access7.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
 

------- Comment #6 From Kriang Lerdsuwanakij 2002-12-19 15:30 -------
From: lerdsuwa@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org
Cc:  
Subject: c++/3663
Date: 19 Dec 2002 15:30:15 -0000

 CVSROOT:	/cvs/gcc
 Module name:	gcc
 Branch: 	gcc-3_3-branch
 Changes by:	lerdsuwa@gcc.gnu.org	2002-12-19 07:30:15
 
 Modified files:
 	gcc/cp         : ChangeLog pt.c 
 	gcc/testsuite  : ChangeLog 
 Added files:
 	gcc/testsuite/g++.dg/template: access7.C 
 
 Log message:
 	PR c++/3663
 	* pt.c (lookup_template_class): Copy TREE_PRIVATE and
 	TREE_PROTECTED to created decl nodes.
 	
 	* g++.dg/template/access7.C: New test.
 
 Patches:
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.3076.2.3&r2=1.3076.2.4
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.635.2.1&r2=1.635.2.2
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.2261.2.1&r2=1.2261.2.2
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/access7.C.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=NONE&r2=1.1.2.1