@@ -674,8 +674,9 @@ impl char {
674674/// 'ß'.encode_utf8(&mut b); 
675675/// ``` 
676676#[ stable( feature = "unicode_encode_char" ,  since = "1.15.0" ) ]  
677-     #[ rustc_const_unstable ( feature = "const_char_encode_utf8" ,  issue  = "130512 " ) ]  
677+     #[ rustc_const_stable ( feature = "const_char_encode_utf8" ,  since  = "CURRENT_RUSTC_VERSION " ) ]  
678678    #[ inline]  
679+     #[ cfg_attr( bootstrap,  rustc_allow_const_fn_unstable( const_mut_refs) ) ]  
679680    pub  const  fn  encode_utf8 ( self ,  dst :  & mut  [ u8 ] )  -> & mut  str  { 
680681        // SAFETY: `char` is not a surrogate, so this is valid UTF-8. 
681682        unsafe  {  from_utf8_unchecked_mut ( encode_utf8_raw ( self  as  u32 ,  dst) )  } 
@@ -1770,9 +1771,11 @@ const fn len_utf16(code: u32) -> usize {
17701771/// Panics if the buffer is not large enough. 
17711772/// A buffer of length four is large enough to encode any `char`. 
17721773#[ unstable( feature = "char_internals" ,  reason = "exposed only for libstd" ,  issue = "none" ) ]  
1773- #[ rustc_const_unstable ( feature = "const_char_encode_utf8" ,  issue  = "130512 " ) ]  
1774+ #[ rustc_const_stable ( feature = "const_char_encode_utf8" ,  since  = "CURRENT_RUSTC_VERSION " ) ]  
17741775#[ doc( hidden) ]  
17751776#[ inline]  
1777+ #[ rustc_allow_const_fn_unstable( const_eval_select) ]  
1778+ #[ cfg_attr( bootstrap,  rustc_allow_const_fn_unstable( const_mut_refs) ) ]  
17761779pub  const  fn  encode_utf8_raw ( code :  u32 ,  dst :  & mut  [ u8 ] )  -> & mut  [ u8 ]  { 
17771780    const  fn  panic_at_const ( _code :  u32 ,  _len :  usize ,  _dst_len :  usize )  { 
17781781        // Note that we cannot format in constant expressions. 
0 commit comments