http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57393
--- Comment #7 from Dmitry Gorbachev <d.g.gorbachev at gmail dot com> --- For convenience, I put here a testcase from bug 57400. Joost VandeVondele: "this second testcase is almost certainly a dup of PR57393. It passes with -fno-tree-reassoc. The testcase is conveniently smaller." ======================== 8< ======================== extern void bar(double); struct S { int n; }; void foo(struct S s, double a, int i, int j, int k) { struct S t; bar(s.n * a * i * j); t.n = s.n * a * i * k; } ======================== >8 ======================== $ gcc -S -g -O -ffast-math bug.c bug.c: In function 'foo': bug.c:7:6: error: definition in block 2 follows the use void foo(struct S s, double a, int i, int j, int k) ^ for SSA_NAME: _4 in statement: # DEBUG D#3 => _4 * _6 bug.c:7:6: internal compiler error: verify_ssa failed 0x888c299 verify_ssa(bool) ../../gcc-4.9/gcc/tree-ssa.c:1046 0x85dc5ca execute_function_todo ../../gcc-4.9/gcc/passes.c:1970 0x85db901 do_per_function ../../gcc-4.9/gcc/passes.c:1707 0x85dc6df execute_todo ../../gcc-4.9/gcc/passes.c:2002 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. GCC 4.9.0 20130630 (experimental).