diff options
-rw-r--r-- | lib/Sema/SemaExprCXX.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/Sema/SemaExprCXX.cpp b/lib/Sema/SemaExprCXX.cpp index 90d6a0a026..ef0ad6f8b1 100644 --- a/lib/Sema/SemaExprCXX.cpp +++ b/lib/Sema/SemaExprCXX.cpp @@ -2783,7 +2783,12 @@ Sema::OwningExprResult Sema::ActOnPseudoDestructorExpr(Scope *S, ExprArg Base, ScopeType = GetTypeFromParser(T.get(), &ScopeTypeInfo); } } - + + if (!ScopeType.isNull() && !ScopeTypeInfo) + ScopeTypeInfo = Context.getTrivialTypeSourceInfo(ScopeType, + FirstTypeName.StartLocation); + + return BuildPseudoDestructorExpr(move(Base), OpLoc, OpKind, SS, ScopeTypeInfo, CCLoc, DestructedTypeInfo, HasTrailingLParen); |