diff --git a/clang/lib/Sema/TreeTransform.h b/clang/lib/Sema/TreeTransform.h index 655f248d113837..79bc5e5c55c87e 100644 --- a/clang/lib/Sema/TreeTransform.h +++ b/clang/lib/Sema/TreeTransform.h @@ -6737,8 +6737,13 @@ QualType TreeTransform::TransformUnaryTransformType( QualType Result = TL.getType(); if (Result->isDependentType()) { const UnaryTransformType *T = TL.getTypePtr(); - QualType NewBase = - getDerived().TransformType(TL.getUnderlyingTInfo())->getType(); + + TypeSourceInfo *NewBaseTSI = + getDerived().TransformType(TL.getUnderlyingTInfo()); + if (!NewBaseTSI) + return QualType(); + QualType NewBase = NewBaseTSI->getType(); + Result = getDerived().RebuildUnaryTransformType(NewBase, T->getUTTKind(), TL.getKWLoc());