public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* c++/8428: Segmentation fault while building a c++ file
@ 2002-11-02  3:46 marioluca
  0 siblings, 0 replies; only message in thread
From: marioluca @ 2002-11-02  3:46 UTC (permalink / raw)
  To: gcc-gnats


>Number:         8428
>Category:       c++
>Synopsis:       Segmentation fault while building a c++ file
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Nov 02 03:46:02 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     marioluca@inwind.it
>Release:        gcc 3.2 tree-ssa branch
>Organization:
>Environment:

>Description:
When i try to compile the libsupc++ , cc1plus give a segfault error on the compilation of del_op.cc file.
This makes impossible to bootstrap the compiler with -fdump-translation-unit turned on.
I've reported here the output of the 2 compilation i made:
( see how to repeat for command line )
--------------------------------------------------------------------------------------------------
Build that fails with a segmentation fault (*tree-ssa branch*)
--------------------------------------------------------------------------------------------------
GNU C++ version 3.4-tree-ssa 20021021 (experimental) (i686-pc-linux-gnu)
        compiled by GNU C version 3.2.
options passed:  -fpreprocessed -auxbase-strip -g -g -O2 -Wall -Wno-format
 -W -Wwrite-strings -Winline -fno-implicit-templates
 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections
 -fdump-translation-unit
options enabled:  -fdefer-pop -foptimize-sibling-calls -fcse-follow-jumps
 -fcse-skip-blocks -fexpensive-optimizations -fthread-jumps
 -fstrength-reduce -fpeephole -fforce-mem -ffunction-cse
 -fkeep-static-consts -fcaller-saves -fpcc-struct-return -fgcse -fgcse-lm
 -fgcse-sm -floop-optimize -fcrossjumping -fif-conversion -fif-conversion2
 -frerun-cse-after-loop -frerun-loop-opt -fdelete-null-pointer-checks
 -fschedule-insns2 -fsched-interblock -fsched-spec -fbranch-count-reg
 -fexceptions -freorder-blocks -freorder-functions -fcprop-registers
 -fcommon -ffunction-sections -fdata-sections -fgnu-linker -fregmove
 -foptimize-register-move -fargument-alias -fstrict-aliasing
 -fmerge-constants -fzero-initialized-in-bss -fident -fpeephole2
 -fguess-branch-probability -fmath-errno -ftrapping-math -m80387
 -mhard-float -mno-soft-float -mieee-fp -mfp-ret-in-387
 -maccumulate-outgoing-args -mcpu=pentiumpro -march=i386
 std::exception::exception() std::exception::exception() std::exception::exception() std::bad_exception::bad_exception() std::bad_exception::bad_exception() std::bad_exception::bad_exception() std::bad_alloc::bad_alloc() std::bad_alloc::bad_alloc() std::bad_alloc::bad_alloc() void* operator new(unsigned int, void*) void* operator new [](unsigned int, void*) void operator delete(void*, void*) void operator delete [](void*, void*) void operator delete(void*) void operator delete(void*)
del_op.cc: At global scope:
del_op.cc:40: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
------------------------------------------------------------------------------------------
    Build that work fine ( *ast-optimizer branch* ) 
------------------------------------------------------------------------------------------
GNU C++ version 3.2 (ast-optimizer-branch) (i686-pc-linux-gnu)
        compiled by GNU C version 3.2.
options passed:  -fpreprocessed -g -g -O2 -Wall -Wno-format -W
 -Wwrite-strings -Winline -fno-implicit-templates
 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections
 -fdump-translation-unit
