diff options
Diffstat (limited to 'src/test/ui/nll/type-check-pointer-comparisons.rs')
-rw-r--r-- | src/test/ui/nll/type-check-pointer-comparisons.rs | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/src/test/ui/nll/type-check-pointer-comparisons.rs b/src/test/ui/nll/type-check-pointer-comparisons.rs deleted file mode 100644 index 7b0ffeaef..000000000 --- a/src/test/ui/nll/type-check-pointer-comparisons.rs +++ /dev/null @@ -1,31 +0,0 @@ -// Check that we assert that pointers have a common subtype for comparisons - -fn compare_const<'a, 'b>(x: *const &mut &'a i32, y: *const &mut &'b i32) { - x == y; - //~^ ERROR lifetime may not live long enough - //~| ERROR lifetime may not live long enough -} - -fn compare_mut<'a, 'b>(x: *mut &'a i32, y: *mut &'b i32) { - x == y; - //~^ ERROR lifetime may not live long enough - //~| ERROR lifetime may not live long enough -} - -fn compare_fn_ptr<'a, 'b, 'c>(f: fn(&'c mut &'a i32), g: fn(&'c mut &'b i32)) { - f == g; - //~^ ERROR lifetime may not live long enough - //~| ERROR lifetime may not live long enough -} - -fn compare_hr_fn_ptr<'a>(f: fn(&'a i32), g: fn(&i32)) { - // Ideally this should compile with the operands swapped as well, but HIR - // type checking prevents it (and stops compilation) for now. - f == g; // OK -} - -fn compare_const_fn_ptr<'a>(f: *const fn(&'a i32), g: *const fn(&i32)) { - f == g; // OK -} - -fn main() {} |