@@ -141,8 +141,14 @@ impl<O> AssertKind<O> {
141
141
RemainderByZero ( _) => "attempt to calculate the remainder with a divisor of zero" ,
142
142
ResumedAfterReturn ( CoroutineKind :: Coroutine ) => "coroutine resumed after completion" ,
143
143
ResumedAfterReturn ( CoroutineKind :: Async ( _) ) => "`async fn` resumed after completion" ,
144
+ ResumedAfterReturn ( CoroutineKind :: Gen ( _) ) => {
145
+ bug ! ( "`gen fn` should just keep returning `None` after the first time" )
146
+ }
144
147
ResumedAfterPanic ( CoroutineKind :: Coroutine ) => "coroutine resumed after panicking" ,
145
148
ResumedAfterPanic ( CoroutineKind :: Async ( _) ) => "`async fn` resumed after panicking" ,
149
+ ResumedAfterPanic ( CoroutineKind :: Gen ( _) ) => {
150
+ bug ! ( "`gen fn` should just keep returning `None` after panicking" )
151
+ }
146
152
BoundsCheck { .. } | MisalignedPointerDereference { .. } => {
147
153
bug ! ( "Unexpected AssertKind" )
148
154
}
@@ -229,10 +235,14 @@ impl<O> AssertKind<O> {
229
235
DivisionByZero ( _) => middle_assert_divide_by_zero,
230
236
RemainderByZero ( _) => middle_assert_remainder_by_zero,
231
237
ResumedAfterReturn ( CoroutineKind :: Async ( _) ) => middle_assert_async_resume_after_return,
238
+ // FIXME(oli-obk): custom error message for `gen` blocks
239
+ ResumedAfterReturn ( CoroutineKind :: Gen ( _) ) => middle_assert_async_resume_after_return,
232
240
ResumedAfterReturn ( CoroutineKind :: Coroutine ) => {
233
241
middle_assert_coroutine_resume_after_return
234
242
}
235
243
ResumedAfterPanic ( CoroutineKind :: Async ( _) ) => middle_assert_async_resume_after_panic,
244
+ // FIXME(oli-obk): custom error message for `gen` blocks
245
+ ResumedAfterPanic ( CoroutineKind :: Gen ( _) ) => middle_assert_async_resume_after_panic,
236
246
ResumedAfterPanic ( CoroutineKind :: Coroutine ) => {
237
247
middle_assert_coroutine_resume_after_panic
238
248
}
0 commit comments