summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDeclAttr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/lib/Sema/SemaDeclAttr.cpp')
-rw-r--r--clang/lib/Sema/SemaDeclAttr.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaDeclAttr.cpp b/clang/lib/Sema/SemaDeclAttr.cpp
index 51f9e45d7e2..1f90b75e57c 100644
--- a/clang/lib/Sema/SemaDeclAttr.cpp
+++ b/clang/lib/Sema/SemaDeclAttr.cpp
@@ -5378,7 +5378,7 @@ static void handleDelayedForbiddenType(Sema &S, DelayedDiagnostic &diag,
llvm::StringRef explanation;
if (decl && isForbiddenTypeAllowed(S, decl, diag, explanation)) {
decl->addAttr(UnavailableAttr::CreateImplicit(S.Context, explanation,
- diag.Loc));
+ UnavailableAttr::ISK_ForbiddenType, diag.Loc));
return;
}
if (S.getLangOpts().ObjCAutoRefCount)
@@ -5464,7 +5464,8 @@ static void DoEmitAvailabilityWarning(Sema &S, Sema::AvailabilityDiagnostic K,
if (!Message.empty()) {
if (auto attr = D->getAttr<UnavailableAttr>())
- if (attr->isImplicit())
+ if (attr->isImplicit() &&
+ attr->getImplicitSource() == UnavailableAttr::ISK_ForbiddenType)
diag_available_here = diag::note_unavailability_inferred_here;
}
OpenPOWER on IntegriCloud