Skip to content

Commit efb7f24

Browse files
authored
Merge pull request #64618 from xymus/fix-106430304
[Serialization] Pass up deserialization errors when reading generic type params
2 parents 8864251 + 1ec1df6 commit efb7f24

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

lib/Serialization/Deserialization.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6323,9 +6323,12 @@ DESERIALIZE_TYPE(GENERIC_TYPE_PARAM_TYPE)(
63236323
scratch, parameterPack, declIDOrDepth, indexPlusOne);
63246324

63256325
if (indexPlusOne == 0) {
6326-
auto genericParam =
6327-
dyn_cast_or_null<GenericTypeParamDecl>(MF.getDecl(declIDOrDepth));
6326+
auto genericParamOrError = MF.getDeclChecked(declIDOrDepth);
6327+
if (!genericParamOrError)
6328+
return genericParamOrError.takeError();
63286329

6330+
auto genericParam =
6331+
dyn_cast_or_null<GenericTypeParamDecl>(genericParamOrError.get());
63296332
if (!genericParam)
63306333
return MF.diagnoseFatal();
63316334

0 commit comments

Comments
 (0)