2018-05-11 12:02:17 -05:00
|
|
|
// aux-build:edition-lint-paths.rs
|
|
|
|
// run-rustfix
|
|
|
|
|
|
|
|
#![feature(rust_2018_preview)]
|
2018-05-18 17:13:53 -05:00
|
|
|
#![deny(absolute_paths_not_starting_with_crate)]
|
2018-05-11 12:02:17 -05:00
|
|
|
#![allow(unused)]
|
|
|
|
|
|
|
|
extern crate edition_lint_paths;
|
|
|
|
|
|
|
|
pub mod foo {
|
|
|
|
use edition_lint_paths;
|
|
|
|
use crate::bar::Bar;
|
|
|
|
//~^ ERROR absolute
|
|
|
|
//~| WARN this was previously accepted
|
|
|
|
use super::bar::Bar2;
|
|
|
|
use crate::bar::Bar3;
|
|
|
|
|
|
|
|
use crate::bar;
|
|
|
|
//~^ ERROR absolute
|
|
|
|
//~| WARN this was previously accepted
|
|
|
|
use crate::{bar as something_else};
|
|
|
|
|
2018-05-22 17:34:30 -05:00
|
|
|
use crate::{Bar as SomethingElse, main};
|
2018-05-11 12:02:17 -05:00
|
|
|
//~^ ERROR absolute
|
|
|
|
//~| WARN this was previously accepted
|
|
|
|
|
|
|
|
use crate::{Bar as SomethingElse2, main as another_main};
|
|
|
|
|
|
|
|
pub fn test() {
|
|
|
|
}
|
2018-05-22 10:45:44 -05:00
|
|
|
|
|
|
|
pub trait SomeTrait { }
|
2018-05-11 12:02:17 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
use crate::bar::Bar;
|
|
|
|
//~^ ERROR absolute
|
|
|
|
//~| WARN this was previously accepted
|
|
|
|
|
|
|
|
pub mod bar {
|
|
|
|
use edition_lint_paths as foo;
|
|
|
|
pub struct Bar;
|
|
|
|
pub type Bar2 = Bar;
|
|
|
|
pub type Bar3 = Bar;
|
|
|
|
}
|
|
|
|
|
|
|
|
mod baz {
|
|
|
|
use crate::*;
|
|
|
|
//~^ ERROR absolute
|
|
|
|
//~| WARN this was previously accepted
|
|
|
|
}
|
|
|
|
|
2018-05-22 10:45:44 -05:00
|
|
|
impl crate::foo::SomeTrait for u32 { }
|
|
|
|
//~^ ERROR absolute
|
|
|
|
//~| WARN this was previously accepted
|
|
|
|
|
2018-05-11 12:02:17 -05:00
|
|
|
fn main() {
|
|
|
|
let x = crate::bar::Bar;
|
|
|
|
//~^ ERROR absolute
|
|
|
|
//~| WARN this was previously accepted
|
|
|
|
let x = bar::Bar;
|
2018-08-14 04:54:43 -05:00
|
|
|
let x = crate::bar::Bar;
|
2018-05-11 12:02:17 -05:00
|
|
|
let x = self::bar::Bar;
|
|
|
|
foo::test();
|
|
|
|
|
|
|
|
{
|
|
|
|
use edition_lint_paths as bar;
|
|
|
|
edition_lint_paths::foo();
|
|
|
|
bar::foo();
|
|
|
|
::edition_lint_paths::foo();
|
|
|
|
}
|
|
|
|
}
|