public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* c++/3734: G++ 2.95 cannot parse foo <a,b,c>::bar::foobar
@ 2001-07-19  3:56 khlebnikov
  0 siblings, 0 replies; 2+ messages in thread
From: khlebnikov @ 2001-07-19  3:56 UTC (permalink / raw)
  To: gcc-gnats

>Number:         3734
>Category:       c++
>Synopsis:       G++ 2.95 cannot parse foo <a,b,c>::bar::foobar
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          rejects-legal
>Submitter-Id:   net
>Arrival-Date:   Thu Jul 19 03:56:01 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     g++
>Release:        gcc version 2.95.4 20010319 (Debian prerelease)
>Organization:
>Environment:
Intel Pentium II 233
Progeny Debian Linux 1.0
GCC:
Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs
gcc version 2.95.4 20010319 (Debian prerelease)

>Description:
G++ cannot parse complex class hierarchy.
The attached file triggers the error on gcc 2.95.
gcc 3.0 compiles it OK.

====command:
g++ -c error.cpp
====output:
error.cpp: In method `void SSS<IS,OS>::P()':
error.cpp:80: no class template named `SCTS' in `class ST<int,int,int>'
>How-To-Repeat:
see code in error.ii
command: g++ -c error.cpp
>Fix:
==== replace
typedef typename ST <vS, vS, vS> ::CO::I II;
==== with
typedef typename ST <vS, vS, vS> ::CO STCO;
typedef typename STCO::I II;
====
or just compile it with gcc 3.0.
But the problem is that gcc 3.0 cannot compile some other files and ICEs. (Like in my report c++/3728).
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="error.ii"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="error.ii"

IyAxICJlcnJvci5jcHAiCmNsYXNzIFNDQSB7CgpwdWJsaWM6CiAgICB0eXBlZGVmIGludCBJOwp9
OwoKdGVtcGxhdGUgPGNsYXNzIFM+CmNsYXNzIFNDVFMgOiBwdWJsaWMgU0NBIHsKCiAgICBTIHM7
Cn07CgoKdGVtcGxhdGUgPGNsYXNzIFMsIGNsYXNzIFQ+CmNsYXNzIFNQVFMgOnB1YmxpYyBTQ0Eg
ewoKICAgIFMgczsKICAgIFQgdDsKfTsKCnRlbXBsYXRlIDxjbGFzcyBBLCBjbGFzcyBCPgpjbGFz
cyBTVEEgewoKICAgIEEgYTsKICAgIEIgYjsKfTsKCnRlbXBsYXRlIDxjbGFzcyBQVFNXQywgY2xh
c3MgUFRTUFdDLCBjbGFzcyBUU1dDPgpjbGFzcyBTVCA6IHZpcnR1YWwgcHVibGljIFNUQSA8IFNQ
VFMgPFBUU1BXQywgUFRTV0M+LCBTQ1RTIDxUU1dDPiAgPiB7CgpwdWJsaWM6CiAgICB0eXBlZGVm
IFNDVFMgPFRTV0M+ICAgICAgICAgICBDTzsKICAgIHR5cGVkZWYgU1BUUyA8UFRTV0MsIFBUU1BX
Qz4gIENJOwp9OwoKCnRlbXBsYXRlIDxjbGFzcyBDSUEsIGNsYXNzIENPQT4KY2xhc3MgU1BBIHsK
CnB1YmxpYzoKICAgIHZpcnR1YWwgdm9pZCBQICgpID0gMDsKfTsKCgp0ZW1wbGF0ZSA8Y2xhc3Mg
Q0lBLCBjbGFzcyBDT0E+CmNsYXNzIFNTU0EgOiB2aXJ0dWFsIHB1YmxpYyBTUEEgPENJQSxDT0E+
IHsKCnB1YmxpYzoKICAgIHZpcnR1YWwgdm9pZCBmICgpID0gMDsKfTsKCgp0ZW1wbGF0ZSA8Y2xh
c3MgVD4KY2xhc3MgU1MgewogICAgVCB0Owp9OwoKCnRlbXBsYXRlIDxjbGFzcyBUPgpjbGFzcyBT
Q1MgewogICAgVCB0Owp9OwoKCnRlbXBsYXRlIDxjbGFzcyBJUywgY2xhc3MgT1M+CmNsYXNzIFNT
UyA6IHZpcnR1YWwgcHVibGljIFNTU0EgPCBTUyA8SVM+LCBTQ1MgPE9TPiA+ICB7CgpwdWJsaWM6
CiAgICB0eXBlZGVmIGludCB2UzsKICAgIHR5cGVkZWYgU0NTIDxJUz4gQ087CiAgICB0eXBlZGVm
IFNTICA8T1M+IENJOwogICAgdm9pZCBQICgpOwp9OwoKCnRlbXBsYXRlIDxjbGFzcyBJUywgY2xh
c3MgT1M+CnZvaWQgU1NTIDxJUywgT1M+IDo6UCAoKSAgewoKICAgIHR5cGVkZWYgaW50IHZTOwog
ICAgdHlwZWRlZiB0eXBlbmFtZSBTVCA8dlMsIHZTLCB2Uz4gOjpDTzo6SSBJSTsgIAogICAgIAog
ICAgIAogICAgIAp9Owo=


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: c++/3734: G++ 2.95 cannot parse foo <a,b,c>::bar::foobar
@ 2001-07-19  4:05 neil
  0 siblings, 0 replies; 2+ messages in thread
From: neil @ 2001-07-19  4:05 UTC (permalink / raw)
  To: gcc-bugs, gcc-prs, khlebnikov, nobody

Synopsis: G++ 2.95 cannot parse foo <a,b,c>::bar::foobar

State-Changed-From-To: open->closed
State-Changed-By: neil
State-Changed-When: Thu Jul 19 04:05:50 2001
State-Changed-Why:
    Fixed in 3.0.  If there are other bugs in 3.0, then they need a PR.

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=3734&database=gcc


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-07-19  4:05 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-07-19  3:56 c++/3734: G++ 2.95 cannot parse foo <a,b,c>::bar::foobar khlebnikov
2001-07-19  4:05 neil

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).