public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: c++/3869: Segmentation fault on specialized outer template with inner member template.
@ 2003-01-02 21:26 Paolo Carlini
0 siblings, 0 replies; 8+ messages in thread
From: Paolo Carlini @ 2003-01-02 21:26 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/3869; it has been noted by GNATS.
From: Paolo Carlini <pcarlini@unitus.it>
To: jhl@sssonline.com, gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org,
fluxsmith@fluxsmith.com, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org
Cc:
Subject: Re: c++/3869: Segmentation fault on specialized outer template with
inner member template.
Date: Thu, 02 Jan 2003 22:21:48 +0100
With current 3.4 no segmentation fault, but instead:
3869.cc:14: error: expected unqualified-id
3869.cc:17: error: expected init-declarator
3869.cc:17: error: expected `,' or `;'
If the illegal testcase is changed from:
typedef typename Outer<flag>::Inner<int>::Result Result;
to
typedef typename Outer<flag>::template Inner<int>::Result Result;
It is compiled just fine with 3.2, 3.3 and mainline.
It seems to me that the PR can be closed.
Paolo.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3869
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/3869: Segmentation fault on specialized outer template with inner member template.
@ 2003-01-03 12:19 paolo
0 siblings, 0 replies; 8+ messages in thread
From: paolo @ 2003-01-03 12:19 UTC (permalink / raw)
To: fluxsmith, gcc-bugs, gcc-prs, jhl, nobody
Synopsis: Segmentation fault on specialized outer template with inner member template.
State-Changed-From-To: analyzed->closed
State-Changed-By: paolo
State-Changed-When: Fri Jan 3 04:19:19 2003
State-Changed-Why:
Fixed for 3.4 (one less thanks to Mark's parser!).
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3869
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/3869: Segmentation fault on specialized outer template with inner member template.
@ 2003-01-03 12:16 Neil Booth
0 siblings, 0 replies; 8+ messages in thread
From: Neil Booth @ 2003-01-03 12:16 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/3869; it has been noted by GNATS.
From: Neil Booth <neil@daikokuya.co.uk>
To: Paolo Carlini <pcarlini@unitus.it>
Cc: jhl@sssonline.com, gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org,
fluxsmith@fluxsmith.com, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org
Subject: Re: c++/3869: Segmentation fault on specialized outer template with inner member template.
Date: Fri, 3 Jan 2003 12:14:11 +0000
Paolo Carlini wrote:-
> >>It is compiled just fine with 3.2, 3.3 and mainline.
> >>
> >>It seems to me that the PR can be closed.
> >>Paolo.
> >>
> >>
> >If so, please add a testcase.
> >
> Well, if my analysis is correct, which one? I mean, the legal-ized
> version is compiled
> just fine by 3.2.1, 3.3 and 3.4, the illegal one doesn't ICE with 3.4
> but, good, is not compiled
> either (see above). So, perhaps just closing it would be fine?
Sorry, you're right; if 3.3 compiles it there is no need to add a
testcase (it's not due to the new parser).
Neil.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/3869: Segmentation fault on specialized outer template with inner member template.
@ 2003-01-03 12:06 Paolo Carlini
0 siblings, 0 replies; 8+ messages in thread
From: Paolo Carlini @ 2003-01-03 12:06 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/3869; it has been noted by GNATS.
From: Paolo Carlini <pcarlini@unitus.it>
To: Neil Booth <neil@daikokuya.co.uk>
Cc: jhl@sssonline.com, gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org,
fluxsmith@fluxsmith.com, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org
Subject: Re: c++/3869: Segmentation fault on specialized outer template with
inner member template.
Date: Fri, 03 Jan 2003 13:00:39 +0100
Neil Booth wrote:
>Paolo Carlini wrote:-
>
>
>>With current 3.4 no segmentation fault, but instead:
>>
>>3869.cc:14: error: expected unqualified-id
>>3869.cc:17: error: expected init-declarator
>>3869.cc:17: error: expected `,' or `;'
>>
>>If the illegal testcase is changed from:
>>
>> typedef typename Outer<flag>::Inner<int>::Result Result;
>>
>>to
>>
>> typedef typename Outer<flag>::template Inner<int>::Result Result;
>>
>>It is compiled just fine with 3.2, 3.3 and mainline.
>>
>>It seems to me that the PR can be closed.
>>Paolo.
>>
>>
>If so, please add a testcase.
>
Well, if my analysis is correct, which one? I mean, the legal-ized
version is compiled
just fine by 3.2.1, 3.3 and 3.4, the illegal one doesn't ICE with 3.4
but, good, is not compiled
either (see above). So, perhaps just closing it would be fine?
Thanks, Paolo.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/3869: Segmentation fault on specialized outer template with inner member template.
@ 2003-01-02 21:56 Neil Booth
0 siblings, 0 replies; 8+ messages in thread
From: Neil Booth @ 2003-01-02 21:56 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/3869; it has been noted by GNATS.
From: Neil Booth <neil@daikokuya.co.uk>
To: Paolo Carlini <pcarlini@unitus.it>
Cc: jhl@sssonline.com, gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org,
fluxsmith@fluxsmith.com, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org
Subject: Re: c++/3869: Segmentation fault on specialized outer template with inner member template.
Date: Thu, 2 Jan 2003 21:46:23 +0000
Paolo Carlini wrote:-
> With current 3.4 no segmentation fault, but instead:
>
> 3869.cc:14: error: expected unqualified-id
> 3869.cc:17: error: expected init-declarator
> 3869.cc:17: error: expected `,' or `;'
>
> If the illegal testcase is changed from:
>
> typedef typename Outer<flag>::Inner<int>::Result Result;
>
> to
>
> typedef typename Outer<flag>::template Inner<int>::Result Result;
>
> It is compiled just fine with 3.2, 3.3 and mainline.
>
> It seems to me that the PR can be closed.
> Paolo.
If so, please add a testcase.
Neil.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/3869: Segmentation fault on specialized outer template with inner member template
@ 2002-11-01 12:46 Wolfgang Bangerth
0 siblings, 0 replies; 8+ messages in thread
From: Wolfgang Bangerth @ 2002-11-01 12:46 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/3869; it has been noted by GNATS.
From: Wolfgang Bangerth <bangerth@ticam.utexas.edu>
To: gcc-bugs@gcc.gnu.org, <gcc-gnats@gcc.gnu.org>
Cc:
Subject: Re: c++/3869: Segmentation fault on specialized outer template with
inner member template
Date: Fri, 1 Nov 2002 14:41:49 -0600 (CST)
This is a reduced testcase:
---------------------------------------
template <int> struct Outer {
template<typename> struct Inner {
typedef int Result;
};
};
template<> struct Outer<0> {
template<typename> struct Inner {
typedef int Result;
};
};
template<int flag> struct Select {
typedef typename Outer<flag>::Inner<int>::Result Result;
};
typedef Select<1>::Result Int;
--------------------------------------
It fails with a segfault.
W.
-------------------------------------------------------------------------
Wolfgang Bangerth email: bangerth@ticam.utexas.edu
www: http://www.ticam.utexas.edu/~bangerth
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/3869: Segmentation fault on specialized outer template with inner member template.
@ 2001-08-01 5:19 nathan
0 siblings, 0 replies; 8+ messages in thread
From: nathan @ 2001-08-01 5:19 UTC (permalink / raw)
To: fluxsmith, gcc-bugs, gcc-prs, jhl, nobody
Synopsis: Segmentation fault on specialized outer template with inner member template.
State-Changed-From-To: open->analyzed
State-Changed-By: nathan
State-Changed-When: Wed Aug 1 05:19:11 2001
State-Changed-Why:
confirmed as a bug
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=3869&database=gcc
^ permalink raw reply [flat|nested] 8+ messages in thread
* c++/3869: Segmentation fault on specialized outer template with inner member template.
@ 2001-07-29 13:06 fluxsmith
0 siblings, 0 replies; 8+ messages in thread
From: fluxsmith @ 2001-07-29 13:06 UTC (permalink / raw)
To: gcc-gnats; +Cc: jhl
>Number: 3869
>Category: c++
>Synopsis: Segmentation fault on specialized outer template with inner member template.
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: unassigned
>State: open
>Class: ice-on-legal-code
>Submitter-Id: net
>Arrival-Date: Sun Jul 29 13:06:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator: Jonathan H Lundquist
>Release: 3.0
>Organization:
>Environment:
cygwin
>Description:
/* On viewing report 3868, the file attachment doesn't seem to be working. This is duplicative, with the code here: */
template<int flag>
struct Flag {
template<typename T, typename U>
struct Which {
typedef T Result;
};
};
template<>
struct Flag<0> {
template<typename T, typename U>
struct Which {
typedef U Result;
};
};
template<int flag, typename T, typename U>
struct Select {
typedef typename Flag<flag>::Which<T, U>::Result Result;
};
typedef Select<1, int, long>::Result Int;
typedef Select<0, int, long>::Result Long;
Int i = 0;
Long j = 0;
/*
C:\MYDOCU~1\DEVELO~1\jhl\gcctest>gcc -v -save-temps gcctest.cpp
Reading specs from /usr/local/lib/gcc-lib/i686-pc-cygwin/3.0/specs
Configured with: /cygdrive/c/mydocu~1/downloads/gcc-3.0/configure
Thread model: single
gcc version 3.0
/usr/local/lib/gcc-lib/i686-pc-cygwin/3.0/cpp0.exe -lang-c++ -D__GNUG__=3 -D__G
XX_DEPRECATED -D__EXCEPTIONS -D__GXX_ABI_VERSION=100 -v -D__GNUC__=3 -D__GNUC_MI
NOR__=0 -D__GNUC_PATCHLEVEL__=0 -D_X86_=1 -D_X86_=1 -Asystem=winnt -D__NO_INLINE
__ -D__STDC_HOSTED__=1 -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__
tune_i686__ -D__tune_pentiumpro__ -D__stdcall=__attribute__((__stdcall__)) -D__c
decl=__attribute__((__cdecl__)) -D_stdcall=__attribute__((__stdcall__)) -D_cdecl
=__attribute__((__cdecl__)) -D__declspec(x)=__attribute__((x)) -D__i386__ -D__i3
86 -D__CYGWIN32__ -D__CYGWIN__ -Dunix -D__unix__ -D__unix -isystem /usr/local/in
clude -idirafter /usr/include -idirafter /usr/include/w32api gcctest.cpp gcctest
.ii
GNU CPP version 3.0 (cpplib) (80386, BSD syntax)
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/usr/local/include/g++-v3
/usr/local/include/g++-v3/i686-pc-cygwin
/usr/local/include/g++-v3/backward
/usr/local/lib/gcc-lib/i686-pc-cygwin/3.0/include
/usr/include
/usr/include/w32api
End of search list.
/usr/local/lib/gcc-lib/i686-pc-cygwin/3.0/cc1plus.exe -fpreprocessed gcctest.ii
-quiet -dumpbase gcctest.cpp -version -o gcctest.s
GNU CPP version 3.0 (cpplib) (80386, BSD syntax)
GNU C++ version 3.0 (i686-pc-cygwin)
compiled by GNU C version 3.0.
gcctest.cpp:23: Internal error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL: http://www.gnu.org/software/gcc/bugs.html > for instructions.
*/
>How-To-Repeat:
Compile the above
>Fix:
Unknown
>Release-Note:
>Audit-Trail:
>Unformatted:
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2003-01-03 12:19 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-01-02 21:26 c++/3869: Segmentation fault on specialized outer template with inner member template Paolo Carlini
-- strict thread matches above, loose matches on Subject: below --
2003-01-03 12:19 paolo
2003-01-03 12:16 Neil Booth
2003-01-03 12:06 Paolo Carlini
2003-01-02 21:56 Neil Booth
2002-11-01 12:46 Wolfgang Bangerth
2001-08-01 5:19 nathan
2001-07-29 13:06 fluxsmith
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).