Skip to content

Commit 60ec4ab

Browse files
committed
Add error explanation for E0260.
1 parent e7fa00a commit 60ec4ab

File tree

1 file changed

+34
-1
lines changed

1 file changed

+34
-1
lines changed

src/librustc_resolve/diagnostics.rs

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,40 @@ extern crate_a as other_name;
6767
```
6868
"##,
6969

70+
E0260: r##"
71+
The name for an item declaration conflicts with an external crate's name.
72+
73+
For instance,
74+
```
75+
extern abc;
76+
77+
struct abc;
78+
```
79+
80+
There are two possible solutions:
81+
82+
Solution #1: Rename the item.
83+
84+
```
85+
extern abc;
86+
87+
struct xyz;
88+
```
89+
90+
Solution #2: Import the crate with a different name.
91+
92+
```
93+
extern abc as xyz;
94+
95+
struct abc;
96+
```
97+
98+
See the Declaration Statements section of the reference for more information
99+
about what constitutes an Item declaration and what does not:
100+
101+
http://doc.rust-lang.org/reference.html#statements
102+
"##,
103+
70104
E0317: r##"
71105
User-defined types or type parameters cannot shadow the primitive types.
72106
This error indicates you tried to define a type, struct or enum with the same
@@ -91,7 +125,6 @@ register_diagnostics! {
91125
E0256, // import conflicts with type in this module
92126
E0257, // inherent implementations are only allowed on types defined in the current module
93127
E0258, // import conflicts with existing submodule
94-
E0260, // name conflicts with an external crate that has been imported into this module
95128
E0364, // item is private
96129
E0365 // item is private
97130
}

0 commit comments

Comments
 (0)