@@ -208,6 +208,7 @@ impl<O> AssertKind<O> {
208
208
LangItem :: PanicGenFnNonePanic
209
209
}
210
210
NullPointerDereference => LangItem :: PanicNullPointerDereference ,
211
+ InvalidEnumConstruction ( _) => LangItem :: PanicInvalidEnumConstruction ,
211
212
ResumedAfterDrop ( CoroutineKind :: Coroutine ( _) ) => LangItem :: PanicCoroutineResumedDrop ,
212
213
ResumedAfterDrop ( CoroutineKind :: Desugared ( CoroutineDesugaring :: Async , _) ) => {
213
214
LangItem :: PanicAsyncFnResumedDrop
@@ -284,6 +285,9 @@ impl<O> AssertKind<O> {
284
285
)
285
286
}
286
287
NullPointerDereference => write ! ( f, "\" null pointer dereference occurred\" " ) ,
288
+ InvalidEnumConstruction ( source) => {
289
+ write ! ( f, "\" trying to construct an enum from an invalid value {{}}\" , {source:?}" )
290
+ }
287
291
ResumedAfterReturn ( CoroutineKind :: Coroutine ( _) ) => {
288
292
write ! ( f, "\" coroutine resumed after completion\" " )
289
293
}
@@ -367,6 +371,7 @@ impl<O> AssertKind<O> {
367
371
middle_assert_coroutine_resume_after_panic
368
372
}
369
373
NullPointerDereference => middle_assert_null_ptr_deref,
374
+ InvalidEnumConstruction ( _) => middle_assert_invalid_enum_construction,
370
375
ResumedAfterDrop ( CoroutineKind :: Desugared ( CoroutineDesugaring :: Async , _) ) => {
371
376
middle_assert_async_resume_after_drop
372
377
}
@@ -420,6 +425,9 @@ impl<O> AssertKind<O> {
420
425
add ! ( "required" , format!( "{required:#?}" ) ) ;
421
426
add ! ( "found" , format!( "{found:#?}" ) ) ;
422
427
}
428
+ InvalidEnumConstruction ( source) => {
429
+ add ! ( "source" , format!( "{source:#?}" ) ) ;
430
+ }
423
431
}
424
432
}
425
433
}
0 commit comments