summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-05-30 20:41:30 +0000
committerAnders Carlsson <andersca@mac.com>2009-05-30 20:41:30 +0000
commit28486d420b77902202c21443d85fd8e82daa0ce2 (patch)
treecba668018a07bf2537059e6a052fd5a4bdd7062e /clang/lib/Sema
parent2d4cada7f7dd5f66ca53386e2d4c18a6d84dcc64 (diff)
downloadbcm5719-llvm-28486d420b77902202c21443d85fd8e82daa0ce2.tar.gz
bcm5719-llvm-28486d420b77902202c21443d85fd8e82daa0ce2.zip
Remove VarDecl from CheckInitializerTypes now that CXXConstructExpr doesn't need to take a VarDecl anymore. (It still does, but it won't for long)
llvm-svn: 72630
Diffstat (limited to 'clang/lib/Sema')
-rw-r--r--clang/lib/Sema/Sema.h4
-rw-r--r--clang/lib/Sema/SemaDecl.cpp2
-rw-r--r--clang/lib/Sema/SemaInit.cpp9
3 files changed, 5 insertions, 10 deletions
diff --git a/clang/lib/Sema/Sema.h b/clang/lib/Sema/Sema.h
index f630e1d6fbc..f7d66daf203 100644
--- a/clang/lib/Sema/Sema.h
+++ b/clang/lib/Sema/Sema.h
@@ -2641,11 +2641,9 @@ public:
/// type checking declaration initializers (C99 6.7.8)
- /// FIXME: The VarDecl parameter should not have a default value,
- /// and all call sites should be audited.
bool CheckInitializerTypes(Expr *&simpleInit_or_initList, QualType &declType,
SourceLocation InitLoc,DeclarationName InitEntity,
- bool DirectInit, VarDecl *VD = 0);
+ bool DirectInit);
bool CheckInitList(InitListExpr *&InitList, QualType &DeclType);
bool CheckForConstantInitializer(Expr *e, QualType t);
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index 550a1441ac9..3ea0b416229 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -2551,7 +2551,7 @@ void Sema::AddInitializerToDecl(DeclPtrTy dcl, ExprArg init, bool DirectInit) {
VDecl->setInvalidDecl();
} else if (!VDecl->isInvalidDecl()) {
if (CheckInitializerTypes(Init, DclT, VDecl->getLocation(),
- VDecl->getDeclName(), DirectInit, VDecl))
+ VDecl->getDeclName(), DirectInit))
VDecl->setInvalidDecl();
// C++ 3.6.2p2, allow dynamic initialization of static initializers.
diff --git a/clang/lib/Sema/SemaInit.cpp b/clang/lib/Sema/SemaInit.cpp
index 6f71e1b3f72..20c712fa293 100644
--- a/clang/lib/Sema/SemaInit.cpp
+++ b/clang/lib/Sema/SemaInit.cpp
@@ -119,8 +119,7 @@ static void CheckStringInit(Expr *Str, QualType &DeclT, Sema &S) {
bool Sema::CheckInitializerTypes(Expr *&Init, QualType &DeclType,
SourceLocation InitLoc,
- DeclarationName InitEntity,
- bool DirectInit, VarDecl *VD) {
+ DeclarationName InitEntity, bool DirectInit) {
if (DeclType->isDependentType() ||
Init->isTypeDependent() || Init->isValueDependent())
return false;
@@ -175,10 +174,8 @@ bool Sema::CheckInitializerTypes(Expr *&Init, QualType &DeclType,
if (!Constructor)
return true;
- // FIXME: What do do if VD is null here?
- if (VD)
- Init = CXXConstructExpr::Create(Context, VD, DeclType, Constructor,
- false, &Init, 1);
+ Init = CXXConstructExpr::Create(Context, 0, DeclType, Constructor,
+ false, &Init, 1);
return false;
}
OpenPOWER on IntegriCloud