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



--- Comment #8 from Dmitry G. Dyachenko <dimhen at gmail dot com> 2012-10-24 
09:58:31 UTC ---

i re-check 192757



--enable-checking=release FAIL with

$ bash -x tf.sh

+ g++ -flto -fpreprocessed -c 1.ii -o 1.o

+ g++ -flto -O1 -fpreprocessed -c 2.ii -o 2.o

+ g++ -Ofast -flto -o t 1.o 2.o

In file included from :0:0:

1.ii: In member function 'parse':

1.ii:6:17: internal compiler error: Segmentation fault

     virtual int parse ()

                 ^

0x7539bf crash_signal

    /home/dimhen/src/gcc-current/gcc/toplev.c:335

0x5fd754 internal_fn_flags

    /home/dimhen/src/gcc-current/gcc/internal-fn.h:48

0x5fd754 gimple_call_flags(gimple_statement_d const*)

    /home/dimhen/src/gcc-current/gcc/gimple.c:1883

0x80262f gimple_call_noreturn_p

    /home/dimhen/src/gcc-current/gcc/gimple.h:2413

0x80262f update_stmt_operands(gimple_statement_d*)

    /home/dimhen/src/gcc-current/gcc/tree-ssa-operands.c:1082

0xb136b6 update_stmt

    /home/dimhen/src/gcc-current/gcc/gimple.h:1531

0xb136b6 try_unroll_loop_completely

    /home/dimhen/src/gcc-current/gcc/tree-ssa-loop-ivcanon.c:552

0xb136b6 canonicalize_loop_induction_variables

    /home/dimhen/src/gcc-current/gcc/tree-ssa-loop-ivcanon.c:670

0xb1487e tree_unroll_loops_completely(bool, bool)

    /home/dimhen/src/gcc-current/gcc/tree-ssa-loop-ivcanon.c:833





--enable-checking=yes,df,fold,rtl,tree FAIL as



1.ii: In member function 'parse':

1.ii:6:17: internal compiler error: gimple check: expected

gimple_cond(error_mark), have gimple_call() in gimple_cond_set_lhs, at

gimple.h:2553

     virtual int parse ()

                 ^

0x6b1063 gimple_check_failed(gimple_statement_d const*, char const*, int, char

const*, gimple_code, tree_code)

    /home/dimhen/src/gcc-current/gcc/gimple.c:1160

0x107fe69 gimple_cond_set_lhs

    /home/dimhen/src/gcc-current/gcc/gimple.h:2553

0x107f448 gimple_cond_set_lhs

    /home/dimhen/src/gcc-current/gcc/tree-ssa-loop-ivcanon.c:536

0x107f448 gimple_cond_make_true

    /home/dimhen/src/gcc-current/gcc/gimple.h:2649

0x107f448 try_unroll_loop_completely

    /home/dimhen/src/gcc-current/gcc/tree-ssa-loop-ivcanon.c:551

0x107f448 canonicalize_loop_induction_variables

    /home/dimhen/src/gcc-current/gcc/tree-ssa-loop-ivcanon.c:670

0x107f982 tree_unroll_loops_completely(bool, bool)

    /home/dimhen/src/gcc-current/gcc/tree-ssa-loop-ivcanon.c:833



$ cat 1.ii

class A

{

};

template < int (*t_parser) () > class B

{

    virtual int parse ()

    {

        A a;

        t_parser ();

    }

};



extern "C" int f ();

class C:B < f >

{

};

void

g ()

{

    new C;

}



$ cat 2.ii

extern "C" int f ();

char *a[] = { 0, 0 };



void bar (char *);

int

f ()

{

    int i;

    while (1)

        bar (a[i++]);

}

Reply via email to