| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- // RUN: %clang_cc1 -x c++-header -emit-pch %s -o %t
- // RUN: %clang_cc1 -include-pch %t -fsyntax-only -verify %s
- // expected-no-diagnostics
- #ifndef HEADER_INCLUDED
- #define HEADER_INCLUDED
- static inline void foo(int &x, int y) {
- // Capturing x and y
- #pragma clang __debug captured
- {
- x += y;
- }
- }
- struct C {
- int val;
- explicit C(int v) : val(v) { }
- void bar(int &x) {
- // Capturing x and this
- #pragma clang __debug captured
- {
- x += val;
- }
- }
- };
- #else
- void test_foo(int &x) {
- foo(x, 10);
- }
- void test_bar(int &x) {
- C Obj(10);
- Obj.bar(x);
- }
- #endif
|