2018-08-30 14:18:55 +02:00
|
|
|
// run-pass
|
2018-07-20 14:12:57 +01:00
|
|
|
// aux-build:lib.rs
|
|
|
|
|
|
|
|
// Regression test for #50865.
|
2018-08-21 01:16:29 +01:00
|
|
|
// When using generics or specifying the type directly, this example
|
|
|
|
// codegens `foo` internally. However, when using a private `impl Trait`
|
|
|
|
// function which references another private item, `foo` (in this case)
|
|
|
|
// wouldn't be codegenned until main.rs used `bar`, as with impl Trait
|
|
|
|
// it is not cast to `fn()` automatically to satisfy e.g.
|
2018-08-21 01:50:20 +01:00
|
|
|
// `fn foo() -> fn() { ... }`.
|
2018-07-20 14:12:57 +01:00
|
|
|
|
|
|
|
extern crate lib;
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
lib::bar(()); // Error won't happen if bar is called from same crate
|
|
|
|
}
|