public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/14507] [3.3 Regression] Wacky Template ICE
       [not found] <20040309192501.14507.stl@nuwen.net>
@ 2004-09-28 13:27 ` gdr at gcc dot gnu dot org
  2005-01-21  4:17 ` gdr at gcc dot gnu dot org
  1 sibling, 0 replies; 7+ messages in thread
From: gdr at gcc dot gnu dot org @ 2004-09-28 13:27 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From gdr at gcc dot gnu dot org  2004-09-28 13:27 -------
Adjust milestone

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|3.4.0 4.0 2.95.3            |3.4.0 4.0.0 2.95.3
   Target Milestone|3.3.5                       |3.3.6


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


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

* [Bug c++/14507] [3.3 Regression] Wacky Template ICE
       [not found] <20040309192501.14507.stl@nuwen.net>
  2004-09-28 13:27 ` [Bug c++/14507] [3.3 Regression] Wacky Template ICE gdr at gcc dot gnu dot org
@ 2005-01-21  4:17 ` gdr at gcc dot gnu dot org
  1 sibling, 0 replies; 7+ messages in thread
From: gdr at gcc dot gnu dot org @ 2005-01-21  4:17 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From gdr at gcc dot gnu dot org  2005-01-21 04:17 -------
This bugs seems to have been introduced in 3.0.x.  It is fixed in
3.4.x and higher.  Fixing this requires fiddling with name lookup and
and the template handling code. I don't think that is wise at this point.
So I'll close as won't fix.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |WONTFIX


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


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

* [Bug c++/14507] [3.3 Regression] Wacky Template ICE
  2004-03-09 19:25 [Bug c++/14507] New: [3.1/3.2/3.2.2/3.2.3/3.3.2/3.3.3 Regression From 2.95.2/2.95.3] " stl at caltech dot edu
                   ` (3 preceding siblings ...)
  2004-06-11 22:22 ` pinskia at gcc dot gnu dot org
@ 2004-08-10 19:07 ` reichelt at gcc dot gnu dot org
  4 siblings, 0 replies; 7+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2004-08-10 19:07 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From reichelt at gcc dot gnu dot org  2004-08-10 19:07 -------
Here's a shorter testcase:

====================================================
template<typename T> struct A : virtual A<T> {};

template<typename T> struct A<T*> : A<T>
{
    A() : A() {}
};
====================================================


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |reichelt at gcc dot gnu dot
                   |                            |org
           Keywords|                            |monitored
      Known to fail|3.0.4 3.3.1 3.2.3           |3.0.4 3.2.3 3.3.1 3.3.3


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


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

* [Bug c++/14507] [3.3 Regression] Wacky Template ICE
  2004-03-09 19:25 [Bug c++/14507] New: [3.1/3.2/3.2.2/3.2.3/3.3.2/3.3.3 Regression From 2.95.2/2.95.3] " stl at caltech dot edu
                   ` (2 preceding siblings ...)
  2004-04-01 19:40 ` bangerth at dealii dot org
@ 2004-06-11 22:22 ` pinskia at gcc dot gnu dot org
  2004-08-10 19:07 ` reichelt at gcc dot gnu dot org
  4 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-06-11 22:22 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|3.3.4                       |3.3.5


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


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

* [Bug c++/14507] [3.3 Regression] Wacky Template ICE
  2004-03-09 19:25 [Bug c++/14507] New: [3.1/3.2/3.2.2/3.2.3/3.3.2/3.3.3 Regression From 2.95.2/2.95.3] " stl at caltech dot edu
  2004-03-09 19:41 ` [Bug c++/14507] [3.3 Regression] " pinskia at gcc dot gnu dot org
  2004-03-09 20:36 ` bangerth at dealii dot org
@ 2004-04-01 19:40 ` bangerth at dealii dot org
  2004-06-11 22:22 ` pinskia at gcc dot gnu dot org
  2004-08-10 19:07 ` reichelt at gcc dot gnu dot org
  4 siblings, 0 replies; 7+ messages in thread
