This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/18451] New: [3.4 Regression] C++ error message regression
- From: "sschunck at pdf dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 12 Nov 2004 14:05:18 -0000
- Subject: [Bug c++/18451] New: [3.4 Regression] C++ error message regression
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
The following erroneous code gives an error message I do not understand
file.cc:
1 template < class T >
2 class A
3 {
4 public:
5 class B
6 {
7 public:
8 B( int inVal ) : m_i( inVal ) { }
9 int m_i;
10 };
11 static B s;
12 };
13
14 template < class T > A<T>::B A<T>::s( 10 );
gives the following error message witch g++-3.4.3 -Wall -c file.cc
14: error: expected constructor, destructor, or type conversion before "A"
14: error: expected `;' before "A"
I have difficulties in understancing the message
with g++-3.3.2 -Wall -c file.cc
14: warning: `A<T>::B' is implicitly a typename
14: warning: implicit typename is deprecated, please see the documentation for
details
This message seems much clearer to me
--
Summary: [3.4 Regression] C++ error message regression
Product: gcc
Version: 3.4.3
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sschunck at pdf dot de
CC: gcc-bugs at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18451