/* { dg-do compile } */ /* { dg-options "-Walloca-larger-than=2000 -O2" } */ // Test when the conditionals are incorrectly reversed. void f (void *); void foo (__SIZE_TYPE__ len) { void *p; if (len < 500) p = __builtin_malloc (len); else p = __builtin_alloca (len); // { dg-warning "argument to .alloca. may be too large" } f (p); } void bar (__SIZE_TYPE__ len) { void *p; if (len > 500) p = __builtin_alloca (len); // { dg-warning "argument to .alloca. may be too large" } else p = __builtin_malloc (len); f (p); }