File tree Expand file tree Collapse file tree 2 files changed +7
-2
lines changed Expand file tree Collapse file tree 2 files changed +7
-2
lines changed Original file line number Diff line number Diff line change 11#![ feature( rustc_private) ]
2+ #![ feature( string_leak) ]
23#![ deny( clippy:: expect_used) ]
34#![ deny( clippy:: unwrap_used) ]
45#![ deny( clippy:: panic) ]
@@ -119,14 +120,17 @@ impl Callbacks {
119120 let lib = result. unwrap_or_else ( |err| {
120121 // smoelius: rust-lang/rust#111633 changed the type of `early_error`'s `msg`
121122 // argument from `&str` to `impl Into<DiagnosticMessage>`.
123+ // smoelius: And rust-lang/rust#111748 made it that `msg` is borrowed for
124+ // `'static`. Since the program is about to exit, it's probably fine to leak the
125+ // string.
122126 rustc_session:: early_error (
123127 rustc_session:: config:: ErrorOutputType :: default ( ) ,
124128 format ! (
125129 "could not load library `{}`: {}" ,
126130 path. to_string_lossy( ) ,
127131 err
128132 )
129- . as_str ( ) ,
133+ . leak ( ) ,
130134 ) ;
131135 } ) ;
132136
Original file line number Diff line number Diff line change 168168//! [examples]: ../../examples
169169
170170#![ feature( rustc_private) ]
171+ #![ feature( string_leak) ]
171172#![ warn( unused_extern_crates) ]
172173
173174#[ allow( unused_extern_crates) ]
@@ -457,7 +458,7 @@ pub fn init_config(sess: &rustc_session::Session) {
457458 try_init_config ( sess) . unwrap_or_else ( |err| {
458459 rustc_session:: early_error (
459460 rustc_session:: config:: ErrorOutputType :: default ( ) ,
460- format ! ( "could not read configuration file: {err}" ) . as_str ( ) ,
461+ format ! ( "could not read configuration file: {err}" ) . leak ( ) ,
461462 ) ;
462463 } ) ;
463464}
You can’t perform that action at this time.
0 commit comments