From 9e749f663647545fd897e516cee57d19c3daeca5 Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Mon, 28 Nov 2016 23:58:04 +0000 Subject: [PATCH] Avoid lambdas in default member initializers to work around clang bug On Windows, Clang is mangling lambdas in default member initializers incorrectly. See PR31197. This is causing redness on the self-host bots. Work around the problem locally so we aren't blind to further issues. llvm-svn: 288089 --- clang/unittests/Tooling/LookupTest.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/clang/unittests/Tooling/LookupTest.cpp b/clang/unittests/Tooling/LookupTest.cpp index 632acbe..cc3922d 100644 --- a/clang/unittests/Tooling/LookupTest.cpp +++ b/clang/unittests/Tooling/LookupTest.cpp @@ -13,18 +13,19 @@ using namespace clang; namespace { struct GetDeclsVisitor : TestVisitor { - std::function OnCall = [&](CallExpr *Expr) {}; - std::function OnRecordTypeLoc = [&](RecordTypeLoc Type) { - }; + std::function OnCall; + std::function OnRecordTypeLoc; SmallVector DeclStack; bool VisitCallExpr(CallExpr *Expr) { - OnCall(Expr); + if (OnCall) + OnCall(Expr); return true; } bool VisitRecordTypeLoc(RecordTypeLoc Loc) { - OnRecordTypeLoc(Loc); + if (OnRecordTypeLoc) + OnRecordTypeLoc(Loc); return true; } -- 2.7.4