about summary refs log tree commit diff
path: root/tests/ui/lto/lto-rustc-loads-linker-plugin.rs
blob: 18e937cb29a626dfc53bc8b6f2193802587c894f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//@ compile-flags: -C lto
//@ aux-build:lto-rustc-loads-linker-plugin.rs
//@ run-pass
//@ no-prefer-dynamic

// This test ensures that if a dependency was compiled with
// `-Clinker-plugin-lto` then we can compile with `-Clto` and still link against
// that upstream rlib. This should work because LTO implies we're not actually
// linking against upstream rlibs since we're generating the object code
// locally. This test will fail if rustc can't find bytecode in rlibs compiled
// with `-Clinker-plugin-lto`.

extern crate lto_rustc_loads_linker_plugin;

fn main() {
    lto_rustc_loads_linker_plugin::foo();
}