@@ -130,8 +130,8 @@ pub enum input {
130
130
}
131
131
132
132
pub fn phase_1_parse_input ( sess : Session , cfg : ast:: CrateConfig , input : & input )
133
- -> @ ast:: Crate {
134
- time ( sess. time_passes ( ) , ~"parsing", | | {
133
+ -> ast:: Crate {
134
+ time ( sess. time_passes ( ) , ~"parsing", ( ) , |_ | {
135
135
match * input {
136
136
file_input( ref file) => {
137
137
parse:: parse_crate_from_file ( & ( * file) , cfg. clone ( ) , sess. parse_sess )
@@ -153,11 +153,11 @@ pub fn phase_1_parse_input(sess: Session, cfg: ast::CrateConfig, input: &input)
153
153
/// standard library and prelude.
154
154
pub fn phase_2_configure_and_expand ( sess : Session ,
155
155
cfg : ast:: CrateConfig ,
156
- mut crate : @ ast:: Crate ) -> @ ast:: Crate {
156
+ mut crate : ast:: Crate ) -> ast:: Crate {
157
157
let time_passes = sess. time_passes ( ) ;
158
158
159
159
* sess. building_library = session:: building_library ( sess. opts . crate_type ,
160
- crate , sess. opts . test ) ;
160
+ & crate , sess. opts . test ) ;
161
161
162
162
163
163
// strip before expansion to allow macros to depend on
@@ -167,29 +167,29 @@ pub fn phase_2_configure_and_expand(sess: Session,
167
167
// mod bar { macro_rules! baz!(() => {{}}) }
168
168
//
169
169
// baz! should not use this definition unless foo is enabled.
170
- crate = time ( time_passes, ~"std macros injection", | |
170
+ crate = time ( time_passes, ~"std macros injection", crate , | crate |
171
171
syntax:: ext:: expand:: inject_std_macros ( sess. parse_sess ,
172
172
cfg. clone ( ) ,
173
173
crate ) ) ;
174
174
175
- crate = time ( time_passes, ~"configuration 1 ", | |
175
+ crate = time ( time_passes, ~"configuration 1 ", crate , | crate |
176
176
front:: config:: strip_unconfigured_items ( crate ) ) ;
177
177
178
- crate = time ( time_passes, ~"expansion", | |
178
+ crate = time ( time_passes, ~"expansion", crate , | crate |
179
179
syntax:: ext:: expand:: expand_crate ( sess. parse_sess , cfg. clone ( ) ,
180
180
crate ) ) ;
181
181
182
182
// strip again, in case expansion added anything with a #[cfg].
183
- crate = time ( time_passes, ~"configuration 2 ", | |
183
+ crate = time ( time_passes, ~"configuration 2 ", crate , | crate |
184
184
front:: config:: strip_unconfigured_items ( crate ) ) ;
185
185
186
- crate = time ( time_passes, ~"maybe building test harness", | |
186
+ crate = time ( time_passes, ~"maybe building test harness", crate , | crate |
187
187
front:: test:: modify_for_testing ( sess, crate ) ) ;
188
188
189
- crate = time ( time_passes, ~"std injection", | |
189
+ crate = time ( time_passes, ~"std injection", crate , | crate |
190
190
front:: std_inject:: maybe_inject_libstd_ref ( sess, crate ) ) ;
191
191
192
- crate = time ( time_passes, ~"assigning node ids", | |
192
+ crate = time ( time_passes, ~"assigning node ids", crate , | crate |
193
193
front:: assign_node_ids:: assign_node_ids ( sess, crate ) ) ;
194
194
195
195
return crate ;
@@ -207,41 +207,41 @@ pub struct CrateAnalysis {
207
207
/// miscellaneous analysis passes on the crate. Return various
208
208
/// structures carrying the results of the analysis.
209
209
pub fn phase_3_run_analysis_passes( sess : Session ,
210
- crate : @ ast:: Crate ) -> CrateAnalysis {
210
+ crate : & ast:: Crate ) -> CrateAnalysis {
211
211
212
212
let time_passes = sess. time_passes ( ) ;
213
213
214
- let ast_map = time ( time_passes, ~"ast indexing", | |
214
+ let ast_map = time ( time_passes, ~"ast indexing", ( ) , |_ |
215
215
syntax:: ast_map:: map_crate ( sess. diagnostic ( ) , crate ) ) ;
216
216
217
- time ( time_passes, ~"external crate/lib resolution", | |
217
+ time ( time_passes, ~"external crate/lib resolution", ( ) , |_ |
218
218
creader:: read_crates ( sess. diagnostic ( ) , crate , sess. cstore ,
219
219
sess. filesearch ,
220
220
session:: sess_os_to_meta_os ( sess. targ_cfg . os ) ,
221
221
sess. opts . is_static ,
222
222
token:: get_ident_interner ( ) ) ) ;
223
223
224
- let lang_items = time ( time_passes, ~"language item collection", | |
224
+ let lang_items = time ( time_passes, ~"language item collection", ( ) , |_ |
225
225
middle:: lang_items:: collect_language_items ( crate , sess) ) ;
226
226
227
227
let middle:: resolve:: CrateMap {
228
228
def_map : def_map,
229
229
exp_map2 : exp_map2,
230
230
trait_map : trait_map
231
231
} =
232
- time ( time_passes, ~"resolution", | |
232
+ time ( time_passes, ~"resolution", ( ) , |_ |
233
233
middle:: resolve:: resolve_crate ( sess, lang_items, crate ) ) ;
234
234
235
- time ( time_passes, ~"looking for entry point",
236
- || middle:: entry:: find_entry_point( sess, crate , ast_map) ) ;
235
+ time ( time_passes, ~"looking for entry point", ( ) ,
236
+ |_ | middle:: entry:: find_entry_point( sess, crate , ast_map) ) ;
237
237
238
- let freevars = time ( time_passes, ~"freevar finding", | |
238
+ let freevars = time ( time_passes, ~"freevar finding", ( ) , |_ |
239
239
freevars:: annotate_freevars ( def_map, crate ) ) ;
240
240
241
- let region_map = time ( time_passes, ~"region resolution", | |
241
+ let region_map = time ( time_passes, ~"region resolution", ( ) , |_ |
242
242
middle:: region:: resolve_crate ( sess, def_map, crate ) ) ;
243
243
244
- let rp_set = time ( time_passes, ~"region parameterization inference", | |
244
+ let rp_set = time ( time_passes, ~"region parameterization inference", ( ) , |_ |
245
245
middle:: region:: determine_rp_in_crate ( sess, ast_map, def_map, crate ) ) ;
246
246
247
247
let ty_cx = ty:: mk_ctxt ( sess, def_map, ast_map, freevars,
@@ -252,53 +252,53 @@ pub fn phase_3_run_analysis_passes(sess: Session,
252
252
ty_cx, trait_map, crate ) ;
253
253
254
254
// These next two const passes can probably be merged
255
- time ( time_passes, ~"const marking", | |
255
+ time ( time_passes, ~"const marking", ( ) , |_ |
256
256
middle:: const_eval:: process_crate ( crate , ty_cx) ) ;
257
257
258
- time ( time_passes, ~"const checking", | |
258
+ time ( time_passes, ~"const checking", ( ) , |_ |
259
259
middle:: check_const:: check_crate ( sess, crate , ast_map, def_map,
260
260
method_map, ty_cx) ) ;
261
261
262
262
let exported_items =
263
- time ( time_passes, ~"privacy checking", | |
263
+ time ( time_passes, ~"privacy checking", ( ) , |_ |
264
264
middle:: privacy:: check_crate ( ty_cx, & method_map, & exp_map2, crate ) ) ;
265
265
266
- time ( time_passes, ~"effect checking", | |
266
+ time ( time_passes, ~"effect checking", ( ) , |_ |
267
267
middle:: effect:: check_crate ( ty_cx, method_map, crate ) ) ;
268
268
269
- time ( time_passes, ~"loop checking", | |
269
+ time ( time_passes, ~"loop checking", ( ) , |_ |
270
270
middle:: check_loop:: check_crate ( ty_cx, crate ) ) ;
271
271
272
- time ( time_passes, ~"stack checking", | |
272
+ time ( time_passes, ~"stack checking", ( ) , |_ |
273
273
middle:: stack_check:: stack_check_crate ( ty_cx, crate ) ) ;
274
274
275
275
let middle:: moves:: MoveMaps { moves_map, moved_variables_set,
276
276
capture_map} =
277
- time ( time_passes, ~"compute moves", | |
277
+ time ( time_passes, ~"compute moves", ( ) , |_ |
278
278
middle:: moves:: compute_moves ( ty_cx, method_map, crate ) ) ;
279
279
280
- time( time_passes, ~"match checking", | |
280
+ time( time_passes, ~"match checking ", ( ) , |_ |
281
281
middle:: check_match:: check_crate ( ty_cx, method_map,
282
282
moves_map, crate ) ) ;
283
283
284
- time ( time_passes, ~"liveness checking", | |
284
+ time ( time_passes, ~"liveness checking", ( ) , |_ |
285
285
middle:: liveness:: check_crate ( ty_cx, method_map,
286
286
capture_map, crate ) ) ;
287
287
288
288
let ( root_map, write_guard_map) =
289
- time ( time_passes, ~"borrow checking", | |
289
+ time ( time_passes, ~"borrow checking", ( ) , |_ |
290
290
middle:: borrowck:: check_crate ( ty_cx, method_map,
291
291
moves_map, moved_variables_set,
292
292
capture_map, crate ) ) ;
293
293
294
- time ( time_passes, ~"kind checking", | |
294
+ time ( time_passes, ~"kind checking", ( ) , |_ |
295
295
kind:: check_crate ( ty_cx, method_map, crate ) ) ;
296
296
297
297
let reachable_map =
298
- time ( time_passes, ~"reachability checking", | |
298
+ time ( time_passes, ~"reachability checking", ( ) , |_ |
299
299
reachable:: find_reachable ( ty_cx, method_map, crate ) ) ;
300
300
301
- time ( time_passes, ~"lint checking", | |
301
+ time ( time_passes, ~"lint checking", ( ) , |_ |
302
302
lint:: check_crate ( ty_cx, crate ) ) ;
303
303
304
304
CrateAnalysis {
@@ -325,10 +325,10 @@ pub struct CrateTranslation {
325
325
/// Run the translation phase to LLVM, after which the AST and analysis can
326
326
/// be discarded.
327
327
pub fn phase_4_translate_to_llvm ( sess: Session ,
328
- crate : @ ast:: Crate ,
328
+ crate : ast:: Crate ,
329
329
analysis: & CrateAnalysis ,
330
330
outputs: & OutputFilenames ) -> CrateTranslation {
331
- time( sess. time_passes ( ) , ~"translation", | |
331
+ time( sess. time_passes ( ) , ~"translation", crate , | crate |
332
332
trans:: base:: trans_crate ( sess, crate , analysis,
333
333
& outputs. obj_filename ) )
334
334
}
@@ -349,7 +349,7 @@ pub fn phase_5_run_llvm_passes(sess: Session,
349
349
let output_type = link:: output_type_assembly;
350
350
let asm_filename = outputs. obj_filename. with_filetype( "s" ) ;
351
351
352
- time( sess. time_passes( ) , ~"LLVM passes", | |
352
+ time( sess. time_passes( ) , ~"LLVM passes", ( ) , |_ |
353
353
link:: write:: run_passes( sess,
354
354
trans. context,
355
355
trans. module,
@@ -363,7 +363,7 @@ pub fn phase_5_run_llvm_passes(sess: Session,
363
363
os:: remove_file ( & asm_filename) ;
364
364
}
365
365
} else {
366
- time ( sess. time_passes ( ) , ~"LLVM passes", | |
366
+ time ( sess. time_passes ( ) , ~"LLVM passes", ( ) , |_ |
367
367
link:: write:: run_passes ( sess,
368
368
trans. context ,
369
369
trans. module ,
@@ -377,7 +377,7 @@ pub fn phase_5_run_llvm_passes(sess: Session,
377
377
pub fn phase_6_link_output ( sess : Session ,
378
378
trans : & CrateTranslation ,
379
379
outputs : & OutputFilenames ) {
380
- time ( sess. time_passes ( ) , ~"linking", | |
380
+ time ( sess. time_passes ( ) , ~"linking", ( ) , |_ |
381
381
link:: link_binary ( sess,
382
382
& outputs. obj_filename ,
383
383
& outputs. out_filename ,
@@ -430,7 +430,7 @@ pub fn compile_input(sess: Session, cfg: ast::CrateConfig, input: &input,
430
430
if stop_after_phase_1 ( sess) { return ; }
431
431
phase_2_configure_and_expand ( sess, cfg, crate )
432
432
} ;
433
- let analysis = phase_3_run_analysis_passes ( sess, expanded_crate) ;
433
+ let analysis = phase_3_run_analysis_passes ( sess, & expanded_crate) ;
434
434
if stop_after_phase_3 ( sess) { return ; }
435
435
let outputs = build_output_filenames ( input, outdir, output, [ ] , sess) ;
436
436
let trans = phase_4_translate_to_llvm ( sess, expanded_crate,
@@ -535,7 +535,7 @@ pub fn pretty_print_input(sess: Session,
535
535
} as @pprust:: pp_ann
536
536
}
537
537
PpmTyped => {
538
- let analysis = phase_3_run_analysis_passes ( sess, crate ) ;
538
+ let analysis = phase_3_run_analysis_passes ( sess, & crate ) ;
539
539
@TypedAnnotation {
540
540
analysis : analysis
541
541
} as @pprust:: pp_ann
@@ -548,7 +548,7 @@ pub fn pretty_print_input(sess: Session,
548
548
pprust:: print_crate ( sess. codemap ,
549
549
token:: get_ident_interner ( ) ,
550
550
sess. span_diagnostic ,
551
- crate ,
551
+ & crate ,
552
552
source_name ( input) ,
553
553
rdr,
554
554
io:: stdout ( ) ,
0 commit comments