Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 227376 - internal compiler error: in dwarf2out_finish, at dwarf2out.c:14148
Summary: internal compiler error: in dwarf2out_finish, at dwarf2out.c:14148
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: gcc
Version: 6
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-02-05 18:25 UTC by Serge Pavlovsky
Modified: 2007-11-30 22:11 UTC (History)
1 user (show)

Fixed In Version: 4.1.2-1
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-02-16 20:21:10 UTC


Attachments (Terms of Use)

Description Serge Pavlovsky 2007-02-05 18:25:28 UTC
Description of problem:
internal compiler error: in dwarf2out_finish, at dwarf2out.c:14148

Version-Release number of selected component (if applicable):
gcc-4.1.1-51.fc6

How reproducible:
[pal@underdark ice]$ cat b.hpp
#pragma interface
namespace N {
        typedef int A;
}
inline void g ( ) {
        static N :: A a = 0;
        a = a;
}
[pal@underdark ice]$ cat a.cpp 
#include "b.hpp"
void f ( ) {
        g ( );
}
[pal@underdark ice]$ LC_ALL=C /usr/bin/g++ -g2 -c a.cpp  
a.cpp:4: internal compiler error: in dwarf2out_finish, at dwarf2out.c:14148
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/ccAA5ben.out file, please attach this to
your bugreport.

Actual results:
ice

Expected results:
no ice

Additional info:
it doesnt fail when
debug level <= 1
or no #pragma interface
or typedef is in global namespace
or its a class, not typedef
or variable isnt static
------
preprocessed source:
// /usr/libexec/gcc/x86_64-redhat-linux/4.1.1/cc1plus -quiet -D_GNU_SOURCE a.cpp
-quiet -dumpbase a.cpp -mtune=generic -auxbase a -g2 
-o - -frandom-seed=0
# 1 "a.cpp"
# 1 "/home/pal/tmp/ice//"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "a.cpp"
# 1 "b.hpp" 1
#pragma interface
namespace N {
 typedef int A;
}
inline void g ( ) {
 static N :: A a = 0;
 a = a;
}
# 2 "a.cpp" 2
void f ( ) {
 g ( );
}

Comment 1 Alexandre Oliva 2007-02-13 04:58:04 UTC
Patch in http://gcc.gnu.org/ml/gcc-patches/2007-02/msg01127.html

Comment 2 Jakub Jelinek 2007-02-16 20:21:10 UTC
Should be fixed in gcc-4.1.2-1 in rawhide.


Note You need to log in before you can comment on or make changes to this bug.