================ @@ -0,0 +1,48 @@ +// RUN: %clang_cl --target=x86_64-windows-msvc /c /Z7 -o %t.obj -- %s +// RUN: llvm-pdbutil dump -all %t.obj | FileCheck %s + +class Foo { + public: + void foo() { + int aa = 4; + int bb = 5; + int cc = 6; + auto f = [=] { + int aaa = a + aa; + int bbb = b + bb; + int ccc = c + cc; + }; + f(); + } + + private: + int a = 1; + int b = 2; + int c = 3; +}; + +int main() { + Foo f; + f.foo(); + + return 0; +} + +// CHECK: Types (.debug$T) +// CHECK-NEXT: ============================================================ +// CHECK:[[FooIndex:0x[^ ]*]] | LF_CLASS [size = 36] `Foo` +// CHECK: unique name: `.?AVFoo@@` +// CHECK:[[FooIndex:0x[^ ]*]] | LF_FIELDLIST [size = 52] ---------------- ZequanWu wrote:
Nit: You are creating multiple `FooIndex` but not using it. The purpose of regex string substitution is to capture a pattern that will show up later. Different patterns should have different names. Here, it could be `[[FooFieldIndex:0x[^ ]*]]` In order to use the patterns later, use `0x[[FooFieldIndex]]`. Same applies to other indexes. https://github.com/llvm/llvm-project/pull/71564 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits