various "is invalid" cleanups for C++ ctors/dtors.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70021 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp
index 64c85a2..9710bd9 100644
--- a/lib/Sema/SemaDecl.cpp
+++ b/lib/Sema/SemaDecl.cpp
@@ -1993,8 +1993,7 @@
assert(DC->isRecord() &&
"Constructors can only be declared in a member context");
- if (!D.isInvalidType())
- D.setInvalidType(CheckConstructorDeclarator(D, R, SC));
+ R = CheckConstructorDeclarator(D, R, SC);
// Create the new declaration
NewFD = CXXConstructorDecl::Create(Context,
@@ -2005,8 +2004,7 @@
} else if (D.getKind() == Declarator::DK_Destructor) {
// This is a C++ destructor declaration.
if (DC->isRecord()) {
- if (!D.isInvalidType())
- D.setInvalidType(CheckDestructorDeclarator(D, R, SC));
+ R = CheckDestructorDeclarator(D, SC);
NewFD = CXXDestructorDecl::Create(Context,
cast<CXXRecordDecl>(DC),