Files
clang-p2996/clang/test/InterfaceStubs/lambda.cpp
Puyan Lotfi bd8c8827d9 [clang][IFS] Prevent Clang-IFS from Leaking symbols from inside a block.
Built libdispatch with clang interface stubs. Ran into some block
related issues. Basically VarDecl symbols can leak out because I wasn't
checking the case where a VarDecl is contained inside a BlockDecl
(versus a method or function).

This patch checks that a VarDecl is not a child decl of a BlockDecl.
This patch also does something very similar for c++ lambdas as well.

Differential Revision: https://reviews.llvm.org/D71301
2020-01-13 16:04:27 -05:00

11 lines
319 B
C++

// RUN: %clang_cc1 -emit-interface-stubs -o - %s | FileCheck %s
// CHECK: --- !experimental-ifs-v1
// CHECK-NEXT: IfsVersion: 1.0
// CHECK-NEXT: Triple:
// CHECK-NEXT: ObjectFileFormat: ELF
// CHECK-NEXT: Symbols:
// CHECK-NEXT: "f" : { Type: Object, Size: 1 }
// CHECK-NEXT: ...
auto f = [](void* data) { int i; };