This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/21613] -fpic only: internal compiler error: in extract_insn, at recog.c:2083 (20010107-1.c:6)
- From: "rearnsha at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 11 Aug 2005 23:12:38 -0000
- Subject: [Bug target/21613] -fpic only: internal compiler error: in extract_insn, at recog.c:2083 (20010107-1.c:6)
- References: <20050517030252.21613.flash@pobox.com>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From rearnsha at gcc dot gnu dot org 2005-08-11 23:12 -------
Fixed in mainline by the introduction of tree-ssa. Creating a fix for 3.4 would
be very difficult and, given the rarity of this problem and the availibility of
a workaround (below), I see no point in trying to fix this.
The work-around is to declare a function variable and assign x+2 to that
variable. The fuction variable can then be called without problems. So
test-case can be re-expressed as:
unsigned long x[4];
void foo(void)
{
void (*f)() = (void(*)())(x + 2);
f();
}
which then compiles without error.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |FIXED
Target Milestone|--- |4.0.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21613