diff options
| author | Esteban Küber <esteban@kuber.com.ar> | 2019-09-21 17:11:09 -0700 |
|---|---|---|
| committer | Esteban Küber <esteban@kuber.com.ar> | 2019-09-21 17:11:09 -0700 |
| commit | 60560bc2a2c149e179cd7e58a8b48e06c2c4e3f4 (patch) | |
| tree | b7acfb3124b7b045a8493f677b7c94a3ec4cc80d /src/test/ui/parser | |
| parent | 9ad1e7c46cf690b7ec6953b142430d21ca2d8799 (diff) | |
| download | rust-60560bc2a2c149e179cd7e58a8b48e06c2c4e3f4.tar.gz rust-60560bc2a2c149e179cd7e58a8b48e06c2c4e3f4.zip | |
Parse assoc type bounds in generic params and provide custom diagnostic
Diffstat (limited to 'src/test/ui/parser')
| -rw-r--r-- | src/test/ui/parser/assoc-type-in-type-arg.rs | 11 | ||||
| -rw-r--r-- | src/test/ui/parser/assoc-type-in-type-arg.stderr | 8 |
2 files changed, 19 insertions, 0 deletions
diff --git a/src/test/ui/parser/assoc-type-in-type-arg.rs b/src/test/ui/parser/assoc-type-in-type-arg.rs new file mode 100644 index 00000000000..09765f01371 --- /dev/null +++ b/src/test/ui/parser/assoc-type-in-type-arg.rs @@ -0,0 +1,11 @@ +trait Tr { + type TrSubtype; +} + +struct Bar<'a, Item: Tr, <Item as Tr>::TrSubtype: 'a> { + //~^ ERROR associated type bounds do not belong here + item: Item, + item_sub: &'a <Item as Tr>::TrSubtype, +} + +fn main() {} diff --git a/src/test/ui/parser/assoc-type-in-type-arg.stderr b/src/test/ui/parser/assoc-type-in-type-arg.stderr new file mode 100644 index 00000000000..06addb02417 --- /dev/null +++ b/src/test/ui/parser/assoc-type-in-type-arg.stderr @@ -0,0 +1,8 @@ +error: associated type bounds do not belong here + --> $DIR/assoc-type-in-type-arg.rs:5:26 + | +LL | struct Bar<'a, Item: Tr, <Item as Tr>::TrSubtype: 'a> { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ belongs in `where` clause + +error: aborting due to previous error + |
