public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/33185]  New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
@ 2007-08-25  9:54 tbm at cyrius dot com
  2007-08-25  9:56 ` [Bug c++/33185] " tbm at cyrius dot com
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: tbm at cyrius dot com @ 2007-08-25  9:54 UTC (permalink / raw)
  To: gcc-bugs

I get the following ICE with current trunk.  It looks different to
the canonical type ICE reported in PR33112.

(sid)27874:tbm@em64t: ~/src/a/esperanza-0.3] /usr/lib/gcc-snapshot/bin/g++ -c
-pipe -g -I/usr/include/xmms2 -I/usr/include/xmms2 -Wall -W
-Wno-unused-parameter -D_REENTRANT -DQT_SHARED -DQT_XML_LIB -DQT_GUI_LIB
-DQT_NETWORK_LIB -DQT_CORE_LIB -I/usr/share/qt4/mkspecs/linux-g++ -I.
-I/usr/include/qt4/QtCore -I/usr/include/qt4/QtCore
-I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtNetwork
-I/usr/include/qt4/QtGui -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtXml
-I/usr/include/qt4/QtXml -I/usr/include/qt4 -Iui -Ilib -I/opt/local/include
-Iqmake_build -I. -o qmake_build/medialibpanebrowser.o
ui/medialibpanebrowser.cpp
In file included from /usr/include/boost/type_traits.hpp:61,
                 from /usr/include/boost/signals/trackable.hpp:13,
                 from /usr/include/boost/signals/slot.hpp:15,
                 from /usr/include/boost/signals/signal_template.hpp:21,
                 from /usr/include/boost/signals/signal0.hpp:24,
                 from /usr/include/boost/signal.hpp:19,
                 from /usr/include/xmms2/xmmsclient/xmmsclient++/signal.h:21,
                 from /usr/include/xmms2/xmmsclient/xmmsclient++.h:20,
                 from lib/xclient.h:21,
                 from ui/medialibpanebrowser.h:20,
                 from ui/medialibpanebrowser.cpp:17:
/usr/include/boost/type_traits/extent.hpp:96: internal compiler error:
canonical types differ for identical types T [] and T []
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

Unfortunately, it's one of these cases where the bug cannot be reproduced
with the preprocessed source.  Doug, is the message above enough or what
further information do you need to track this one down?


-- 
           Summary: [4.3 Regression] ICE: canonical types differ for
                    identical types T [] and T []
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: tbm at cyrius dot com


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
@ 2007-08-25  9:56 ` tbm at cyrius dot com
  2007-08-25 10:00 ` tbm at cyrius dot com
                   ` (12 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbm at cyrius dot com @ 2007-08-25  9:56 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from tbm at cyrius dot com  2007-08-25 09:56 -------
95: template <class T>
96: struct extent_imp<T[], 0>
97: {
98:    BOOST_STATIC_CONSTANT(std::size_t, value = 0);
99: };


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
  2007-08-25  9:56 ` [Bug c++/33185] " tbm at cyrius dot com
@ 2007-08-25 10:00 ` tbm at cyrius dot com
  2007-08-28 20:27 ` dgregor at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbm at cyrius dot com @ 2007-08-25 10:00 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from tbm at cyrius dot com  2007-08-25 10:00 -------
Created an attachment (id=14111)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14111&action=view)
preprocessed source

I'm attaching the preprocessed source since it's probably helpful anyway.


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
  2007-08-25  9:56 ` [Bug c++/33185] " tbm at cyrius dot com
  2007-08-25 10:00 ` tbm at cyrius dot com
@ 2007-08-28 20:27 ` dgregor at gcc dot gnu dot org
  2007-08-28 20:32 ` tbm at cyrius dot com
                   ` (10 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2007-08-28 20:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from dgregor at gcc dot gnu dot org  2007-08-28 20:26 -------
Has anyone been able to reproduce this problem? I'm not able to trigger the
failure with the preprocessed source.


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (2 preceding siblings ...)
  2007-08-28 20:27 ` dgregor at gcc dot gnu dot org
@ 2007-08-28 20:32 ` tbm at cyrius dot com
  2007-09-01 16:50 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbm at cyrius dot com @ 2007-08-28 20:32 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from tbm at cyrius dot com  2007-08-28 20:32 -------
(In reply to comment #3)
> Has anyone been able to reproduce this problem? I'm not able to trigger the
> failure with the preprocessed source.

Well, I noted this problem already in my first message.  I see the ICE when
I compile the .cc file though rather than the preprocessed source.


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (3 preceding siblings ...)
  2007-08-28 20:32 ` tbm at cyrius dot com
@ 2007-09-01 16:50 ` pinskia at gcc dot gnu dot org
  2007-09-05  2:19 ` mmitchel at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-09-01 16:50 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

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


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (4 preceding siblings ...)
  2007-09-01 16:50 ` pinskia at gcc dot gnu dot org
@ 2007-09-05  2:19 ` mmitchel at gcc dot gnu dot org
  2007-09-10 20:39 ` dgregor at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2007-09-05  2:19 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (5 preceding siblings ...)
  2007-09-05  2:19 ` mmitchel at gcc dot gnu dot org
@ 2007-09-10 20:39 ` dgregor at gcc dot gnu dot org
  2007-09-11  6:48 ` tbm at cyrius dot com
                   ` (6 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2007-09-10 20:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from dgregor at gcc dot gnu dot org  2007-09-10 20:38 -------
Could someone try the patch at

  http://gcc.gnu.org/ml/gcc-patches/2007-09/msg00910.html

to determine whether this fixes the bug? I am unable to reproduce the bug
locally.


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (6 preceding siblings ...)
  2007-09-10 20:39 ` dgregor at gcc dot gnu dot org
@ 2007-09-11  6:48 ` tbm at cyrius dot com
  2007-09-19 21:45 ` dgregor at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: tbm at cyrius dot com @ 2007-09-11  6:48 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from tbm at cyrius dot com  2007-09-11 06:48 -------
(In reply to comment #5)
> Could someone try the patch at
> 
>   http://gcc.gnu.org/ml/gcc-patches/2007-09/msg00910.html
> 
> to determine whether this fixes the bug? I am unable to reproduce the bug
> locally.

Actually, I cannot produce this even without your patch with trunk from
20070829 and 20070902.  However, I can produce it with with 20070820 (the
version of my original bug report).  So I suppose one of your other patches has
fixed this problem already in the meantime.

(Note that I'm away on holidays for a week now in case there are any follow-up
questions.)


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (7 preceding siblings ...)
  2007-09-11  6:48 ` tbm at cyrius dot com
@ 2007-09-19 21:45 ` dgregor at gcc dot gnu dot org
  2007-09-22  4:22 ` rwgk at yahoo dot com
                   ` (4 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2007-09-19 21:45 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from dgregor at gcc dot gnu dot org  2007-09-19 21:45 -------
Here is the real fix:

  http://gcc.gnu.org/ml/gcc-patches/2007-09/msg01544.html


-- 

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|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-09-19 21:45:34
               date|                            |


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (8 preceding siblings ...)
  2007-09-19 21:45 ` dgregor at gcc dot gnu dot org
@ 2007-09-22  4:22 ` rwgk at yahoo dot com
  2007-09-22  4:23 ` rwgk at yahoo dot com
                   ` (3 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rwgk at yahoo dot com @ 2007-09-22  4:22 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from rwgk at yahoo dot com  2007-09-22 04:22 -------
Created an attachment (id=14243)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14243&action=view)
reproducer


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (9 preceding siblings ...)
  2007-09-22  4:22 ` rwgk at yahoo dot com
@ 2007-09-22  4:23 ` rwgk at yahoo dot com
  2007-09-24 12:15 ` dgregor at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rwgk at yahoo dot com @ 2007-09-22  4:23 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from rwgk at yahoo dot com  2007-09-22 04:23 -------
Info regarding Comment #8:

Fedora Core release 5 (Bordeaux)
% uname -r -m
2.6.15-1.2054_FC5 x86_64

% g++ -fpermissive -c -fPIC -I/usr/include/python2.4 ice_canonical.cpp
ice_canonical.cpp: In function 'void init_module()':
ice_canonical.cpp:8: internal compiler error: canonical types differ for
identical types const char [3] and const char [3]
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

The result is the same with:

g++ (GCC) 4.3.0 20070919 (experimental) SVN revision 128608 as-is

g++ (GCC) 4.3.0 20070922 (experimental) SVN revision 128661M
  where the "M" is because I've locally applied the patch from Comment #7.
  Apparently, the patch isn't the whole solution.

Note: the -fpermissive is required to avoid the new "changes meaning" error.
I've already fixed the boost SVN trunk so that the -fpermissive is no longer
required. I can reproduce the same ICE based on the boost SVN trunk, without
using the -fpermissive.


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (10 preceding siblings ...)
  2007-09-22  4:23 ` rwgk at yahoo dot com
@ 2007-09-24 12:15 ` dgregor at gcc dot gnu dot org
  2007-09-24 13:47 ` dgregor at gcc dot gnu dot org
  2007-09-24 13:48 ` dgregor at gcc dot gnu dot org
  13 siblings, 0 replies; 15+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2007-09-24 12:15 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from dgregor at gcc dot gnu dot org  2007-09-24 12:15 -------
Subject: Bug 33185

Author: dgregor
Date: Mon Sep 24 12:14:57 2007
New Revision: 128711

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128711
Log:
2007-09-24  Douglas Gregor  <doug.gregor@gmail.com>

        PR c++/33112
        PR c++/33185    
        * tree.c (cplus_array_compare): Compare pointers, not types.
        (build_cplus_array_type_1): Store new array type into the hash
        table before building the canonical type; build the canonical type
        correctly.
        (cp_build_qualified_type_real): Put all of the array types with
        cv-qualified element types into the C++ array hash table, built as 
        variants of the unqualified versions.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/tree.c


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (11 preceding siblings ...)
  2007-09-24 12:15 ` dgregor at gcc dot gnu dot org
@ 2007-09-24 13:47 ` dgregor at gcc dot gnu dot org
  2007-09-24 13:48 ` dgregor at gcc dot gnu dot org
  13 siblings, 0 replies; 15+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2007-09-24 13:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from dgregor at gcc dot gnu dot org  2007-09-24 13:46 -------
Subject: Bug 33185

Author: dgregor
Date: Mon Sep 24 13:46:40 2007
New Revision: 128717

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128717
Log:
2007-09-24  Douglas Gregor  <doug.gregor@gmail.com>

        PR c++/33185    
        * tree.c (cp_build_qualified_type_real): Build a canonical
        ARRAY_TYPE if the original ARRAY_TYPE was not a canonical type.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/tree.c


-- 


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


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

* [Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []
  2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
                   ` (12 preceding siblings ...)
  2007-09-24 13:47 ` dgregor at gcc dot gnu dot org
@ 2007-09-24 13:48 ` dgregor at gcc dot gnu dot org
  13 siblings, 0 replies; 15+ messages in thread
From: dgregor at gcc dot gnu dot org @ 2007-09-24 13:48 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from dgregor at gcc dot gnu dot org  2007-09-24 13:47 -------
Fixed, for real. Thanks for the ice_canonical.cpp test-case: it illustrated the
(other) underlying problem that wasn't apparent in 33112.


-- 

dgregor at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


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


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

end of thread, other threads:[~2007-09-24 13:48 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-08-25  9:54 [Bug c++/33185] New: [4.3 Regression] ICE: canonical types differ for identical types T [] and T [] tbm at cyrius dot com
2007-08-25  9:56 ` [Bug c++/33185] " tbm at cyrius dot com
2007-08-25 10:00 ` tbm at cyrius dot com
2007-08-28 20:27 ` dgregor at gcc dot gnu dot org
2007-08-28 20:32 ` tbm at cyrius dot com
2007-09-01 16:50 ` pinskia at gcc dot gnu dot org
2007-09-05  2:19 ` mmitchel at gcc dot gnu dot org
2007-09-10 20:39 ` dgregor at gcc dot gnu dot org
2007-09-11  6:48 ` tbm at cyrius dot com
2007-09-19 21:45 ` dgregor at gcc dot gnu dot org
2007-09-22  4:22 ` rwgk at yahoo dot com
2007-09-22  4:23 ` rwgk at yahoo dot com
2007-09-24 12:15 ` dgregor at gcc dot gnu dot org
2007-09-24 13:47 ` dgregor at gcc dot gnu dot org
2007-09-24 13:48 ` dgregor 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).