Check ConsiderGlobalVisibility before using -fvisibility.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155100 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola 2012-04-19 04:37:16 +00:00
Родитель 415745474c
Коммит 4fc1490572
1 изменённых файлов: 4 добавлений и 2 удалений

Просмотреть файл

@ -291,7 +291,8 @@ static LinkageInfo getLVForNamespaceScopeDecl(const NamedDecl *D, LVFlags F) {
}
}
LV.mergeVisibility(Context.getLangOpts().getVisibilityMode());
if (F.ConsiderGlobalVisibility)
LV.mergeVisibility(Context.getLangOpts().getVisibilityMode());
// C++ [basic.link]p4:
@ -532,7 +533,8 @@ static LinkageInfo getLVForClassMember(const NamedDecl *D, LVFlags F) {
if (LV.linkage() == UniqueExternalLinkage)
return LinkageInfo::uniqueExternal();
LV.mergeVisibility(D->getASTContext().getLangOpts().getVisibilityMode());
if (F.ConsiderGlobalVisibility)
LV.mergeVisibility(D->getASTContext().getLangOpts().getVisibilityMode());
if (const CXXMethodDecl *MD = dyn_cast<CXXMethodDecl>(D)) {
// If the type of the function uses a type with unique-external