Skip to content

Commit d32c08d

Browse files
committed
---
yaml --- r: 277869 b: refs/heads/auto c: 33bb269 h: refs/heads/master i: 277867: b9db3c1
1 parent e5eac6a commit d32c08d

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
88
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
99
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1010
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
11-
refs/heads/auto: 3bcf818a8ff23711a2d0366d440a6bf27e16da03
11+
refs/heads/auto: 33bb26998c3ef4982a4e838a626e6837f602263a
1212
refs/tags/release-0.6: b4ebcfa1812664df5e142f0134a5faea3918544c
1313
refs/tags/0.1: b19db808c2793fe2976759b85a355c3ad8c8b336
1414
refs/tags/0.2: 1754d02027f2924bed83b0160ee340c7f41d5ea1

branches/auto/src/librustc_resolve/lib.rs

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1819,11 +1819,21 @@ impl<'a, 'tcx> Resolver<'a, 'tcx> {
18191819
path_depth)));
18201820

18211821
// If it's a typedef, give a note
1822-
if let Def::TyAlias(did) = path_res.base_def {
1822+
if let Def::TyAlias(..) = path_res.base_def {
18231823
err.fileline_note(trait_path.span,
18241824
"`type` aliases cannot be used for traits");
1825-
if let Some(sp) = self.ast_map.span_if_local(did) {
1826-
err.span_note(sp, "type defined here");
1825+
1826+
let definition_site = {
1827+
let segments = &trait_path.segments;
1828+
if trait_path.global {
1829+
self.resolve_crate_relative_path(trait_path.span, segments, TypeNS)
1830+
} else {
1831+
self.resolve_module_relative_path(trait_path.span, segments, TypeNS)
1832+
}.map(|binding| binding.span).unwrap_or(codemap::DUMMY_SP)
1833+
};
1834+
1835+
if definition_site != codemap::DUMMY_SP {
1836+
err.span_note(definition_site, "type defined here");
18271837
}
18281838
}
18291839
err.emit();

0 commit comments

Comments
 (0)