This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: bootstrap of ast fails on Linux/x86-64
- From: Graham Stott <graham dot stott at btinternet dot com>
- To: Andreas Jaeger <aj at suse dot de>
- Cc: gcc-bugs at gcc dot gnu dot org, Diego Novillo <dnovillo at redhat dot com>
- Date: Wed, 05 Feb 2003 19:04:12 +0000
- Subject: Re: bootstrap of ast fails on Linux/x86-64
- References: <ho4r7i3or0.fsf@byrd.suse.de>
Andreas,
Andreas Jaeger wrote:
Trying to bootstrap the current ast branch, I get this failure on
Linux/x86-64:
stage1/xgcc -Bstage1/ -B/opt/gcc/tree-ssa-20020619-branch/x86_64-unknown-linux-gnu/bin/ -c -g -O2 -gnatpg -gnata -I- -I. -Iada -I/usr/src/aj/cvs/gcc-tree-ssa-20020619-branch/gcc/ada /usr/src/aj/cvs/gcc-tree-ssa-20020619-branch/gcc/ada/errout.adb -o ada/errout.o
+===========================GNAT BUG DETECTED==============================+
| 3.5-tree-ssa 20030202 (experimental) (x86_64-unknown-linux-gnu) GCC error:|
| in walk_tree, at tree-inline.c:1394 |
| Error detected at /usr/src/aj/cvs/gcc-tree-ssa-20020619-branch/gcc/ada/errout.adb:477:28|
| Please submit a bug report; see http://gcc.gnu.org/bugs.html. |
| Include the entire contents of this bug box in the report. |
| Include the exact gcc or gnatmake command that you entered. |
| Also include sources listed below in gnatchop format |
| concatenated together with no headers between files. |
+==========================================================================+
Andreas
I think this occurs on all targets when bootstrapping with ADA in the tree.
It occurs because walk_tree comes across a PLACEHOLDER_EXPR node which isn't handled
by the switch statement so it triggers the abort () in the default case.
Here's a typical node which triggers the abort.
<placeholder_expr 0x401b01c0
type <record_type 0x401ae690 types__string_ptr asm_written type_0 DI
size <integer_cst 0x400255e0 constant 64>
unit size <integer_cst 0x400257c0 constant 8>
user align 64 symtab 1073875448 alias set 25
fields <field_decl 0x401ae7e0 P_ARRAY type <pointer_type 0x401aed90>
unsigned nonaddressable SI file tree-ssa-branch/gcc/gcc/ada/errout.ads line 52
size <integer_cst 0x40025820 constant 32>
unit size <integer_cst 0x40025880 constant 4>
align 32 offset_align 128
offset <integer_cst 0x400258a0 constant 0>
bit offset <integer_cst 0x40025960 constant 0> context <record_type 0x401ae690 types__string_ptr> arguments <integer_cst 0x400258a0 0> chain <field_decl 0x401ae850 P_BOUNDS>
tree-ssa-branch/gcc/gcc/ada/errout.ads:52>
unconstrained array <unconstrained_array_type 0x401ae700 string type <record_type 0x401ae690 types__string_ptr>
BLK
align 8 symtab 0 alias set -1
pointer_to_this <record_type 0x401ae690 types__string_ptr> reference_to_this <record_type 0x401ae690 types__string_ptr>>
chain <type_decl 0x401ae8c0 string___XUP>>
>
If my memory serves me correctly the Ada front makes more use of PLACEHOLDER_EXPR nodes than the
other front ends.
Cheers
Graham