options enabled:  -fdefer-pop -fomit-frame-pointer -foptimize-sibling-calls
 -fcse-follow-jumps -fcse-skip-blocks -fexpensive-optimizations
 -fthread-jumps -fstrength-reduce -fpeephole -fforce-mem -ffunction-cse
 -fkeep-static-consts -fcaller-saves -fpcc-struct-return -fgcse -fgcse-lm
 -fgcse-sm -floop-optimize -fcrossjumping -fif-conversion -fif-conversion2
 -frerun-cse-after-loop -frerun-loop-opt -fdelete-null-pointer-checks
 -fschedule-insns2 -fsched-interblock -fsched-spec -fbranch-count-reg
 -fexceptions -freorder-blocks -freorder-functions -fcprop-registers
 -fcommon -ffunction-sections -fdata-sections -fgnu-linker -fregmove
 -foptimize-register-move -fargument-alias -fstrict-aliasing
 -fmerge-constants -fzero-initialized-in-bss -fident -fpeephole2
 -fguess-branch-probability -fmath-errno -ftrapping-math -ftree-ssa -m80387
 -mhard-float -mno-soft-float -mieee-fp -mfp-ret-in-387
 -momit-leaf-frame-pointer -mcpu=pentiumpro -march=i386
 std::exception::exception() std::exception::exception() std::exception::exception() std::bad_exception::bad_exception() std::bad_exception::bad_exception() std::bad_exception::bad_exception() std::bad_alloc::bad_alloc() std::bad_alloc::bad_alloc() std::bad_alloc::bad_alloc() void* operator new(unsigned int, void*) void* operator new [](unsigned int, void*) void operator delete(void*, void*) void operator delete [](void*, void*) void operator delete(void*) void operator delete(void*)
