public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: c++/9619: Problem with member elements and inheritance
@ 2003-02-07 22:18 bangerth
  0 siblings, 0 replies; 2+ messages in thread
From: bangerth @ 2003-02-07 22:18 UTC (permalink / raw)
  To: gcc-bugs, gcc-prs, nobody, poschmid

Synopsis: Problem with member elements and inheritance

State-Changed-From-To: open->closed
State-Changed-By: bangerth
State-Changed-When: Fri Feb  7 22:17:59 2003
State-Changed-Why:
    Not a bug. Take a look at the documentation patch at the
    end of
      http://gcc.gnu.org/ml/gcc-patches/2003-02/msg00542.html

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9619


^ permalink raw reply	[flat|nested] 2+ messages in thread

* c++/9619: Problem with member elements and inheritance
@ 2003-02-07 21:56 poschmid
  0 siblings, 0 replies; 2+ messages in thread
From: poschmid @ 2003-02-07 21:56 UTC (permalink / raw)
  To: gcc-gnats


>Number:         9619
>Category:       c++
>Synopsis:       Problem with member elements and inheritance
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          rejects-legal
>Submitter-Id:   net
>Arrival-Date:   Fri Feb 07 21:56:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Peter Schmid
>Release:        3.4 20030204 (experimental)
>Organization:
LBNL
>Environment:
System: Linux linux 2.4.19-4GB #1 Wed Nov 27 00:56:40 UTC 2002 i686 unknown
Architecture: i686
host: i686-pc-linux-gnu
build: i686-pc-linux-gnu
target: i686-pc-linux-gnu
configured with: ../gcc/configure --enable-threads=posix --enable-languages=c,c++,f77,objc --enable-__cxa_atexit --disable-nls
>Description:
Current Gcc 3.4 snapshots reject the following source file t.C. Regardless
if the bases' member variable is declared as private or protected
it is not visible in the publicly derived class B. If the variable is
explicitly qualified by this->, the compiler does not barf. Previous gcc
compilers, e.g. 3.2 accept this code snipped.  

>How-To-Repeat:

template<typename T>
class A {
public:
    A();
    virtual ~A() {}
protected:
    int i;  
};

template<typename T>
A<T>::A() : i(0){}

template<typename T>
class B: public A<T> {
public:
    void f();
};

template<typename T>
void B<T>::f()
{
    i = 3;
    this ->i =2;
}



int main()
{
    B<int> b;
}

g++ -v t.C -W -Wall
Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.4/specs
Configured with: ../gcc/configure --enable-threads=posix --enable-languages=c,c++,f77,objc --enable-__cxa_atexit --disable-nls
Thread model: posix
gcc version 3.4 20030204 (experimental)
 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.4/cc1plus -quiet -v -D__GNUC__=3 -D__GNUC_MINOR__=4 -D__GNUC_PATCHLEVEL__=0 -D_GNU_SOURCE t.C -D__GNUG__=3 -quiet -dumpbase t.C -auxbase t -W -Wall -version -o /tmp/ccgBlMM6.s
GNU C++ version 3.4 20030204 (experimental) (i686-pc-linux-gnu)
	compiled by GNU C version 3.4 20030204 (experimental).
ignoring nonexistent directory "NONE/include"
ignoring nonexistent directory "/usr/local/i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include/c++/3.4
 /usr/local/include/c++/3.4/i686-pc-linux-gnu
 /usr/local/include/c++/3.4/backward
 /usr/local/include
 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.4/include
 /usr/include
End of search list.
t.C: In member function `void B<T>::f()':
t.C:22: error: `i' has not been declared


>Fix:
	
>Release-Note:
>Audit-Trail:
>Unformatted:


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-02-07 22:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-02-07 22:18 c++/9619: Problem with member elements and inheritance bangerth
  -- strict thread matches above, loose matches on Subject: below --
2003-02-07 21:56 poschmid

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).