--- Comment #2 from rguenth at gcc dot gnu dot org 2008-11-30 21:17 ---
Btw,
ERRMSG.12 = stat.11 != 0 ? (void) __builtin_memcpy ((void *) &err, (void *)
ERRMSG.12, 30) : (void) 0;
doesn't make sense. You assign void to ERRMSG.12 which is not void.
--
rguenth at gcc dot gnu dot org
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-11-30 21:15 ---
The failure is that fold_builtin_memory_op forgets to properly make the
return value available if 'ignore' is passed as true. This confuses
COND_EXPR gimplification. The fix may be non-trivial.
--
rguenth at gc