// 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