c++/6178: Specific syntax mistake causes "Internal compiler error"

drfiske@physics.umd.edu drfiske@physics.umd.edu
Thu Apr 4 15:16:00 GMT 2002


>Number:         6178
>Category:       c++
>Synopsis:       Specific syntax mistake causes "Internal compiler error"
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    unassigned
>State:          open
>Class:          ice-on-illegal-code
>Submitter-Id:   net
>Arrival-Date:   Thu Apr 04 14:56:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     David Fiske
>Release:        gcc version 2.95.2 19991024 (release)
>Organization:
>Environment:
DEC alpha running Digital UNIX
>Description:
Let foo be a template class and foo_son be a template class
derived from foo:

template <class T>
class foo;

template <class T>
class foo_son : public foo<T>;

Both provide an implementation of a function void print(void).
>From a client program, now, I want to access foo<T>::print
from a variable f of type foo_son<T> (for specific T now).
If I write (the syntactically incorrect) line

f.foo::print();

the compiler gives an internal error.
If I write (the syntactically correct) line

f.foo<T>::print();

compilation succeeds.
>How-To-Repeat:
g++ -Wall -g -c foo.cpp
>Fix:
Use the correct syntax.  See description above.
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/x-gzip; name="foo.ii.gz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="foo.ii.gz"

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
3Hwc/B/JJkHHQ2oAAA==



More information about the Gcc-bugs mailing list