diff options
| author | Mara Bos <m-ou.se@m-ou.se> | 2021-09-01 09:23:28 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-09-01 09:23:28 +0200 |
| commit | bbc94ed32982eb4a12a0778837e17581e885d59e (patch) | |
| tree | 29a182b19b20ce3f0d544eabda13e6af00c9083d /src | |
| parent | 75b2ae5ec50a3fb3cadd297b7d524935afa9faad (diff) | |
| parent | 6e70678f7d93ad777297c865e35e005520a4eefb (diff) | |
| download | rust-bbc94ed32982eb4a12a0778837e17581e885d59e.tar.gz rust-bbc94ed32982eb4a12a0778837e17581e885d59e.zip | |
Rollup merge of #88525 - notriddle:notriddle/coherence-dyn-auto-trait, r=petrochenkov
fix(rustc_typeck): produce better errors for dyn auto trait Fixes #85026
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/ui/coherence/issue-85026.rs | 10 | ||||
| -rw-r--r-- | src/test/ui/coherence/issue-85026.stderr | 19 |
2 files changed, 29 insertions, 0 deletions
diff --git a/src/test/ui/coherence/issue-85026.rs b/src/test/ui/coherence/issue-85026.rs new file mode 100644 index 00000000000..8b116545aa6 --- /dev/null +++ b/src/test/ui/coherence/issue-85026.rs @@ -0,0 +1,10 @@ +#![feature(auto_traits)] +auto trait AutoTrait {} + +// You cannot impl your own `dyn AutoTrait`. +impl dyn AutoTrait {} //~ERROR E0785 + +// You cannot impl someone else's `dyn AutoTrait` +impl dyn Unpin {} //~ERROR E0785 + +fn main() {} diff --git a/src/test/ui/coherence/issue-85026.stderr b/src/test/ui/coherence/issue-85026.stderr new file mode 100644 index 00000000000..a5da19bbfaa --- /dev/null +++ b/src/test/ui/coherence/issue-85026.stderr @@ -0,0 +1,19 @@ +error[E0785]: cannot define inherent `impl` for a dyn auto trait + --> $DIR/issue-85026.rs:5:6 + | +LL | impl dyn AutoTrait {} + | ^^^^^^^^^^^^^ impl requires at least one non-auto trait + | + = note: define and implement a new trait or type instead + +error[E0785]: cannot define inherent `impl` for a dyn auto trait + --> $DIR/issue-85026.rs:8:6 + | +LL | impl dyn Unpin {} + | ^^^^^^^^^ impl requires at least one non-auto trait + | + = note: define and implement a new trait or type instead + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0785`. |
