This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/30734] name conflict between class and namespace name is not recognized
- From: "gdr at cs dot tamu dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 8 Feb 2007 10:16:24 -0000
- Subject: [Bug c++/30734] name conflict between class and namespace name is not recognized
- References: <bug-30734-8377@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #1 from gdr at cs dot tamu dot edu 2007-02-08 10:16 -------
Subject: Re: New: name conflict between class and namespace name is not
recognized
"ulrich dot lauther at siemens dot com" <gcc-bugzilla@gcc.gnu.org> writes:
| 1 namespace Foo {
| 2 };
| 3
| 4 class Foo {
| 5 };
| 6
| 7 int main() {
| 8 class Foo1 : public Foo {
| 9 };
| 10 Foo1 my_Foo1;
| 11 Foo my_foo;
| 12 return 0;
| 13 }
| 14
| 15
| Foo.C: In function 'int main()':
| Foo.C:11: error: expected primary-expression before 'my_foo'
| Foo.C:11: error: expected `;' before 'my_foo'
|
| on line 8 and 10, "Foo" is understod asa class name, on line 11 as a
namespace
| Without line 11, no error message at all
Line 4 is invalid; the front-end should have issued a diagnostic there.
-- Gaby
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30734