public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/18318] New: ICE: error: Multiple inline callers
@ 2004-11-06 20:43 enh at jessies dot org
  2004-11-06 20:44 ` [Bug c++/18318] " enh at jessies dot org
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: enh at jessies dot org @ 2004-11-06 20:43 UTC (permalink / raw)
  To: gcc-bugs

ICE compiling the Jikes Java compiler with g++ 4.0:

hydrogen:~/Projects/jikes/src$ g++ -v -save-temps -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT 
bytecode.o -MD -MP -MF ".deps/bytecode.Tpo" -c -o bytecode.o bytecode.cpp
Reading specs from /usr/local/lib/gcc/powerpc-apple-darwin7.6.0/4.0.0/specs
Configured with: ../gcc/configure 
Thread model: posix
gcc version 4.0.0 20041106 (experimental)
 /usr/local/libexec/gcc/powerpc-apple-darwin7.6.0/4.0.0/cc1plus -E -quiet -v -I. -I. -I. -MD 
bytecode.d -MF .deps/bytecode.Tpo -MP -MT bytecode.o -MQ bytecode.o -D__DYNAMIC__ 
-D__APPLE_CC__=1 -DHAVE_CONFIG_H bytecode.cpp -feliminate-unused-debug-symbols -fPIC 
-fworking-directory -O2 -fpch-preprocess -o bytecode.ii
ignoring nonexistent directory "NONE/include"
ignoring nonexistent directory "/usr/local/lib/gcc/powerpc-apple-darwin7.6.0/4.0.0/../../../../
powerpc-apple-darwin7.6.0/include"
ignoring duplicate directory "."
ignoring duplicate directory "."
#include "..." search starts here:
#include <...> search starts here:
 .
 /usr/local/lib/gcc/powerpc-apple-darwin7.6.0/4.0.0/../../../../include/c++/4.0.0
 /usr/local/lib/gcc/powerpc-apple-darwin7.6.0/4.0.0/../../../../include/c++/4.0.0/powerpc-apple-
darwin7.6.0
 /usr/local/lib/gcc/powerpc-apple-darwin7.6.0/4.0.0/../../../../include/c++/4.0.0/backward
 /usr/local/include
 /usr/local/lib/gcc/powerpc-apple-darwin7.6.0/4.0.0/include
 /usr/include
 /System/Library/Frameworks
 /Library/Frameworks
End of search list.
 /usr/local/libexec/gcc/powerpc-apple-darwin7.6.0/4.0.0/cc1plus -fpreprocessed bytecode.ii 
-feliminate-unused-debug-symbols -fPIC -quiet -dumpbase bytecode.cpp -auxbase-strip bytecode.o 
-g -O2 -version -o bytecode.s
GNU C++ version 4.0.0 20041106 (experimental) (powerpc-apple-darwin7.6.0)
        compiled by GNU C version 4.0.0 20041106 (experimental).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
tuple.h: In destructor 'Tuple<T>::~Tuple() [with T = InnerClassesAttribute::InnerClassesElement]':
tuple.h:93: error: Multiple inline callers
tuple.h:93: error: Multiple inline callers
unsigned int Tuple<T>::Blksize() const [with T = InnerClassesAttribute::InnerClassesElement]/5050: 
(inline copy in Tuple<T>::~Tuple() [with T = InnerClassesAttribute::InnerClassesElement]/4344) 5 insns 
tree inlinable
  called by: Tuple<T>::~Tuple() [with T = InnerClassesAttribute::InnerClassesElement]/4344 (inlined) 
Tuple<T>::~Tuple() [with T = InnerClassesAttribute::InnerClassesElement]/4344 (inlined) 
  calls: 
tuple.h:93: internal compiler error: verify_cgraph_node failed.
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
hydrogen:~/Projects/jikes/src$ 

[presumably i submit this much, and then there's some way to upload the .ii.bz2 file?]

-- 
           Summary: ICE: error: Multiple inline callers
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: critical
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: enh at jessies dot org
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: powerpc-apple-darwin7.6.0
  GCC host triplet: powerpc-apple-darwin7.6.0
GCC target triplet: powerpc-apple-darwin7.6.0


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


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

* [Bug c++/18318] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
@ 2004-11-06 20:44 ` enh at jessies dot org
  2004-11-06 20:46 ` [Bug tree-optimization/18318] [4.0 Regression] " pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: enh at jessies dot org @ 2004-11-06 20:44 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From enh at jessies dot org  2004-11-06 20:44 -------
Created an attachment (id=7484)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7484&action=view)
temps of file that caused ICE


-- 


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


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

* [Bug tree-optimization/18318] [4.0 Regression] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
  2004-11-06 20:44 ` [Bug c++/18318] " enh at jessies dot org
