diff options
Diffstat (limited to 'tests/ui/regions/regions-static-bound-rpass.rs')
-rw-r--r-- | tests/ui/regions/regions-static-bound-rpass.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/ui/regions/regions-static-bound-rpass.rs b/tests/ui/regions/regions-static-bound-rpass.rs new file mode 100644 index 000000000..25232b455 --- /dev/null +++ b/tests/ui/regions/regions-static-bound-rpass.rs @@ -0,0 +1,26 @@ +// run-pass + +fn invariant_id<'a,'b>(t: &'b mut &'static ()) -> &'b mut &'a () + where 'a: 'static { t } +//~^ WARN unnecessary lifetime parameter `'a` + +fn static_id<'a>(t: &'a ()) -> &'static () + where 'a: 'static { t } +//~^ WARN unnecessary lifetime parameter `'a` + +fn static_id_indirect<'a,'b>(t: &'a ()) -> &'static () + where 'a: 'b, 'b: 'static { t } +//~^ WARN unnecessary lifetime parameter `'b` + +fn ref_id<'a>(t: &'a ()) -> &'a () where 'static: 'a { t } + +static UNIT: () = (); + +fn main() +{ + let mut val : &'static () = &UNIT; + invariant_id(&mut val); + static_id(val); + static_id_indirect(val); + ref_id(val); +} |