From: Rafael Espindola Date: Thu, 19 Apr 2012 04:27:47 +0000 (+0000) Subject: The explicit bit in LV already tracks exactly the same information as X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=415745474c3057cb135a8a0fb2655901b90f3170;p=clang The explicit bit in LV already tracks exactly the same information as DHasExplicitVisibility. Simplify the code a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155099 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/AST/Decl.cpp b/lib/AST/Decl.cpp index 12f8f7e0b1..7db38a9130 100644 --- a/lib/AST/Decl.cpp +++ b/lib/AST/Decl.cpp @@ -484,18 +484,14 @@ static LinkageInfo getLVForClassMember(const NamedDecl *D, LVFlags F) { LinkageInfo LV; - bool DHasExplicitVisibility = false; // If we have an explicit visibility attribute, merge that in. if (F.ConsiderVisibilityAttributes) { - if (llvm::Optional Vis = D->getExplicitVisibility()) { + if (llvm::Optional Vis = D->getExplicitVisibility()) LV.mergeVisibility(*Vis, true); - - DHasExplicitVisibility = true; - } } // Ignore both global visibility and attributes when computing our // parent's visibility if we already have an explicit one. - LVFlags ClassF = DHasExplicitVisibility ? + LVFlags ClassF = LV.visibilityExplicit() ? LVFlags::CreateOnlyDeclLinkage() : F; // If we're paying attention to global visibility, apply