2 // Regression test for #36053. ICE was caused due to obligations being
3 // added to a special, dedicated fulfillment cx during a
4 // probe. Problem seems to be related to the particular definition of
5 // `FusedIterator` in std but I was not able to isolate that into an
8 use std::iter::FusedIterator;
10 struct Thing<'a>(#[allow(unused_tuple_struct_fields)] &'a str);
11 impl<'a> Iterator for Thing<'a> {
13 fn next(&mut self) -> Option<&'a str> {
18 impl<'a> FusedIterator for Thing<'a> {}
21 Thing("test").fuse().filter(|_| true).count();