From 60fd119a293b56529c4a49f60103679eaced0aed Mon Sep 17 00:00:00 2001
From: Colin Finck <colin@reactos.org>
Date: Sun, 23 Apr 2023 18:22:58 +0200
Subject: [PATCH] Implement FusedIterator for DecodeUtf16 when the inner
 iterator does

---
 library/core/src/char/decode.rs | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/library/core/src/char/decode.rs b/library/core/src/char/decode.rs
index dbfe251f2bb71..d76f983d87cce 100644
--- a/library/core/src/char/decode.rs
+++ b/library/core/src/char/decode.rs
@@ -2,6 +2,7 @@
 
 use crate::error::Error;
 use crate::fmt;
+use crate::iter::FusedIterator;
 
 /// An iterator that decodes UTF-16 encoded code points from an iterator of `u16`s.
 ///
@@ -105,6 +106,9 @@ impl<I: Iterator<Item = u16>> Iterator for DecodeUtf16<I> {
     }
 }
 
+#[stable(feature = "decode_utf16_fused_iterator", since = "CURRENT_RUSTC_VERSION")]
+impl<I: Iterator<Item = u16> + FusedIterator> FusedIterator for DecodeUtf16<I> {}
+
 impl DecodeUtf16Error {
     /// Returns the unpaired surrogate which caused this error.
     #[must_use]