Bug 158622

Summary: ICE on dietlibc-0.29
Product: [Fedora] Fedora Reporter: Enrico Scholz <rh-bugzilla>
Component: gccAssignee: Jakub Jelinek <jakub>
Status: CLOSED WONTFIX QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-05-24 12:16:46 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
preprocessed source file none

Description Enrico Scholz 2005-05-24 10:27:05 UTC
Description of problem:

gcc -I. -isystem include -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -m32 -march=i386 -mtune=pentium4 -fasynchronous-unwind-tables -fPIC -D__DYN_LIB -D__DYN_\
LIB_SHARED -c dyn_start.c -o pic-i386/dyn_so_start.o 
dyn_start.c:42: internal compiler error: in named_section_real, at varasm.c:427 
Please submit a full bug report, 
with preprocessed source if appropriate. 
See <URL:http://bugzilla.redhat.com/bugzilla> for instructions. 
Preprocessed source stored into /tmp/ccKH6esy.out file, please attach this to your bugreport. 
make[1]: *** [pic-i386/dyn_so_start.o] Error 1 


Version-Release number of selected component (if applicable):

gcc-4.0.0-8


How reproducible:

100%

Comment 1 Enrico Scholz 2005-05-24 10:27:05 UTC
Created attachment 114766 [details]
preprocessed source file

Comment 2 Jakub Jelinek 2005-05-24 12:16:46 UTC
Apparently dietlibc is buggy, doesn't take into account that .eh_frame
section in more recent toolchains is read-only.
gcc's crtstuff.c from which apparently dietlibc was once copied uses
EH_FRAME_SECTION_CONST
macro for this, plus autoconf magic.
Plus you should certainly make sure dyn_start.c is compiled with -fno-exceptions,
as otherwise it is broken (otherwise __EH_FRAME_BEGIN__ very well might not be
the beginning of .eh_frame).
It is true that GCC should not ICE on any bad input, but this one is so special
case that I don't think it needs any changes.