Hi all, I'd to ask about the -std option and it's specific meaning. The bug referred (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10152) points that "This is not a bug. GCC implements the resolution of DR 45" However, currently in http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#45 it can be seen that 45. Access to nested classes Section: 11.8 [class.access.nest] Status: CD1 Submitter: Daveed Vandevoorde Date: 29 Sep 1998 so the status is "commitee draft". As stated at the beginning of that webpage: "ONLY RESOLUTIONS FOR ISSUES WITH TC1 STATUS ARE PART OF THE INTERNATIONAL STANDARD FOR C++" It seems that up to now DR 45 isn't part of the standard. In http://gcc.gnu.org/onlinedocs/gcc-4.3.2/gcc/Standards.html#Standards it's said that "The original ISO C++ standard was published as the ISO standard (ISO/IEC 14882:1998) and amended by a Technical Corrigenda published in 2003 (ISO/IEC 14882:2003). These standards are referred to as C++98 and C++03, respectively. GCC implements the majority of C++98 (export is a notable exception) and most of the changes in C++03. To select this standard in GCC, use one of the options -ansi or -std=c++98; to obtain all the diagnostics required by the standard, you should also specify -pedantic (or -pedantic-errors if you want them to be errors rather than warnings)" Given that DR45 is not included in a Technical Corrigenda, isn't it premature for GNU/g++ to implement its solution (at least when given the option -std=c++98)? Thanks a lot for your help and clarification of this issue. -- Rodolfo Federico Gamarra