This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/17396] New: ICE in tree-int-cst at -O0


An ICE from Ruby, on at least ia64 and amd64, with and without optimization:  
  
struct sigcontext  
{  
  unsigned long int sc_gr;  
};  
  
#define N (((char *) &((struct sigcontext *) 0)->sc_gr) - (char *) 0)  
  
struct tag  
{  
  unsigned long _pad[N];  
};  
  
static struct tag *prot_tag;  
  
void  
error_print (void)  
{  
  struct tag _tag;  
  prot_tag = &_tag;  
}  
  
The interesting thing is that this ICEs in tree_low_cst, which  
is supposed to extract an integer from an INTEGER_CST tree, but  
the tree that we give it is not an INTEGER_CST at all:  
  
(gdb) p debug_generic_expr (t)  
(long unsigned int<D4>) &0B->sc_gr<D1465> * 8  
$3 = void

-- 
           Summary: ICE in tree-int-cst at -O0
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P2
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: steven at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17396


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]