Execution times (seconds)
 cfg cleanup      :   0.01 ( 1%) usr   0.00 ( 0%) sys   0.00 ( 0%) wall
 life analysis       :   0.01 ( 1%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall
 preprocessing   :   0.00 ( 0%) usr   0.02 (10%) sys   0.00 ( 0%) wall
 lexical analysis  :   0.02 ( 2%) usr   0.01 ( 5%) sys   0.00 ( 0%) wall
 parser         :   0.18 (14%) usr   0.01 ( 5%) sys   0.27 (14%) wall
 expand            :   0.01 ( 1%) usr   0.01 ( 5%) sys   0.01 ( 0%) wall
 varconst       :   0.61 (46%) usr   0.08 (38%) sys   1.05 (55%) wall
 integration     :   0.04 ( 3%) usr   0.01 ( 5%) sys   0.05 ( 3%) wall
 CSE              :   0.01 ( 1%) usr   0.01 ( 5%) sys   0.02 ( 1%) wall
 branch prediction : 0.01 ( 1%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall
 combiner        :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall
 mode switching  :   0.00 ( 0%) usr   0.01 ( 5%) sys   0.00 ( 0%) wall
 local alloc         :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.02 ( 1%) wall
 global alloc      :   0.01 ( 1%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall
 flow 2             :   0.01 ( 1%) usr   0.00 ( 0%) sys   0.00 ( 0%) wall
 rename registers:  0.01 ( 1%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall
 scheduling 2   :   0.01 ( 1%) usr   0.00 ( 0%) sys   0.02 ( 1%) wall
 final               :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall
 symout         :   0.03 ( 2%) usr   0.01 ( 5%) sys   0.04 ( 2%) wall
 rest of compilation:0.02 ( 2%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall
 TOTAL       :   1.32             0.21             1.92
>How-To-Repeat:
Build the tree-ssa branch from cvs. 
Then try the following compilation (adjust the path to just built cc1plus ) from the ./i686-pc-linux-gnu/libstdc++-v3/libsupc++ directory :
/CurrentWorks/cvs/gcc/tree-ssa-branch/gcc/gcc/cc1plus -fpreprocessed del_op.ii -quiet -dumpbase del_op.cc -auxbase-strip del_op.o -g -O2 -Wall -Wno-format -W -Wwrite-strings -Winline -version -fno-implicit-templates -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -fdump-translation-unit -o del_op.s
The same compilation with a cc1plus compiled from the ast-optimizer branch will go fine.
I've attached the del_op.ii file for preprocessing.
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="del_op.ii"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="del_op.ii"

IyAxICJkZWxfb3AuY2MiCiMgMSAiPGJ1aWx0LWluPiIKIyAxICI8Y29tbWFuZCBsaW5lPiIKIyAx
ICJkZWxfb3AuY2MiCiMgMzEgImRlbF9vcC5jYyIKIyAxICJuZXciIDEKIyA0MSAibmV3IgojIDEg
Ii9jeWdkcml2ZS9jL2RldmVsb3BtZW50L3Rlc3RpbmcvZ2NjL2djYy9pNjg2LXBjLWN5Z3dpbi9s
aWJzdGRjKystdjMvaW5jbHVkZS9jc3RkZGVmIiAxCiMgNDcgIi9jeWdkcml2ZS9jL2RldmVsb3Bt
ZW50L3Rlc3RpbmcvZ2NjL2djYy9pNjg2LXBjLWN5Z3dpbi9saWJzdGRjKystdjMvaW5jbHVkZS9j
c3RkZGVmIiAzCgojIDEgIi9jeWdkcml2ZS9jL2RldmVsb3BtZW50L3Rlc3RpbmcvZ2NjL2djYy9n
Y2MvaW5jbHVkZS9zdGRkZWYuaCIgMSAzIDQKIyAxNTEgIi9jeWdkcml2ZS9jL2RldmVsb3BtZW50
L3Rlc3RpbmcvZ2NjL2djYy9nY2MvaW5jbHVkZS9zdGRkZWYuaCIgMyA0CnR5cGVkZWYgaW50IHB0
cmRpZmZfdDsKIyAyMTMgIi9jeWdkcml2ZS9jL2RldmVsb3BtZW50L3Rlc3RpbmcvZ2NjL2djYy9n
Y2MvaW5jbHVkZS9zdGRkZWYuaCIgMyA0CnR5cGVkZWYgdW5zaWduZWQgaW50IHNpemVfdDsKIyA0
OSAiL2N5Z2RyaXZlL2MvZGV2ZWxvcG1lbnQvdGVzdGluZy9nY2MvZ2NjL2k2ODYtcGMtY3lnd2lu
L2xpYnN0ZGMrKy12My9pbmNsdWRlL2NzdGRkZWYiIDIgMwoKbmFtZXNwYWNlIHN0ZAp7CiAgdXNp
bmcgOjpwdHJkaWZmX3Q7CiAgdXNpbmcgOjpzaXplX3Q7Cn0KIyA0MiAibmV3IiAyCiMgMSAiLi4v
bGlic3VwYysrL2V4Y2VwdGlvbiIgMQojIDQwICIuLi9saWJzdXBjKysvZXhjZXB0aW9uIgpleHRl
cm4gIkMrKyIgewoKbmFtZXNwYWNlIHN0ZAp7CiMgNTIgIi4uL2xpYnN1cGMrKy9leGNlcHRpb24i
CiAgY2xhc3MgZXhjZXB0aW9uCiAgewogIHB1YmxpYzoKICAgIGV4Y2VwdGlvbigpIHRocm93KCkg
eyB9CiAgICB2aXJ0dWFsIH5leGNlcHRpb24oKSB0aHJvdygpOwoKCiAgICB2aXJ0dWFsIGNvbnN0
IGNoYXIqIHdoYXQoKSBjb25zdCB0aHJvdygpOwogIH07CgoKCiAgY2xhc3MgYmFkX2V4Y2VwdGlv
biA6IHB1YmxpYyBleGNlcHRpb24KICB7CiAgcHVibGljOgogICAgYmFkX2V4Y2VwdGlvbigpIHRo
cm93KCkgeyB9CgoKICAgIHZpcnR1YWwgfmJhZF9leGNlcHRpb24oKSB0aHJvdygpOwogIH07CgoK
ICB0eXBlZGVmIHZvaWQgKCp0ZXJtaW5hdGVfaGFuZGxlcikgKCk7CgogIHR5cGVkZWYgdm9pZCAo
KnVuZXhwZWN0ZWRfaGFuZGxlcikgKCk7CgoKICB0ZXJtaW5hdGVfaGFuZGxlciBzZXRfdGVybWlu
YXRlKHRlcm1pbmF0ZV9oYW5kbGVyKSB0aHJvdygpOwoKCiAgdm9pZCB0ZXJtaW5hdGUoKSBfX2F0
dHJpYnV0ZV9fICgoX19ub3JldHVybl9fKSk7CgoKICB1bmV4cGVjdGVkX2hhbmRsZXIgc2V0X3Vu
ZXhwZWN0ZWQodW5leHBlY3RlZF9oYW5kbGVyKSB0aHJvdygpOwoKCiAgdm9pZCB1bmV4cGVjdGVk
KCkgX19hdHRyaWJ1dGVfXyAoKF9fbm9yZXR1cm5fXykpOwojIDEwMCAiLi4vbGlic3VwYysrL2V4
Y2VwdGlvbiIKICBib29sIHVuY2F1Z2h0X2V4Y2VwdGlvbigpIHRocm93KCk7Cn0KCm5hbWVzcGFj
ZSBfX2dudV9jeHgKewojIDExMyAiLi4vbGlic3VwYysrL2V4Y2VwdGlvbiIKICB2b2lkIF9fdmVy
Ym9zZV90ZXJtaW5hdGVfaGFuZGxlciAoKTsKfQoKfQojIDQzICJuZXciIDIKCmV4dGVybiAiQysr
IiB7CgpuYW1lc3BhY2Ugc3RkCnsKCgoKCgogIGNsYXNzIGJhZF9hbGxvYyA6IHB1YmxpYyBleGNl
cHRpb24KICB7CiAgcHVibGljOgogICAgYmFkX2FsbG9jKCkgdGhyb3coKSB7IH0KCgogICAgdmly
dHVhbCB+YmFkX2FsbG9jKCkgdGhyb3coKTsKICB9OwoKICBzdHJ1Y3Qgbm90aHJvd190IHsgfTsK
ICBleHRlcm4gY29uc3Qgbm90aHJvd190IG5vdGhyb3c7CgoKICB0eXBlZGVmIHZvaWQgKCpuZXdf
aGFuZGxlcikoKTsKCiAgbmV3X2hhbmRsZXIgc2V0X25ld19oYW5kbGVyKG5ld19oYW5kbGVyKSB0
aHJvdygpOwp9CiMgODIgIm5ldyIKdm9pZCogb3BlcmF0b3IgbmV3KHN0ZDo6c2l6ZV90KSB0aHJv
dyAoc3RkOjpiYWRfYWxsb2MpOwp2b2lkKiBvcGVyYXRvciBuZXdbXShzdGQ6OnNpemVfdCkgdGhy
b3cgKHN0ZDo6YmFkX2FsbG9jKTsKdm9pZCBvcGVyYXRvciBkZWxldGUodm9pZCopIHRocm93KCk7
CnZvaWQgb3BlcmF0b3IgZGVsZXRlW10odm9pZCopIHRocm93KCk7CnZvaWQqIG9wZXJhdG9yIG5l
dyhzdGQ6OnNpemVfdCwgY29uc3Qgc3RkOjpub3Rocm93X3QmKSB0aHJvdygpOwp2b2lkKiBvcGVy
YXRvciBuZXdbXShzdGQ6OnNpemVfdCwgY29uc3Qgc3RkOjpub3Rocm93X3QmKSB0aHJvdygpOwp2
b2lkIG9wZXJhdG9yIGRlbGV0ZSh2b2lkKiwgY29uc3Qgc3RkOjpub3Rocm93X3QmKSB0aHJvdygp
Owp2b2lkIG9wZXJhdG9yIGRlbGV0ZVtdKHZvaWQqLCBjb25zdCBzdGQ6Om5vdGhyb3dfdCYpIHRo
cm93KCk7CgoKaW5saW5lIHZvaWQqIG9wZXJhdG9yIG5ldyhzdGQ6OnNpemVfdCwgdm9pZCogX19w
KSB0aHJvdygpIHsgcmV0dXJuIF9fcDsgfQppbmxpbmUgdm9pZCogb3BlcmF0b3IgbmV3W10oc3Rk
OjpzaXplX3QsIHZvaWQqIF9fcCkgdGhyb3coKSB7IHJldHVybiBfX3A7IH0KCgppbmxpbmUgdm9p
ZCBvcGVyYXRvciBkZWxldGUgKHZvaWQqLCB2b2lkKikgdGhyb3coKSB7IH07CmlubGluZSB2b2lk
IG9wZXJhdG9yIGRlbGV0ZVtdKHZvaWQqLCB2b2lkKikgdGhyb3coKSB7IH07Cgp9CiMgMzIgImRl
bF9vcC5jYyIgMgoKZXh0ZXJuICJDIiB2b2lkIGZyZWUgKHZvaWQgKik7Cgp2b2lkCm9wZXJhdG9y
IGRlbGV0ZSAodm9pZCAqcHRyKSB0aHJvdyAoKQp7CiAgaWYgKHB0cikKICAgIGZyZWUgKHB0cik7
Cn0K


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-11-02 11:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-11-02  3:46 c++/8428: Segmentation fault while building a c++ file marioluca

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