// compile-flags: -Z unstable-options
#![feature(rustc_private)]
+#![deny(rustc::default_hash_types)]
extern crate rustc_data_structures;
use rustc_data_structures::fx::{FxHashMap, FxHashSet};
use std::collections::{HashMap, HashSet};
-#[deny(rustc::default_hash_types)]
+mod foo {
+ pub struct HashMap;
+}
+
fn main() {
let _map: HashMap<String, String> = HashMap::default();
- //~^ ERROR Prefer FxHashMap over HashMap, it has better performance
- //~^^ ERROR Prefer FxHashMap over HashMap, it has better performance
+ //~^ ERROR prefer `FxHashMap` over `HashMap`, it has better performance
+ //~^^ ERROR prefer `FxHashMap` over `HashMap`, it has better performance
let _set: HashSet<String> = HashSet::default();
- //~^ ERROR Prefer FxHashSet over HashSet, it has better performance
- //~^^ ERROR Prefer FxHashSet over HashSet, it has better performance
+ //~^ ERROR prefer `FxHashSet` over `HashSet`, it has better performance
+ //~^^ ERROR prefer `FxHashSet` over `HashSet`, it has better performance
// test that the lint doesn't also match the Fx variants themselves
let _fx_map: FxHashMap<String, String> = FxHashMap::default();
let _fx_set: FxHashSet<String> = FxHashSet::default();
+
+ // test another struct of the same name
+ let _ = foo::HashMap;
}