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::*;
21 use std::io::prelude::*;
25 impl Read for ReadFoo {
26 fn read(&mut self, _buf: &mut [u8]) -> std::io::Result<usize> {
45 pub mod multi_inner_mod {
53 pub mod inner_struct_mod {
58 macro_rules! double_struct_import_test {
69 multi_inner_mod::foo();
75 let _ = inner_struct_mod::C;
78 double_struct_import_test!();
79 double_struct_import_test!();
83 pub use self::inner_exported::*;
84 #[allow(unused_imports)]
85 pub(crate) use self::inner_exported2::*;
94 use wildcard_imports_helper::inner::inner_for_self_import::{self, *};
95 use wildcard_imports_helper::*;
97 inner_for_self_import::inner_extern_foo();
105 fn test_inner_nested() {
106 use self::{inner::*, inner2::*};
112 fn test_extern_reexported() {
113 use wildcard_imports_helper::*;
116 let _ = ExternExportedStruct;
117 let _ = ExternExportedEnum::A;
122 pub struct ExportedStruct;
123 pub enum ExportedEnum {
128 mod inner_exported2 {
129 pub(crate) fn exported2() {}
133 pub fn inner_foo() {}
137 pub fn inner_bar() {}
141 fn test_reexported() {
142 use crate::in_fn_test::*;
145 let _ = ExportedStruct;
146 let _ = ExportedEnum::A;
150 fn test_weird_formatting() {
151 use crate:: in_fn_test:: * ;