File tree 5 files changed +79
-4
lines changed
5 files changed +79
-4
lines changed Original file line number Diff line number Diff line change @@ -300,10 +300,6 @@ fn resolve_crate<'a>(e: &mut Env,
300
300
dylib, rlib, metadata
301
301
} = load_ctxt. load_library_crate ( root) ;
302
302
303
- // Claim this crate number and cache it
304
- let cnum = e. next_crate_num ;
305
- e. next_crate_num += 1 ;
306
-
307
303
// Stash paths for top-most crate locally if necessary.
308
304
let crate_paths = if root. is_none ( ) {
309
305
Some ( CratePaths {
@@ -324,6 +320,17 @@ fn resolve_crate<'a>(e: &mut Env,
324
320
@RefCell :: new ( HashMap :: new ( ) )
325
321
} ;
326
322
323
+ // Claim this crate number and cache it if we're linking to the
324
+ // crate, otherwise it's a syntax-only crate and we don't need to
325
+ // reserve a number
326
+ let cnum = if should_link {
327
+ let n = e. next_crate_num ;
328
+ e. next_crate_num += 1 ;
329
+ n
330
+ } else {
331
+ -1
332
+ } ;
333
+
327
334
let cmeta = @cstore:: crate_metadata {
328
335
name : load_ctxt. crate_id . name . to_owned ( ) ,
329
336
data : metadata,
Original file line number Diff line number Diff line change
1
+ // Copyright 2014 The Rust Project Developers. See the COPYRIGHT
2
+ // file at the top-level directory of this distribution and at
3
+ // http://rust-lang.org/COPYRIGHT.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6
+ // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7
+ // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8
+ // option. This file may not be copied, modified, or distributed
9
+ // except according to those terms.
10
+
11
+ // no-prefer-dynamic
12
+
13
+ #![ crate_type = "dylib" ]
Original file line number Diff line number Diff line change
1
+ // Copyright 2014 The Rust Project Developers. See the COPYRIGHT
2
+ // file at the top-level directory of this distribution and at
3
+ // http://rust-lang.org/COPYRIGHT.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6
+ // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7
+ // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8
+ // option. This file may not be copied, modified, or distributed
9
+ // except according to those terms.
10
+
11
+ // no-prefer-dynamic
12
+
13
+ #![ crate_type = "rlib" ]
Original file line number Diff line number Diff line change
1
+ // Copyright 2014 The Rust Project Developers. See the COPYRIGHT
2
+ // file at the top-level directory of this distribution and at
3
+ // http://rust-lang.org/COPYRIGHT.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6
+ // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7
+ // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8
+ // option. This file may not be copied, modified, or distributed
9
+ // except according to those terms.
10
+
11
+ // no-prefer-dynamic
12
+
13
+ #![ crate_type = "rlib" ]
14
+ #![ feature( phase) ]
15
+
16
+ #[ phase( syntax) ] extern crate t1 = "issue-13560-1" ;
17
+ #[ phase( syntax, link) ] extern crate t2 = "issue-13560-2" ;
18
+
Original file line number Diff line number Diff line change
1
+ // Copyright 2014 The Rust Project Developers. See the COPYRIGHT
2
+ // file at the top-level directory of this distribution and at
3
+ // http://rust-lang.org/COPYRIGHT.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6
+ // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7
+ // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8
+ // option. This file may not be copied, modified, or distributed
9
+ // except according to those terms.
10
+
11
+ // aux-build:issue-13560-1.rs
12
+ // aux-build:issue-13560-2.rs
13
+ // aux-build:issue-13560-3.rs
14
+ // ignore-stage1
15
+ // ignore-android
16
+ // ignore-cross-compile #12102
17
+
18
+ // Regression test for issue #13560, the test itself is all in the dependent
19
+ // libraries. The fail which previously failed to compile is the one numbered 3.
20
+
21
+ extern crate t2 = "issue-13560-2" ;
22
+ extern crate t3 = "issue-13560-3" ;
23
+
24
+ fn main ( ) { }
You can’t perform that action at this time.
0 commit comments