@@ -92,7 +92,7 @@ pub fn rustc(
92
92
} ;
93
93
94
94
let analysis = Arc :: new ( Mutex :: new ( None ) ) ;
95
- let mut controller = RlsRustcCalls :: new ( Arc :: clone ( & analysis) , clippy_pref) ;
95
+ let controller = Box :: new ( RlsRustcCalls :: new ( Arc :: clone ( & analysis) , clippy_pref) ) ;
96
96
97
97
// rustc explicitly panics in run_compiler() on compile failure, regardless
98
98
// if it encounters an ICE (internal compiler error) or not.
@@ -103,7 +103,7 @@ pub fn rustc(
103
103
// Replace stderr so we catch most errors.
104
104
run_compiler (
105
105
& args,
106
- & mut controller,
106
+ controller,
107
107
Some ( Box :: new ( ReplacedFileLoader :: new ( changed) ) ) ,
108
108
Some ( Box :: new ( BufWriter ( buf) ) ) ,
109
109
)
@@ -131,15 +131,15 @@ pub fn rustc(
131
131
// controller, but use our own callback for save-analysis.
132
132
#[ derive( Clone ) ]
133
133
struct RlsRustcCalls {
134
- default_calls : RustcDefaultCalls ,
134
+ default_calls : Box < RustcDefaultCalls > ,
135
135
analysis : Arc < Mutex < Option < Analysis > > > ,
136
136
clippy_preference : ClippyPreference ,
137
137
}
138
138
139
139
impl RlsRustcCalls {
140
140
fn new ( analysis : Arc < Mutex < Option < Analysis > > > , clippy_preference : ClippyPreference ) -> RlsRustcCalls {
141
141
RlsRustcCalls {
142
- default_calls : RustcDefaultCalls ,
142
+ default_calls : Box :: new ( RustcDefaultCalls ) ,
143
143
analysis,
144
144
clippy_preference,
145
145
}
@@ -228,13 +228,13 @@ impl<'a> CompilerCalls<'a> for RlsRustcCalls {
228
228
}
229
229
230
230
fn build_controller (
231
- & mut self ,
231
+ self : Box < Self > ,
232
232
sess : & Session ,
233
233
matches : & getopts:: Matches ,
234
234
) -> CompileController < ' a > {
235
+ let analysis = self . analysis . clone ( ) ;
235
236
let mut result = self . default_calls . build_controller ( sess, matches) ;
236
237
result. keep_ast = true ;
237
- let analysis = self . analysis . clone ( ) ;
238
238
239
239
#[ cfg( feature = "clippy" ) ] {
240
240
if self . clippy_preference != ClippyPreference :: Off {
0 commit comments