This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
gcc 2.95.x interesting c++ parser error (bug).
- From: Karel Gardas <kgardas at objectsecurity dot com>
- To: gcc at gcc dot gnu dot org
- Date: Sat, 20 Apr 2002 16:53:10 +0200 (CEST)
- Subject: gcc 2.95.x interesting c++ parser error (bug).
- Reply-to: kgardas at objectsecurity dot com
Hi,
It looks like that c++ parser in gcc 2.95.x doesn't like some param names
like '__op' and '__rs'. These names confuse parser and then it produce
error messages regarding ''declaration of operator '<something>' as
non-function''
Here is small example:
class Foo
{
public:
void
method(char* __op_name); // OK
// gcc2.95-wrong-param-name-bug.cc:9: declaration of `operator ' as non-function
// gcc2.95-wrong-param-name-bug.cc:9: confused by earlier errors, bailing out
void
method2(int __op); // error
void
method3(long __reply_status); // OK
// gcc2.95-wrong-param-name-bug.cc:17: declaration of `operator >>' as non-function
// gcc2.95-wrong-param-name-bug.cc:17: confused by earlier errors, bailing out
void
method4(short __rs); // error
};
int
main()
{
return 0;
}
I know that the main focus of development is concentrated on upcoming gcc
3.1 release, but I think that someone might be interested (for example
Debian or FreeBSD 4.x gcc maintainers) and so I've posted this email,
because it takes me some time to find exact place in my sources which
cause this bug (these sources are of course perfectly OK with gcc 3.1).
Cheers,
Karel
PS: Tested on Debian GNU/Linux 3.0 and FreeBSD 4.5.
bash-2.05$ gcc -v
Using builtin specs.
gcc version 2.95.3 20010315 (release) [FreeBSD]
bash-2.05$
thinkpad:~/cvs/mt-micosec-csiv2/mico$ gcc -v
Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs
gcc version 2.95.4 20011002 (Debian prerelease)
thinkpad:~/cvs/mt-micosec-csiv2/mico$
--
Karel Gardas kgardas@objectsecurity.com
ObjectSecurity Ltd. http://www.objectsecurity.com