2 // aux-build:wildcard_imports_helper.rs
4 #![warn(clippy::wildcard_imports)]
6 #![warn(unused_imports)]
8 extern crate wildcard_imports_helper;
11 use crate::mod_mod::*;
12 use crate::multi_fn_mod::*;
14 use crate::struct_mod::*;
16 #[allow(unused_imports)]
17 use wildcard_imports_helper::inner::inner_for_self_import;
18 use wildcard_imports_helper::inner::inner_for_self_import::*;
19 use wildcard_imports_helper::*;
35 pub mod multi_inner_mod {
43 pub mod inner_struct_mod {
48 macro_rules! double_struct_import_test {
59 multi_inner_mod::foo();
65 let _ = inner_struct_mod::C;
68 double_struct_import_test!();
69 double_struct_import_test!();
73 pub use self::inner_exported::*;
74 #[allow(unused_imports)]
75 pub(crate) use self::inner_exported2::*;
84 use wildcard_imports_helper::inner::inner_for_self_import::{self, *};
85 use wildcard_imports_helper::*;
87 inner_for_self_import::inner_extern_foo();
95 fn test_inner_nested() {
96 use self::{inner::*, inner2::*};
102 fn test_extern_reexported() {
103 use wildcard_imports_helper::*;
106 let _ = ExternExportedStruct;
107 let _ = ExternExportedEnum::A;
112 pub struct ExportedStruct;
113 pub enum ExportedEnum {
118 mod inner_exported2 {
119 pub(crate) fn exported2() {}
123 pub fn inner_foo() {}
127 pub fn inner_bar() {}
131 fn test_reexported() {
132 use crate::in_fn_test::*;
135 let _ = ExportedStruct;
136 let _ = ExportedEnum::A;