1*5fc4828aSYi Kong // Test the warn-stack-size function attribute is not generated when -Wframe-larger-than is ignored 2*5fc4828aSYi Kong // through pragma. 3*5fc4828aSYi Kong 4*5fc4828aSYi Kong // RUN: %clang_cc1 -fwarn-stack-size=70 -emit-llvm -o - %s | FileCheck %s 5*5fc4828aSYi Kong // CHECK: "warn-stack-size"="70" 6*5fc4828aSYi Kong 7*5fc4828aSYi Kong // RUN: %clang_cc1 -DIGNORED -fwarn-stack-size=70 -emit-llvm -o - %s | FileCheck %s --check-prefix=IGNORED 8*5fc4828aSYi Kong // IGNORED-NOT: "warn-stack-size"="70" 9*5fc4828aSYi Kong 10*5fc4828aSYi Kong extern void doIt(char *); 11*5fc4828aSYi Kong 12*5fc4828aSYi Kong #ifdef IGNORED 13*5fc4828aSYi Kong #pragma GCC diagnostic push 14*5fc4828aSYi Kong #pragma GCC diagnostic ignored "-Wframe-larger-than" 15*5fc4828aSYi Kong #endif 16*5fc4828aSYi Kong frameSizeAttr()17*5fc4828aSYi Kongvoid frameSizeAttr() { 18*5fc4828aSYi Kong char buffer[80]; 19*5fc4828aSYi Kong doIt(buffer); 20*5fc4828aSYi Kong } 21*5fc4828aSYi Kong 22*5fc4828aSYi Kong #ifdef IGNORED 23*5fc4828aSYi Kong #pragma GCC diagnostic pop 24*5fc4828aSYi Kong #endif 25