1 /* { dg-add-options stack_size } */ 2 3 /* PR optimization/8750 4 Used to fail under Cygwin with 5 -O2 -fomit-frame-pointer 6 Testcase by David B. Trout */ 7 8 #if defined(STACK_SIZE) && STACK_SIZE < 16000 9 #define ARRAY_SIZE (STACK_SIZE / 2) 10 #define STRLEN (ARRAY_SIZE - 9) 11 #else 12 #define ARRAY_SIZE 15000 13 #define STRLEN 13371 14 #endif 15 16 extern void *memset (void *, int, __SIZE_TYPE__); 17 extern void abort (void); 18 foo()19static void foo () 20 { 21 char a[ARRAY_SIZE]; 22 23 a[0]=0; 24 memset( &a[0], 0xCD, STRLEN ); 25 a[STRLEN]=0; 26 if (strlen(a) != STRLEN) 27 abort (); 28 } 29 main(int argc,char * argv[])30int main ( int argc, char* argv[] ) 31 { 32 foo(); 33 return 0; 34 } 35