diff options
| author | Mazdak Farrokhzad <twingoow@gmail.com> | 2019-10-07 10:36:48 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-10-07 10:36:48 +0200 |
| commit | 4db77a4c58332c97937a1b3edbf8f818b597f20a (patch) | |
| tree | 7d449f33262f5eb2d475b14c8381c81701d06043 | |
| parent | 3a1f8dfeb8a568294e90e1fc59446a4b3547bea1 (diff) | |
| parent | 57cb8819ee78f2debf24d2e123c78796204db8c9 (diff) | |
| download | rust-4db77a4c58332c97937a1b3edbf8f818b597f20a.tar.gz rust-4db77a4c58332c97937a1b3edbf8f818b597f20a.zip | |
Rollup merge of #65164 - GuillaumeGomez:long-err-explanation-E0566, r=estebank
Add long error explanation for E0566 Part of #61137.
| -rw-r--r-- | src/librustc/error_codes.rs | 22 | ||||
| -rw-r--r-- | src/test/ui/conflicting-repr-hints.stderr | 1 | ||||
| -rw-r--r-- | src/test/ui/feature-gates/feature-gate-repr-simd.stderr | 3 |
3 files changed, 24 insertions, 2 deletions
diff --git a/src/librustc/error_codes.rs b/src/librustc/error_codes.rs index 66c51000066..502172db91c 100644 --- a/src/librustc/error_codes.rs +++ b/src/librustc/error_codes.rs @@ -1700,6 +1700,27 @@ To understand better how closures work in Rust, read: https://doc.rust-lang.org/book/ch13-01-closures.html "##, +E0566: r##" +Conflicting representation hints have been used on a same item. + +Erroneous code example: + +``` +#[repr(u32, u64)] // warning! +enum Repr { A } +``` + +In most cases (if not all), using just one representation hint is more than +enough. If you want to have a representation hint depending on the current +architecture, use `cfg_attr`. Example: + +``` +#[cfg_attr(linux, repr(u32))] +#[cfg_attr(not(linux), repr(u64))] +enum Repr { A } +``` +"##, + E0580: r##" The `main` function was incorrectly declared. @@ -2097,7 +2118,6 @@ rejected in your own crates. E0490, // a value of type `..` is borrowed for too long E0495, // cannot infer an appropriate lifetime due to conflicting // requirements - E0566, // conflicting representation hints E0623, // lifetime mismatch where both parameters are anonymous regions E0628, // generators cannot have explicit parameters E0631, // type mismatch in closure arguments diff --git a/src/test/ui/conflicting-repr-hints.stderr b/src/test/ui/conflicting-repr-hints.stderr index 6b15b7ebbe9..832f5c3ac2b 100644 --- a/src/test/ui/conflicting-repr-hints.stderr +++ b/src/test/ui/conflicting-repr-hints.stderr @@ -66,3 +66,4 @@ LL | | } error: aborting due to 8 previous errors +For more information about this error, try `rustc --explain E0566`. diff --git a/src/test/ui/feature-gates/feature-gate-repr-simd.stderr b/src/test/ui/feature-gates/feature-gate-repr-simd.stderr index dfaa85bc5f0..02c8400e03e 100644 --- a/src/test/ui/feature-gates/feature-gate-repr-simd.stderr +++ b/src/test/ui/feature-gates/feature-gate-repr-simd.stderr @@ -26,4 +26,5 @@ LL | #[repr(simd)] error: aborting due to 2 previous errors -For more information about this error, try `rustc --explain E0658`. +Some errors have detailed explanations: E0566, E0658. +For more information about an error, try `rustc --explain E0566`. |