@ 2004-11-06 20:46 ` pinskia at gcc dot gnu dot org
  2004-11-06 20:52 ` enh at jessies dot org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-11-06 20:46 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu dot
                   |                            |org
          Component|c++                         |tree-optimization
           Keywords|                            |ice-on-valid-code
            Summary|ICE: error: Multiple inline |[4.0 Regression] ICE: error:
                   |callers                     |Multiple inline callers
   Target Milestone|---                         |4.0.0


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


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

* [Bug tree-optimization/18318] [4.0 Regression] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
  2004-11-06 20:44 ` [Bug c++/18318] " enh at jessies dot org
  2004-11-06 20:46 ` [Bug tree-optimization/18318] [4.0 Regression] " pinskia at gcc dot gnu dot org
@ 2004-11-06 20:52 ` enh at jessies dot org
  2004-11-06 21:12 ` pinskia at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: enh at jessies dot org @ 2004-11-06 20:52 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From enh at jessies dot org  2004-11-06 20:52 -------
i guess it might be worth mentioning the work-around. if i change:

        base[k] = (new T[Blksize()]) - size;
        size += Blksize();

to:

        unsigned block_size = Blksize();
        base[k] = (new T[block_size]) - size;
        size += block_size;

it compiles just fine. i did try to come up with a small test case, but failed. the problem is obviously not 
as simple as this work-around implied.

-- 


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


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

* [Bug tree-optimization/18318] [4.0 Regression] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
                   ` (2 preceding siblings ...)
  2004-11-06 20:52 ` enh at jessies dot org
@ 2004-11-06 21:12 ` pinskia at gcc dot gnu dot org
  2004-11-06 21:35 ` pinskia at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-11-06 21:12 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-11-06 21:12 -------
Confirmed (the hint helped me reduce the testcase). Reduced testcase:
template <class T>
struct A
{
  ~A();
  unsigned Blksize() const;
  void f()
  {
    new T[Blksize()];
  }
};
void gf()
{
  A<A<int> > a;
  a.f();
}


