• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // REQUIRES: x86-registered-target
2 // RUN: %clang_cc1 %s -mllvm -warn-stack-size=0 -emit-codegen-only -triple=i386-apple-darwin 2>&1 | FileCheck %s
3 
4 // TODO: Emit rich diagnostics for thunks and move this into the appropriate test file.
5 // Until then, test that we fall back and display the LLVM backend diagnostic.
6 namespace frameSizeThunkWarning {
7   struct A {
8     virtual void f();
9   };
10 
11   struct B : virtual A {
12     virtual void f();
13   };
14 
15   // CHECK: warning: stack frame size of {{[0-9]+}} bytes in function 'frameSizeThunkWarning::B::f'
16   // CHECK: warning: stack size limit exceeded ({{[0-9]+}}) in {{[^ ]+}}
f()17   void B::f() { }
18 }
19