GCC produces the ICE for the following code with -fdump-tree-all. This happens
in both 4.4.x as well as 4.5.0. It is caused by infinitely recursive call to
dump_generic_node (tree-pretty-print.c)

gcc t.c -fdump-tree-all


int main(int argc, char *argv[]){
        int n;
        if(argc==2)
                n=atoi(argv[1]);
        else{
                exit(1);
        }

#define offset(x,y) ((char *)&(x->y))-((char *)x)

        struct {
                int a[n];
                char b[n];
                char c;
        }*bar;
        printf("%d %d %d %d
\n",offset(bar,a[0]),offset(bar,b[0]),offset(bar,c),sizeof(*bar));
        return 0;
}


-- 
           Summary: ICE with -fdump-tree-all
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: bmei at broadcom dot com
GCC target triplet: x86_64-unknown-linux-gnu


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

Reply via email to