: Search converges between 2004-06-29-trunk (#475) and 2004-06-30-trunk (#476).

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2004-11-06 21:12:29
               date|                            |


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


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

* [Bug tree-optimization/18318] [4.0 Regression] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
                   ` (3 preceding siblings ...)
  2004-11-06 21:12 ` pinskia at gcc dot gnu dot org
@ 2004-11-06 21:35 ` pinskia at gcc dot gnu dot org
  2004-11-08 13:50 ` pinskia at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-11-06 21:35 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-11-06 21:35 -------
This case where the types are really done weridly:
  D.1610 = Blksize (this);
  D.1611 = D.1610 + 4;
  D.1612 = operator new [] (D.1611);
  D.1608 = (struct A<int>[(long unsigned int) Blksize (this) - 1] *) D.1612;  <--here.
  D.1609 = D.1608 + 4;
  D.1613 = D.1609 - 4;
  D.1614 = Blksize (this);
  *D.1613 = D.1614;


-- 


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


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

* [Bug tree-optimization/18318] [4.0 Regression] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
                   ` (4 preceding siblings ...)
  2004-11-06 21:35 ` pinskia at gcc dot gnu dot org
@ 2004-11-08 13:50 ` pinskia at gcc dot gnu dot org
  2004-11-08 18:40 ` [Bug c++/18318] " pinskia at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-11-08 13:50 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-11-08 13:49 -------
Almost certain it was caused by:
2004-06-30  Richard Henderson  <rth@redhat.com>

        * init.c (build_new_1): Fill in TYPE_DOMAIN, TYPE_SIZE and
        TYPE_SIZE_UNIT of full_type.

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


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


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

* [Bug c++/18318] [4.0 Regression] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
                   ` (5 preceding siblings ...)
  2004-11-08 13:50 ` pinskia at gcc dot gnu dot org
@ 2004-11-08 18:40 ` pinskia at gcc dot gnu dot org
  2004-11-29 16:21 ` nathan at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-11-08 18:40 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-11-08 18:39 -------
This is C++ front-end.  Without a template we get a SAVE_EXPR:
  D.1586 = (struct B[SAVE_EXPR <D.1588> - 1] *) D.1591;
But with we don't.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|tree-optimization           |c++


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


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

* [Bug c++/18318] [4.0 Regression] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
                   ` (6 preceding siblings ...)
  2004-11-08 18:40 ` [Bug c++/18318] " pinskia at gcc dot gnu dot org
@ 2004-11-29 16:21 ` nathan at gcc dot gnu dot org
  2004-12-03  9:52 ` cvs-commit at gcc dot gnu dot org
  2004-12-03  9:53 ` nathan at gcc dot gnu dot org
  9 siblings, 0 replies; 11+ messages in thread
From: nathan at gcc dot gnu dot org @ 2004-11-29 16:21 UTC (permalink / raw)
  To: gcc-bugs



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


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


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

* [Bug c++/18318] [4.0 Regression] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
                   ` (7 preceding siblings ...)
  2004-11-29 16:21 ` nathan at gcc dot gnu dot org
@ 2004-12-03  9:52 ` cvs-commit at gcc dot gnu dot org
  2004-12-03  9:53 ` nathan at gcc dot gnu dot org
  9 siblings, 0 replies; 11+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-12-03  9:52 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-12-03 09:51 -------
Subject: Bug 18318

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	nathan@gcc.gnu.org	2004-12-03 09:51:39

Modified files:
	gcc/cp         : ChangeLog init.c parser.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/g++.dg/template: new1.C 

Log message:
	cp:
	PR c++/18318
	* parser.c (cp_parser_new_type_id): Move array size expression
	checks from here ...
	* init.c (build_new): ... to here.
	testsuite:
	PR c++/18318
	* g++.dg/template/new1.C: New.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.4512&r2=1.4513
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/init.c.diff?cvsroot=gcc&r1=1.401&r2=1.402
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/parser.c.diff?cvsroot=gcc&r1=1.288&r2=1.289
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.4710&r2=1.4711
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/new1.C.diff?cvsroot=gcc&r1=NONE&r2=1.1



-- 


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


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

* [Bug c++/18318] [4.0 Regression] ICE: error: Multiple inline callers
  2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
                   ` (8 preceding siblings ...)
  2004-12-03  9:52 ` cvs-commit at gcc dot gnu dot org
@ 2004-12-03  9:53 ` nathan at gcc dot gnu dot org
  9 siblings, 0 replies; 11+ messages in thread
From: nathan at gcc dot gnu dot org @ 2004-12-03  9:53 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From nathan at gcc dot gnu dot org  2004-12-03 09:52 -------
2004-12-02  Nathan Sidwell  <nathan@codesourcery.com>

        PR c++/18318
        * parser.c (cp_parser_new_type_id): Move array size expression
        checks from here ...
        * init.c (build_new): ... to here.



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


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


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

end of thread, other threads:[~2004-12-03  9:53 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-11-06 20:43 [Bug c++/18318] New: ICE: error: Multiple inline callers enh at jessies dot org
2004-11-06 20:44 ` [Bug c++/18318] " enh at jessies dot org
2004-11-06 20:46 ` [Bug tree-optimization/18318] [4.0 Regression] " pinskia at gcc dot gnu dot org
2004-11-06 20:52 ` enh at jessies dot org
2004-11-06 21:12 ` pinskia at gcc dot gnu dot org
2004-11-06 21:35 ` pinskia at gcc dot gnu dot org
2004-11-08 13:50 ` pinskia at gcc dot gnu dot org
2004-11-08 18:40 ` [Bug c++/18318] " pinskia at gcc dot gnu dot org
2004-11-29 16:21 ` nathan at gcc dot gnu dot org
2004-12-03  9:52 ` cvs-commit at gcc dot gnu dot org
2004-12-03  9:53 ` nathan 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).