Bug 26352 - ICE
Summary: ICE
Status: RESOLVED INVALID
Alias: None
Product: gcc
Classification: Unclassified
Component: c++ (show other bugs)
Version: 4.0.2
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords: memory-hog
Depends on:
Blocks:
 
Reported: 2006-02-18 15:47 UTC by Ivan Godard
Modified: 2007-09-24 17:05 UTC (History)
2 users (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments
compiler output (697 bytes, text/plain)
2006-02-18 15:48 UTC, Ivan Godard
Details
source code (compressed) (137.54 KB, application/x-gzip)
2006-02-18 15:48 UTC, Ivan Godard
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan Godard 2006-02-18 15:47:43 UTC
 
Comment 1 Ivan Godard 2006-02-18 15:48:08 UTC
Created attachment 10873 [details]
compiler output
Comment 2 Ivan Godard 2006-02-18 15:48:30 UTC
Created attachment 10874 [details]
source code (compressed)
Comment 3 Andrew Pinski 2006-02-18 16:07:45 UTC
g++: Internal error: Killed (program cc1plus)

means memory was over used.
Comment 4 Andrew Pinski 2006-02-18 16:22:03 UTC
I cannot reproduce this at all in 4.0.2, 4.0.0, or 4.0.3.
Comment 5 Wolfgang Bangerth 2006-03-08 04:55:31 UTC
I see you used precompiled headers. Does the same ICE happen if you
don't do that?

W.
Comment 6 Ivan Godard 2006-03-08 06:16:18 UTC
We don't use pre-compiled headers ourselves. Any precompiles are third-party or standard library, and actually I was unaware that they were used. Can you tell me the files that the header contained? Then I can identify where we got them and might be able to get un-precompiled versions.

Ivan
Comment 7 Wolfgang Bangerth 2006-03-08 14:57:37 UTC
(In reply to comment #6)
> We don't use pre-compiled headers ourselves. Any precompiles are third-party or
> standard library, and actually I was unaware that they were used. Can you tell
> me the files that the header contained? Then I can identify where we got them
> and might be able to get un-precompiled versions.

All I can say is that in your log file I see the command line

/mnt/export/home/ivan/gcc/bin/../libexec/gcc/i686-pc-linux-gnu/4.0.2/cc1plus -fpreprocessed powersetTest.ii -quiet -dumpbase powersetTest.cc -mtune=pentiumpro -auxbase powersetTest -g -O0 -version -o powersetTest.s

Since I don't have your sources (and don't want to), I can't help you search
further.

W.
Comment 8 Ivan Godard 2006-03-08 19:29:27 UTC
Well I was really surprised to see this -fpreprocessed option in the -v output, so I did a little digging. It seems that this option is set by the driver whenever -save-temps is set. It does not come from my command line. Try it: compile something -v, and then compile the same thing -v -save-temps and the first -v will not have -fpreprocessed and the second one will.

The bug report instructions say to run with -save-temps so I do. You might ask internally why the driver sets these when the user asks for -save-temps. I think the generated -fpreprocessed is irrelevant to the bug, because it will be set on every  compile that produces a .ii file for you and I've put in a few of those :-)

Ivan
Comment 9 Paolo Carlini 2007-09-24 17:05:09 UTC
In any case, the pre-processed code doesn't compile anymore with 4.2 and mainline.