This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
G++ allows acces to private definition in nested classes
- To: gcc-bugs at gcc dot gnu dot org
- Subject: G++ allows acces to private definition in nested classes
- From: Eric Chamberland <Eric dot Chamberland at giref dot ulaval dot ca>
- Date: Thu, 12 Aug 1999 10:27:18 -0400
- Organization: GIREF (http://www.giref.ulaval.ca)
Hi,
Regarding C++ primer p. 673-674, a nested class is not allowed to acces
private member of the class in which it is defined.
So, the foloowing should not compile:
class Foo
{
private:
typedef int Integer;
class NestedFoo
{
Integer aMyInt;
};
};
Eric
---------------------
/opt/EGCS1990808/bin/g++ -v --save-temps -c privateClasse.cc
Reading specs from
/opt/EGCS1990808/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/specs
gcc version 2.95.1 19990809 (prerelease)
/opt/EGCS1990808/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/cpp -lang-c++
-v -D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=95 -D__cplusplus -Dsparc
-Dsun -Dunix -D__svr4__ -D__SVR4 -D__sparc__ -D__sun__ -D__unix__
-D__svr4__ -D__SVR4 -D__sparc -D__sun -D__unix -Asystem(unix)
-Asystem(svr4) -D__EXCEPTIONS -D__GCC_NEW_VARARGS__ -Acpu(sparc)
-Amachine(sparc) privateClasse.cc privateClasse.ii
GNU CPP version 2.95.1 19990809 (prerelease) (sparc)
#include "..." search starts here:
#include <...> search starts here:
/opt/EGCS1990808/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/../../../../include/g++-3
/opt/EGCS1990808/include
/opt/EGCS1990808/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/../../../../sparc-sun-solaris2.6/include
/opt/EGCS1990808/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/include
/usr/include
End of search list.
The following default directories have been omitted from the search
path:
End of omitted list.
/opt/EGCS1990808/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/cc1plus
privateClasse.ii -quiet -dumpbase privateClasse.cc -version -o
privateClasse.s
GNU C++ version 2.95.1 19990809 (prerelease) (sparc-sun-solaris2.6)
compiled by GNU C version 2.8.1.
/usr/ccs/bin/as -V -Qy -s -o privateClasse.o privateClasse.s
/usr/ccs/bin/as: WorkShop Compilers 4.X dev 18 Sep 1996