add a new isNull() method to DeclGroupRef.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68909 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/clang/AST/DeclGroup.h b/include/clang/AST/DeclGroup.h
index 1a85463..6566689 100644
--- a/include/clang/AST/DeclGroup.h
+++ b/include/clang/AST/DeclGroup.h
@@ -84,6 +84,7 @@
typedef Decl** iterator;
typedef Decl* const * const_iterator;
+ bool isNull() const { return D == 0; }
bool isSingleDecl() const { return getKind() == SingleDeclKind; }
bool isDeclGroup() const { return getKind() == DeclGroupKind; }
diff --git a/lib/Sema/SemaStmt.cpp b/lib/Sema/SemaStmt.cpp
index d2e1586..1428c48 100644
--- a/lib/Sema/SemaStmt.cpp
+++ b/lib/Sema/SemaStmt.cpp
@@ -40,10 +40,11 @@
Sema::OwningStmtResult Sema::ActOnDeclStmt(DeclGroupPtrTy dg,
SourceLocation StartLoc,
SourceLocation EndLoc) {
- // If we have an invalid decl, just return an error.
- if (!dg) return StmtError();
-
DeclGroupRef DG = dg.getAsVal<DeclGroupRef>();
+
+ // If we have an invalid decl, just return an error.
+ if (DG.isNull()) return StmtError();
+
return Owned(new (Context) DeclStmt(DG, StartLoc, EndLoc));
}