------- Additional Comments From steven at gcc dot gnu dot org 2005-04-10 16:01 ------- Also happens with mainline. extern struct symbol_tab_ { void *S_nil; } symbol_tab_data; typedef struct { unsigned int length; void *data[0]; } s; void * allocate_vector (unsigned int len) { unsigned int need; s *ptr; void *obj; ptr->length = len; void **p = &ptr->data[0]; do { *p++ = ((((unsigned char *) ((&symbol_tab_data.S_nil)) + ((unsigned long int) (((1L << (2)))) << 48)))); } while (!(--len == 0)); return obj; } t.c: In function 'allocate_vector': t.c:25: error: unrecognizable insn: (insn 56 55 51 0 (set (reg/f:DI 70) (plus:DI (reg:DI 73) (const_int 1125899906842624 [0x4000000000000]))) -1 (insn_list:REG_DEP_TRUE 55 (nil)) (expr_list:REG_DEAD (reg:DI 73) (expr_list:REG_EQUAL (const:DI (plus:DI (symbol_ref:DI ("symbol_tab_data") [flags 0x40] <var_decl 0x2a95a36270 symbol_tab_data>) (const_int 1125899906842624 [0x4000000000000]))) (nil)))) t.c:25: internal compiler error: in extract_insn, at recog.c:2082
-- What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed| |1 Last reconfirmed|0000-00-00 00:00:00 |2005-04-10 16:01:50 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20928