De-memberify the VarDecl and FunctionDecl StorageClass enums.

This lets us remove Sema.h's dependency on Expr.h and Decl.h.

llvm-svn: 112156
This commit is contained in:
John McCall
2010-08-26 03:08:43 +00:00
parent f6418b804e
commit 8e7d656a4a
24 changed files with 285 additions and 249 deletions

View File

@@ -145,7 +145,7 @@ void CodeGenModule::ErrorUnsupported(const Decl *D, const char *Type,
LangOptions::VisibilityMode
CodeGenModule::getDeclVisibilityMode(const Decl *D) const {
if (const VarDecl *VD = dyn_cast<VarDecl>(D))
if (VD->getStorageClass() == VarDecl::PrivateExtern)
if (VD->getStorageClass() == SC_PrivateExtern)
return LangOptions::Hidden;
if (const VisibilityAttr *attr = D->getAttr<VisibilityAttr>()) {
@@ -965,7 +965,7 @@ CodeGenModule::GetOrCreateLLVMGlobal(llvm::StringRef MangledName,
GV->setConstant(DeclIsConstantGlobal(Context, D));
// FIXME: Merge with other attribute handling code.
if (D->getStorageClass() == VarDecl::PrivateExtern)
if (D->getStorageClass() == SC_PrivateExtern)
GV->setVisibility(llvm::GlobalValue::HiddenVisibility);
if (D->hasAttr<WeakAttr>() ||