c++/835: overloaded functions

Richard.Kreckel@Uni-Mainz.DE Richard.Kreckel@Uni-Mainz.DE
Fri Nov 17 10:26:00 GMT 2000


>Number:         835
>Category:       c++
>Synopsis:       overloaded functions
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    unassigned
>State:          open
>Class:          ice-on-legal-code
>Submitter-Id:   net
>Arrival-Date:   Fri Nov 17 10:26:00 PST 2000
>Closed-Date:
>Last-Modified:
>Originator:     Richard.Kreckel@Uni-Mainz.DE
>Release:        gcc version 2.97 20001113 (experimental) and some prior snapshots
>Organization:
>Environment:

>Description:
Legal redeclaration of a (possibly extern) overloaded 
function inside a method triggers an ICE in pushdecl, at 
cp/decl.c:3855.

This makes it currently impossible to compile Bruno Haible's
CLN library.
>How-To-Repeat:
Just run the attached little program snippet:
baryon:/temp/src$ c++ -c bug17.cc
bug17.cc: In constructor `bar::bar(const char*)':
bug17.cc:15: Tree check: expected class 'd', have 'x' (overload)
bug17.cc:15: Internal compiler error in pushdecl, at cp/decl.c:3855
   Please submit a full bug report.
   See <URL: http://www.gnu.org/software/gcc/bugs.html > for instructions.
>Fix:

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

Y2xhc3MgZm9vOwoKZXh0ZXJuIGZvbyogbWFrZV9mb28gKGludCk7CmV4dGVybiBmb28qIG1ha2Vf
Zm9vIChjb25zdCBjaGFyICopOwoKc3RydWN0IGJhciB7CnByaXZhdGU6CiAgICAgICAgZm9vICog
cG9pbnRlcjsKcHVibGljOgogICAgICAgIGJhciAoY29uc3QgY2hhciAqIHMpOwp9OwoKaW5saW5l
IGJhcjo6YmFyIChjb25zdCBjaGFyICogcykKewogICAgICAgIGZvbyogbWFrZV9mb28gKGNvbnN0
IGNoYXIgKik7CiAgICAgICAgcG9pbnRlciA9IG1ha2VfZm9vKHMpOwp9Cg==


More information about the Gcc-bugs mailing list