bootstrap of ast fails on Linux/x86-64
Graham Stott
graham.stott@btinternet.com
Wed Feb 5 19:02:00 GMT 2003
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
More information about the Gcc-bugs
mailing list