public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/35022] [4.3 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
@ 2008-01-30  0:14 ` reichelt at gcc dot gnu dot org
  2008-01-30 11:37 ` rguenth at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2008-01-30  0:14 UTC (permalink / raw)
  To: gcc-bugs



-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.3.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022]  New: [4.3 regression] ICE with parameter pack in template constant parameter
@ 2008-01-30  0:14 reichelt at gcc dot gnu dot org
  2008-01-30  0:14 ` [Bug c++/35022] " reichelt at gcc dot gnu dot org
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2008-01-30  0:14 UTC (permalink / raw)
  To: gcc-bugs

The following invalid code snippet triggers an ICE on mainline since today:

=============================================================
template<typename... T, template<T> class X> void foo(X<0>);
=============================================================

bug.cc:1: error: parameter packs not expanded with `...':
bug.cc:1: note:         'T'
bug.cc:1: internal compiler error: tree check: expected tree_vec, have
type_pack_expansion in coerce_template_parameter_pack, at cp/pt.c:5054
Please submit a full bug report, [etc.]


-- 
           Summary: [4.3 regression] ICE with parameter pack in template
                    constant parameter
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code, error-recovery, monitored
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: reichelt at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
  2008-01-30  0:14 ` [Bug c++/35022] " reichelt at gcc dot gnu dot org
@ 2008-01-30 11:37 ` rguenth at gcc dot gnu dot org
  2008-02-14 21:41 ` dgregor at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-01-30 11:37 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
           Priority|P3                          |P5
   Last reconfirmed|0000-00-00 00:00:00         |2008-01-30 10:09:31
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
  2008-01-30  0:14 ` [Bug c++/35022] " reichelt at gcc dot gnu dot org
  2008-01-30 11:37 ` rguenth at gcc dot gnu dot org
@ 2008-02-14 21:41 ` dgregor at gcc dot gnu dot org
  2008-02-15  3:36 ` dgregor at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2008-02-14 21:41 UTC (permalink / raw)
  To: gcc-bugs



-- 

dgregor at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |dgregor at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2008-01-30 10:09:31         |2008-02-14 21:41:02
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2008-02-14 21:41 ` dgregor at gcc dot gnu dot org
@ 2008-02-15  3:36 ` dgregor at gcc dot gnu dot org
  2008-02-16  3:40 ` andreasmeier80 at gmx dot de
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2008-02-15  3:36 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from dgregor at gcc dot gnu dot org  2008-02-15 03:35 -------
This test case actually exposes two (!) related issues, one of which is a
rejects-valid:

  template<typename... T, template<T...> class X> void foo(X<0>);

and the other, which is an ice-on-valid-code:

  template<typename... T, template<T...p> class X> void foo(X<0>);

The issue for both the original test case and this last test case is that
coerce_template_parameter_pack doesn't expect to get a pack expansion back from
tsubst_pack_expansion, but of course this happens in nested templates like this
template template parameter.

Note to myself: the parameter pack SIZEOF_EXPR handling doesn't deal with pack
expansions coming back from tsubst_pack_expansion, either. I can probably craft
a test case to illustrate this issue.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2008-02-15  3:36 ` dgregor at gcc dot gnu dot org
@ 2008-02-16  3:40 ` andreasmeier80 at gmx dot de
  2008-03-15  0:44 ` [Bug c++/35022] [4.3/4.4 " jsm28 at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: andreasmeier80 at gmx dot de @ 2008-02-16  3:40 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from andreasmeier80 at gmx dot de  2008-02-16 03:39 -------
Patch at http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00575.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2008-02-16  3:40 ` andreasmeier80 at gmx dot de
@ 2008-03-15  0:44 ` jsm28 at gcc dot gnu dot org
  2008-06-06 15:05 ` rguenth at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2008-03-15  0:44 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from jsm28 at gcc dot gnu dot org  2008-03-15 00:42 -------
Update milestone after 4.3.0 release.


-- 

jsm28 at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.0                       |4.3.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2008-03-15  0:44 ` [Bug c++/35022] [4.3/4.4 " jsm28 at gcc dot gnu dot org
@ 2008-06-06 15:05 ` rguenth at gcc dot gnu dot org
  2008-06-16 19:34 ` chris dot fairles at gmail dot com
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-06-06 15:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from rguenth at gcc dot gnu dot org  2008-06-06 14:58 -------
4.3.1 is being released, adjusting target milestone.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.1                       |4.3.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2008-06-06 15:05 ` rguenth at gcc dot gnu dot org
@ 2008-06-16 19:34 ` chris dot fairles at gmail dot com
  2008-08-27 22:10 ` jsm28 at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: chris dot fairles at gmail dot com @ 2008-06-16 19:34 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from chris dot fairles at gmail dot com  2008-06-16 19:34 -------
I think this is related:

template <typename T, T...> struct A{}; 
template <template <typename T, T...> class B> struct C{}; 

int main() { C<A> a; }

gives ICE @ pt.c:15861 (rev 136843).

The line in question is:
gcc_assert (TREE_CODE (type) != TEMPLATE_TYPE_PARM);

in 
bool dependant_type_p (tree type);


-- 

chris dot fairles at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |chris dot fairles at gmail
                   |                            |dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2008-06-16 19:34 ` chris dot fairles at gmail dot com
@ 2008-08-27 22:10 ` jsm28 at gcc dot gnu dot org
  2008-12-02 17:59 ` jason at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2008-08-27 22:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from jsm28 at gcc dot gnu dot org  2008-08-27 22:03 -------
4.3.2 is released, changing milestones to 4.3.3.


-- 

jsm28 at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.2                       |4.3.3


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2008-08-27 22:10 ` jsm28 at gcc dot gnu dot org
@ 2008-12-02 17:59 ` jason at gcc dot gnu dot org
  2009-01-24 10:23 ` rguenth at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: jason at gcc dot gnu dot org @ 2008-12-02 17:59 UTC (permalink / raw)
  To: gcc-bugs



