c++/842: Internal compiler error for overloaded functions from different base classes

Joachim.Eibl@gmx.de Joachim.Eibl@gmx.de
Sun Nov 19 01:36:00 GMT 2000


>Number:         842
>Category:       c++
>Synopsis:       Internal compiler error for overloaded functions from different base classes
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-illegal-code
>Submitter-Id:   net
>Arrival-Date:   Sun Nov 19 01:36:00 PST 2000
>Closed-Date:
>Last-Modified:
>Originator:     Joachim Eibl
>Release:        gcc version 2.95.2 19991024 (release)
>Organization:
>Environment:
Linux (Suse 7.0)
>Description:
/* t.cpp
gcc version 2.95.2 19991024 (release) 
Compile with: g++ t.cpp
t.cpp: In method `C::C()':
t.cpp:34: Internal compiler error.
t.cpp:34: Please submit a full bug report.
Program code:
*/

class A 
{
public:
   bool  f( const A*, const char *,const A*, const char * );
   bool  f( const A*, const char *,const char * );

   bool  g( const A*, const char * ); // Needed for internal error though not used.
};


class B
{
public:
   bool f( A*, const char* );
};

class C : public A, public B
{
public:
   C();
};

C::C()
{
   f( this, "", this, "" );   // Internal compiler error.
}

int main()
{
   C c;
   return 0;
}
>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="t.cpp"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="t.cpp"

LyogdC5jcHAKZ2NjIHZlcnNpb24gMi45NS4yIDE5OTkxMDI0IChyZWxlYXNlKSAKQ29tcGlsZSB3
aXRoOiBnKysgdC5jcHAKdC5jcHA6IEluIG1ldGhvZCBgQzo6QygpJzoKdC5jcHA6MzQ6IEludGVy
bmFsIGNvbXBpbGVyIGVycm9yLgp0LmNwcDozNDogUGxlYXNlIHN1Ym1pdCBhIGZ1bGwgYnVnIHJl
cG9ydC4KdC5jcHA6MzQ6IFNlZSA8VVJMOmh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9nY2Mv
YnVncy5odG1sPiBmb3IgaW5zdHJ1Y3Rpb25zLiAgICAKKi8KCmNsYXNzIEEgCnsKcHVibGljOgog
ICBib29sICBmKCBjb25zdCBBKiwgY29uc3QgY2hhciAqLGNvbnN0IEEqLCBjb25zdCBjaGFyICog
KTsKICAgYm9vbCAgZiggY29uc3QgQSosIGNvbnN0IGNoYXIgKixjb25zdCBjaGFyICogKTsKCiAg
IGJvb2wgIGcoIGNvbnN0IEEqLCBjb25zdCBjaGFyICogKTsKfTsKCgpjbGFzcyBCCnsKcHVibGlj
OgogICBib29sIGYoIEEqLCBjb25zdCBjaGFyKiApOwp9OwoKY2xhc3MgQyA6IHB1YmxpYyBBLCBw
dWJsaWMgQgp7CnB1YmxpYzoKICAgQygpOwp9OwoKQzo6QygpCnsKICAgZiggdGhpcywgIiIsIHRo
aXMsICIiICk7ICAgLy8gSW50ZXJuYWwgY29tcGlsZXIgZXJyb3IuCn0KCmludCBtYWluKCkKewog
ICBDIGM7CiAgIHJldHVybiAwOwp9Cg==


More information about the Gcc-bugs mailing list