------- Comment #2 from rguenth at gcc dot gnu dot org 2009-01-09 21:51 ------- I wouldn't consider this a bug. It's similar to
inline void foo(int i) { if (__builtin_constant_p (i)) you_loose(); } void bar() { foo (1); foo (2); } where the code is duplicated twice and both cases are constant. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38789