-- 

jason at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|dgregor at gcc dot gnu dot  |unassigned at gcc dot gnu
                   |org                         |dot org
             Status|ASSIGNED                    |NEW


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2008-12-02 17:59 ` jason at gcc dot gnu dot org
@ 2009-01-24 10:23 ` rguenth at gcc dot gnu dot org
  2009-01-26 21:12 ` paolo dot carlini at oracle dot com
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-01-24 10:23 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from rguenth at gcc dot gnu dot org  2009-01-24 10:20 -------
GCC 4.3.3 is being released, adjusting target milestone.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.3                       |4.3.4


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2009-01-24 10:23 ` rguenth at gcc dot gnu dot org
@ 2009-01-26 21:12 ` paolo dot carlini at oracle dot com
  2009-01-26 22:31 ` jason at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: paolo dot carlini at oracle dot com @ 2009-01-26 21:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from paolo dot carlini at oracle dot com  2009-01-26 21:12 -------
Jason, can you maybe review Doug's patch linked in Comment #2? Thanks!


-- 

paolo dot carlini at oracle dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jason at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (11 preceding siblings ...)
  2009-01-26 21:12 ` paolo dot carlini at oracle dot com
@ 2009-01-26 22:31 ` jason at gcc dot gnu dot org
  2009-01-26 23:25 ` paolo dot carlini at oracle dot com
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: jason at gcc dot gnu dot org @ 2009-01-26 22:31 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from jason at gcc dot gnu dot org  2009-01-26 22:31 -------
I approved that patch back in March, but it turned out not to be the right fix:
see

http://gcc.gnu.org/ml/gcc-patches/2008-03/msg01675.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (12 preceding siblings ...)
  2009-01-26 22:31 ` jason at gcc dot gnu dot org
@ 2009-01-26 23:25 ` paolo dot carlini at oracle dot com
  2009-08-04 12:38 ` [Bug c++/35022] [4.3/4.4/4.5 " rguenth at gcc dot gnu dot org
  2010-05-22 19:01 ` [Bug c++/35022] [4.3/4.4/4.5/4.6 " rguenth at gcc dot gnu dot org
  15 siblings, 0 replies; 17+ messages in thread
From: paolo dot carlini at oracle dot com @ 2009-01-26 23:25 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from paolo dot carlini at oracle dot com  2009-01-26 23:25 -------
I see, thanks for the missing pointer.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4/4.5 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (13 preceding siblings ...)
  2009-01-26 23:25 ` paolo dot carlini at oracle dot com
@ 2009-08-04 12:38 ` rguenth at gcc dot gnu dot org
  2010-05-22 19:01 ` [Bug c++/35022] [4.3/4.4/4.5/4.6 " rguenth at gcc dot gnu dot org
  15 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-08-04 12:38 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from rguenth at gcc dot gnu dot org  2009-08-04 12:28 -------
GCC 4.3.4 is being released, adjusting target milestone.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.4                       |4.3.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

* [Bug c++/35022] [4.3/4.4/4.5/4.6 regression] ICE with parameter pack in template constant parameter
  2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
                   ` (14 preceding siblings ...)
  2009-08-04 12:38 ` [Bug c++/35022] [4.3/4.4/4.5 " rguenth at gcc dot gnu dot org
@ 2010-05-22 19:01 ` rguenth at gcc dot gnu dot org
  15 siblings, 0 replies; 17+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-05-22 19:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from rguenth at gcc dot gnu dot org  2010-05-22 18:12 -------
GCC 4.3.5 is being released, adjusting target milestone.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.3.5                       |4.3.6


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35022


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

end of thread, other threads:[~2010-05-22 18:21 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-01-30  0:14 [Bug c++/35022] New: [4.3 regression] ICE with parameter pack in template constant parameter reichelt at gcc dot gnu dot org
2008-01-30  0:14 ` [Bug c++/35022] " reichelt at gcc dot gnu dot org
2008-01-30 11:37 ` rguenth at gcc dot gnu dot org
2008-02-14 21:41 ` dgregor at gcc dot gnu dot org
2008-02-15  3:36 ` dgregor at gcc dot gnu dot org
2008-02-16  3:40 ` andreasmeier80 at gmx dot de
2008-03-15  0:44 ` [Bug c++/35022] [4.3/4.4 " jsm28 at gcc dot gnu dot org
2008-06-06 15:05 ` rguenth at gcc dot gnu dot org
2008-06-16 19:34 ` chris dot fairles at gmail dot com
2008-08-27 22:10 ` jsm28 at gcc dot gnu dot org
2008-12-02 17:59 ` jason at gcc dot gnu dot org
2009-01-24 10:23 ` rguenth at gcc dot gnu dot org
2009-01-26 21:12 ` paolo dot carlini at oracle dot com
2009-01-26 22:31 ` jason at gcc dot gnu dot org
2009-01-26 23:25 ` paolo dot carlini at oracle dot com
2009-08-04 12:38 ` [Bug c++/35022] [4.3/4.4/4.5 " rguenth at gcc dot gnu dot org
2010-05-22 19:01 ` [Bug c++/35022] [4.3/4.4/4.5/4.6 " rguenth at gcc dot gnu dot org

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).