From: bangerth at dealii dot org @ 2004-04-01 19:40 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bangerth at dealii dot org  2004-04-01 19:40 -------
My point with the infinite class hierarchy is actually not very good. 
After all, we are just declaring a bunch of templates, not instantiating 
any of them. The actual class hierarchy can only be determined once we 
try to instantiate something, since we may have added further specialization 
later on (after the code shown, which already blows up by itself), which 
may terminate the inheritance hierarchy at some finite point. 
 
W. 

-- 


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


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

* [Bug c++/14507] [3.3 Regression] Wacky Template ICE
  2004-03-09 19:25 [Bug c++/14507] New: [3.1/3.2/3.2.2/3.2.3/3.3.2/3.3.3 Regression From 2.95.2/2.95.3] " stl at caltech dot edu
  2004-03-09 19:41 ` [Bug c++/14507] [3.3 Regression] " pinskia at gcc dot gnu dot org
@ 2004-03-09 20:36 ` bangerth at dealii dot org
  2004-04-01 19:40 ` bangerth at dealii dot org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: bangerth at dealii dot org @ 2004-03-09 20:36 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bangerth at dealii dot org  2004-03-09 20:36 -------
Wow, yes, this _is_ wacky. However, it should be legal. 
 
Not surprisingly, the cause of death of previous compilers is due to 
memory starvation after expanding like a dying star on my machine. What 
happens is that apparently it tries to expand the inheritance tree without 
seeing that there is a partial specialization around. For, if I change the 
example to this: 
----------------- 
template <typename A, typename B = int, typename C = int, typename D = int> 
struct c; 
 
template <typename A, typename B, typename C> 
struct c<A, B, C, int> : c<A, B> { 
    c() : c() { } 
}; 
 
template <typename A, typename B, typename C, typename D> 
struct c : virtual c<A, B> { }; 
---------------- 
then it compiles fine. However, in both cases the code may not be legal 
since the class hierarchy is actually infinite. The only difference between 
seeing the partial specialization and not seeing it is that in one case 
it tries to do all the inheritance with virtual base classes, and in the 
other case with non-virtual ones. 
 
W. 

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |memory-hog


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


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

* [Bug c++/14507] [3.3 Regression] Wacky Template ICE
  2004-03-09 19:25 [Bug c++/14507] New: [3.1/3.2/3.2.2/3.2.3/3.3.2/3.3.3 Regression From 2.95.2/2.95.3] " stl at caltech dot edu
@ 2004-03-09 19:41 ` pinskia at gcc dot gnu dot org
  2004-03-09 20:36 ` bangerth at dealii dot org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-03-09 19:41 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-03-09 19:41 -------
Confirmed, a regression from 2.95.3, note 3.4.0 and the mainline is already fixed.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
           Keywords|                            |ice-on-valid-code
      Known to fail|                            |3.0.4 3.3.1 3.2.3
      Known to work|                            |3.4.0 3.5.0 2.95.3
   Last reconfirmed|0000-00-00 00:00:00         |2004-03-09 19:41:54
               date|                            |
            Summary|[3.1/3.2/3.2.2/3.2.3/3.3.2/3|[3.3 Regression] Wacky
                   |.3.3 Regression From        |Template ICE
                   |2.95.2/2.95.3] Wacky        |
                   |Template ICE                |
   Target Milestone|---                         |3.3.4


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


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

end of thread, other threads:[~2005-01-21  4:17 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20040309192501.14507.stl@nuwen.net>
2004-09-28 13:27 ` [Bug c++/14507] [3.3 Regression] Wacky Template ICE gdr at gcc dot gnu dot org
2005-01-21  4:17 ` gdr at gcc dot gnu dot org
2004-03-09 19:25 [Bug c++/14507] New: [3.1/3.2/3.2.2/3.2.3/3.3.2/3.3.3 Regression From 2.95.2/2.95.3] " stl at caltech dot edu
2004-03-09 19:41 ` [Bug c++/14507] [3.3 Regression] " pinskia at gcc dot gnu dot org
2004-03-09 20:36 ` bangerth at dealii dot org
2004-04-01 19:40 ` bangerth at dealii dot org
2004-06-11 22:22 ` pinskia at gcc dot gnu dot org
2004-08-10 19:07 ` reichelt 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).