This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gcc 2.95.x interesting c++ parser error (bug).



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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]