diff options
| -rw-r--r-- | clang/lib/AST/Decl.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/lib/AST/Decl.cpp b/clang/lib/AST/Decl.cpp index f9e57bc7064..842ce0f7804 100644 --- a/clang/lib/AST/Decl.cpp +++ b/clang/lib/AST/Decl.cpp @@ -297,9 +297,9 @@ static LinkageInfo getLVForNamespaceScopeDecl(const NamedDecl *D, LVFlags F) { for (const DeclContext *DC = D->getDeclContext(); !isa<TranslationUnitDecl>(DC); DC = DC->getParent()) { - if (!isa<NamespaceDecl>(DC)) continue; - if (llvm::Optional<Visibility> Vis - = cast<NamespaceDecl>(DC)->getExplicitVisibility()) { + const NamespaceDecl *ND = dyn_cast<NamespaceDecl>(DC); + if (!ND) continue; + if (llvm::Optional<Visibility> Vis = ND->getExplicitVisibility()) { LV.setVisibility(*Vis, false); F.ConsiderGlobalVisibility = false; break; |

