This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
CSE bug: Internal compiler error in `mark_jump_label'
- To: gcc-bugs at gcc dot gnu dot org
- Subject: CSE bug: Internal compiler error in `mark_jump_label'
- From: Greg McGary <gkm at eng dot ascend dot com>
- Date: Wed, 22 Dec 1999 12:24:37 -1000
This is an adaptation of gcc.c-torture/compile/labels-1.c that
simulates the effect of -fbounded-pointers:
struct bp { void *v, *b, *e; };
f ()
{
struct bp x = { &&L2 };
if (&&L3 - &&L1 > 1)
abort ();
L1:return 1;
L2:abort ();
L3:;
}
It compiles fine with 2.95, but has failed with 2.96 for at least a
couple of months.
With the broken 2.96, this succeeds:
gcc -O1 -c labels-1.c
but this fails:
gcc -O1 -c -fgcse -frerun-cse-after-loop labels-1.c
Here's the diagnostic:
labels-1.c: In function `f':
labels-1.c:10: Internal compiler error in `mark_jump_label', at jump.c:3965
mark_jump_label expects to see LABEL_REF refer to a CODE_LABEL, but
instead chokes on this:
(label_ref:SI (note 37 34 38 "" NOTE_INSN_DELETED_LABEL))
Greg