Add a hasExternalLinkage helper. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176607 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/Sema.cpp b/lib/Sema/Sema.cpp
index 8c79d82..6239172 100644
--- a/lib/Sema/Sema.cpp
+++ b/lib/Sema/Sema.cpp
@@ -360,7 +360,7 @@
return !SemaRef->ShouldWarnIfUnusedFileScopedDecl(DeclToCheck);
}
- if (D->getLinkage() == ExternalLinkage)
+ if (D->hasExternalLinkage())
return true;
return false;
@@ -402,13 +402,13 @@
if (FunctionDecl *FD = dyn_cast<FunctionDecl>(ND)) {
if (FD->isDefined())
continue;
- if (FD->getLinkage() == ExternalLinkage &&
+ if (FD->hasExternalLinkage() &&
!FD->getMostRecentDecl()->isInlined())
continue;
} else {
if (cast<VarDecl>(ND)->hasDefinition() != VarDecl::DeclarationOnly)
continue;
- if (ND->getLinkage() == ExternalLinkage)
+ if (ND->hasExternalLinkage())
continue;
}
diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp
index 78f1784..82d216e 100644
--- a/lib/Sema/SemaDecl.cpp
+++ b/lib/Sema/SemaDecl.cpp
@@ -1223,7 +1223,7 @@
}
// Only warn for unused decls internal to the translation unit.
- if (D->getLinkage() == ExternalLinkage)
+ if (D->hasExternalLinkage())
return false;
return true;
@@ -1584,7 +1584,7 @@
return;
// If this declaration has external
- bool hasExternalLinkage = (decl->getLinkage() == ExternalLinkage);
+ bool hasExternalLinkage = decl->hasExternalLinkage();
LookupResult::Filter filter = previous.makeFilter();
while (filter.hasNext()) {
@@ -4577,7 +4577,7 @@
}
}
if (WeakRefAttr *Attr = ND.getAttr<WeakRefAttr>()) {
- if (ND.getLinkage() == ExternalLinkage) {
+ if (ND.hasExternalLinkage()) {
S.Diag(Attr->getLocation(), diag::err_attribute_weakref_not_static);
ND.dropAttr<WeakRefAttr>();
}
@@ -6388,7 +6388,7 @@
// If there's a #pragma GCC visibility in scope, and this isn't a class
// member, set the visibility of this function.
- if (NewFD->getLinkage() == ExternalLinkage && !DC->isRecord())
+ if (NewFD->hasExternalLinkage() && !DC->isRecord())
AddPushedVisibilityAttribute(NewFD);
// If there's a #pragma clang arc_cf_code_audited in scope, consider
@@ -7782,7 +7782,7 @@
}
if (var->isThisDeclarationADefinition() &&
- var->getLinkage() == ExternalLinkage &&
+ var->hasExternalLinkage() &&
getDiagnostics().getDiagnosticLevel(
diag::warn_missing_variable_declarations,
var->getLocation())) {
@@ -7880,7 +7880,7 @@
const DeclContext *DC = VD->getDeclContext();
// If there's a #pragma GCC visibility in scope, and this isn't a class
// member, set the visibility of this variable.
- if (VD->getLinkage() == ExternalLinkage && !DC->isRecord())
+ if (VD->hasExternalLinkage() && !DC->isRecord())
AddPushedVisibilityAttribute(VD);
if (VD->isFileVarDecl())
diff --git a/lib/Sema/SemaDeclCXX.cpp b/lib/Sema/SemaDeclCXX.cpp
index 46010e4..22a31e0 100644
--- a/lib/Sema/SemaDeclCXX.cpp
+++ b/lib/Sema/SemaDeclCXX.cpp
@@ -11364,7 +11364,7 @@
Consumer.HandleVTable(Class, VTablesUsed[Canonical]);
// Optionally warn if we're emitting a weak vtable.
- if (Class->getLinkage() == ExternalLinkage &&
+ if (Class->hasExternalLinkage() &&
Class->getTemplateSpecializationKind() != TSK_ImplicitInstantiation) {
const FunctionDecl *KeyFunctionDef = 0;
if (!KeyFunction ||