From 66770d20b3f7288145b29c70359128c0dddcb992 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Fri, 22 Mar 2013 16:07:55 -0700 Subject: [PATCH] test: Add lifetime binders and new-style lifetime parameters to the test suite --- ...gions-infer-contravariance-due-to-immutability.rs | 2 +- .../regions-infer-contravariance-due-to-ret.rs | 12 ++++++------ .../regions-infer-covariance-due-to-arg.rs | 10 +++++----- .../regions-infer-invariance-due-to-arg-and-ret.rs | 8 ++++---- .../regions-infer-invariance-due-to-mutability-3.rs | 12 ++++++------ .../regions-infer-invariance-due-to-mutability-4.rs | 12 ++++++------ .../regions-infer-invariance-due-to-mutability.rs | 8 ++++---- src/test/compile-fail/regions-trait-3.rs | 6 +++--- src/test/run-pass/const-fn-val.rs | 2 +- src/test/run-pass/issue-2502.rs | 4 ++-- src/test/run-pass/issue-2735-2.rs | 4 ++-- src/test/run-pass/issue-2735-3.rs | 4 ++-- src/test/run-pass/issue-2748-a.rs | 2 +- src/test/run-pass/regions-copy-closure.rs | 2 +- src/test/run-pass/regions-infer-contravariance.rs | 2 +- src/test/run-pass/regions-mock-trans.rs | 2 +- src/test/run-pass/regions-static-closure.rs | 2 +- 17 files changed, 47 insertions(+), 47 deletions(-) diff --git a/src/test/compile-fail/regions-infer-contravariance-due-to-immutability.rs b/src/test/compile-fail/regions-infer-contravariance-due-to-immutability.rs index fca8f759da0b..0b7477a30989 100644 --- a/src/test/compile-fail/regions-infer-contravariance-due-to-immutability.rs +++ b/src/test/compile-fail/regions-infer-contravariance-due-to-immutability.rs @@ -20,7 +20,7 @@ fn to_shorter_lifetime(bi: contravariant<'r>) { let bj: contravariant<'blk> = bi; } -fn to_longer_lifetime(bi: contravariant<'r>) -> contravariant/&static { +fn to_longer_lifetime(bi: contravariant<'r>) -> contravariant<'static> { bi //~ ERROR mismatched types } diff --git a/src/test/compile-fail/regions-infer-contravariance-due-to-ret.rs b/src/test/compile-fail/regions-infer-contravariance-due-to-ret.rs index d93713f3f233..15f40a917358 100644 --- a/src/test/compile-fail/regions-infer-contravariance-due-to-ret.rs +++ b/src/test/compile-fail/regions-infer-contravariance-due-to-ret.rs @@ -13,19 +13,19 @@ // You can upcast to a *smaller region* but not a larger one. This is // the normal case. -struct contravariant { +struct contravariant<'self> { f: @fn() -> &'self int } -fn to_same_lifetime(bi: contravariant/&r) { - let bj: contravariant/&r = bi; +fn to_same_lifetime<'r>(bi: contravariant<'r>) { + let bj: contravariant<'r> = bi; } -fn to_shorter_lifetime(bi: contravariant/&r) { - let bj: contravariant/&blk = bi; +fn to_shorter_lifetime<'r>(bi: contravariant<'r>) { + let bj: contravariant<'blk> = bi; } -fn to_longer_lifetime(bi: contravariant/&r) -> contravariant/&static { +fn to_longer_lifetime<'r>(bi: contravariant<'r>) -> contravariant<'static> { bi //~ ERROR mismatched types } diff --git a/src/test/compile-fail/regions-infer-covariance-due-to-arg.rs b/src/test/compile-fail/regions-infer-covariance-due-to-arg.rs index c527cdf233d6..c92d770b1b6e 100644 --- a/src/test/compile-fail/regions-infer-covariance-due-to-arg.rs +++ b/src/test/compile-fail/regions-infer-covariance-due-to-arg.rs @@ -16,15 +16,15 @@ struct covariant { f: @fn(x: &'self int) -> int } -fn to_same_lifetime(bi: covariant/&r) { - let bj: covariant/&r = bi; +fn to_same_lifetime<'r>(bi: covariant<'r>) { + let bj: covariant<'r> = bi; } -fn to_shorter_lifetime(bi: covariant/&r) { - let bj: covariant/&blk = bi; //~ ERROR mismatched types +fn to_shorter_lifetime<'r>(bi: covariant<'r>) { + let bj: covariant<'blk> = bi; //~ ERROR mismatched types } -fn to_longer_lifetime(bi: covariant/&r) -> covariant/&static { +fn to_longer_lifetime<'r>(bi: covariant<'r>) -> covariant<'static> { bi } diff --git a/src/test/compile-fail/regions-infer-invariance-due-to-arg-and-ret.rs b/src/test/compile-fail/regions-infer-invariance-due-to-arg-and-ret.rs index 3ad841923e31..0d4d4056a440 100644 --- a/src/test/compile-fail/regions-infer-invariance-due-to-arg-and-ret.rs +++ b/src/test/compile-fail/regions-infer-invariance-due-to-arg-and-ret.rs @@ -12,19 +12,19 @@ // // You cannot convert between regions. -struct invariant { +struct invariant<'self> { f: &'self fn(x: &'self int) -> &'self int } -fn to_same_lifetime(bi: invariant<'r>) { +fn to_same_lifetime<'r>(bi: invariant<'r>) { let bj: invariant<'r> = bi; } -fn to_shorter_lifetime(bi: invariant<'r>) { +fn to_shorter_lifetime<'r>(bi: invariant<'r>) { let bj: invariant<'blk> = bi; //~ ERROR mismatched types } -fn to_longer_lifetime(bi: invariant<'r>) -> invariant/&static { +fn to_longer_lifetime<'r>(bi: invariant<'r>) -> invariant<'static> { bi //~ ERROR mismatched types } diff --git a/src/test/compile-fail/regions-infer-invariance-due-to-mutability-3.rs b/src/test/compile-fail/regions-infer-invariance-due-to-mutability-3.rs index 15b39d772f08..4c9d397f971d 100644 --- a/src/test/compile-fail/regions-infer-invariance-due-to-mutability-3.rs +++ b/src/test/compile-fail/regions-infer-invariance-due-to-mutability-3.rs @@ -8,19 +8,19 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -struct invariant { +struct invariant<'self> { f: @fn(x: @mut &'self int) } -fn to_same_lifetime(bi: invariant/&r) { - let bj: invariant/&r = bi; +fn to_same_lifetime<'r>(bi: invariant<'r>) { + let bj: invariant<'r> = bi; } -fn to_shorter_lifetime(bi: invariant/&r) { - let bj: invariant/&blk = bi; //~ ERROR mismatched types +fn to_shorter_lifetime(bi: invariant<'r>) { + let bj: invariant<'blk> = bi; //~ ERROR mismatched types } -fn to_longer_lifetime(bi: invariant/&r) -> invariant/&static { +fn to_longer_lifetime(bi: invariant<'r>) -> invariant<'static> { bi //~ ERROR mismatched types } diff --git a/src/test/compile-fail/regions-infer-invariance-due-to-mutability-4.rs b/src/test/compile-fail/regions-infer-invariance-due-to-mutability-4.rs index ff2b4246f01b..6789476974b7 100644 --- a/src/test/compile-fail/regions-infer-invariance-due-to-mutability-4.rs +++ b/src/test/compile-fail/regions-infer-invariance-due-to-mutability-4.rs @@ -8,19 +8,19 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -struct invariant { +struct invariant<'self> { f: @fn() -> @mut &'self int } -fn to_same_lifetime(bi: invariant/&r) { - let bj: invariant/&r = bi; +fn to_same_lifetime(bi: invariant<'r>) { + let bj: invariant<'r> = bi; } -fn to_shorter_lifetime(bi: invariant/&r) { - let bj: invariant/&blk = bi; //~ ERROR mismatched types +fn to_shorter_lifetime(bi: invariant<'r>) { + let bj: invariant<'blk> = bi; //~ ERROR mismatched types } -fn to_longer_lifetime(bi: invariant/&r) -> invariant/&static { +fn to_longer_lifetime(bi: invariant<'r>) -> invariant<'static> { bi //~ ERROR mismatched types } diff --git a/src/test/compile-fail/regions-infer-invariance-due-to-mutability.rs b/src/test/compile-fail/regions-infer-invariance-due-to-mutability.rs index f9c6e2e36ec9..c2a7f29a8ab5 100644 --- a/src/test/compile-fail/regions-infer-invariance-due-to-mutability.rs +++ b/src/test/compile-fail/regions-infer-invariance-due-to-mutability.rs @@ -8,19 +8,19 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -struct invariant { +struct invariant<'self> { f: @mut &'self int } -fn to_same_lifetime(bi: invariant<'r>) { +fn to_same_lifetime<'r>(bi: invariant<'r>) { let bj: invariant<'r> = bi; } -fn to_shorter_lifetime(bi: invariant<'r>) { +fn to_shorter_lifetime<'r>(bi: invariant<'r>) { let bj: invariant<'blk> = bi; //~ ERROR mismatched types } -fn to_longer_lifetime(bi: invariant<'r>) -> invariant/&static { +fn to_longer_lifetime<'r>(bi: invariant<'r>) -> invariant<'static> { bi //~ ERROR mismatched types } diff --git a/src/test/compile-fail/regions-trait-3.rs b/src/test/compile-fail/regions-trait-3.rs index e947dbf93083..072b0e83fdf5 100644 --- a/src/test/compile-fail/regions-trait-3.rs +++ b/src/test/compile-fail/regions-trait-3.rs @@ -11,11 +11,11 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -trait get_ctxt { +trait get_ctxt<'self> { fn get_ctxt(self) -> &'self uint; } -fn make_gc1(gc: @get_ctxt/&a) -> @get_ctxt/&b { +fn make_gc1(gc: @get_ctxt<'a>) -> @get_ctxt<'b> { return gc; //~ ERROR mismatched types: expected `@get_ctxt/&b` but found `@get_ctxt/&a` } @@ -27,7 +27,7 @@ impl get_ctxt for Foo<'self> { fn get_ctxt(&self) -> &'self uint { self.r } } -fn make_gc2(foo: Foo/&a) -> @get_ctxt/&b { +fn make_gc2<'a,'b>(foo: Foo<'a>) -> @get_ctxt<'b> { return @foo as @get_ctxt; //~ ERROR cannot infer an appropriate lifetime } diff --git a/src/test/run-pass/const-fn-val.rs b/src/test/run-pass/const-fn-val.rs index 1c0cfa64d88f..b3667d4f81eb 100644 --- a/src/test/run-pass/const-fn-val.rs +++ b/src/test/run-pass/const-fn-val.rs @@ -14,7 +14,7 @@ fn foo() -> int { struct Bar { f: &'self fn() -> int } -static b : Bar/&static = Bar { f: foo }; +static b : Bar<'static> = Bar { f: foo }; pub fn main() { fail_unless!((b.f)() == 0xca7f000d); diff --git a/src/test/run-pass/issue-2502.rs b/src/test/run-pass/issue-2502.rs index cfae757aee82..6dd8e3d83de8 100644 --- a/src/test/run-pass/issue-2502.rs +++ b/src/test/run-pass/issue-2502.rs @@ -12,13 +12,13 @@ struct font { fontbuf: &'self ~[u8], } -pub impl font/&self { +pub impl<'self> font<'self> { fn buf(&self) -> &'self ~[u8] { self.fontbuf } } -fn font(fontbuf: &'r ~[u8]) -> font/&r { +fn font(fontbuf: &'r ~[u8]) -> font<'r> { font { fontbuf: fontbuf } diff --git a/src/test/run-pass/issue-2735-2.rs b/src/test/run-pass/issue-2735-2.rs index 52a5f1934479..3f13b9f9e67a 100644 --- a/src/test/run-pass/issue-2735-2.rs +++ b/src/test/run-pass/issue-2735-2.rs @@ -14,7 +14,7 @@ struct defer { } #[unsafe_destructor] -impl Drop for defer/&self { +impl<'self> Drop for defer<'self> { fn finalize(&self) { unsafe { *(self.b) = true; @@ -22,7 +22,7 @@ impl Drop for defer/&self { } } -fn defer(b: &'r mut bool) -> defer/&r { +fn defer<'r>(b: &'r mut bool) -> defer<'r> { defer { b: b } diff --git a/src/test/run-pass/issue-2735-3.rs b/src/test/run-pass/issue-2735-3.rs index 02e9f6f8b67e..40c71eec4d38 100644 --- a/src/test/run-pass/issue-2735-3.rs +++ b/src/test/run-pass/issue-2735-3.rs @@ -14,7 +14,7 @@ struct defer { } #[unsafe_destructor] -impl Drop for defer/&self { +impl<'self> Drop for defer<'self> { fn finalize(&self) { unsafe { *(self.b) = true; @@ -22,7 +22,7 @@ impl Drop for defer/&self { } } -fn defer(b: &'r mut bool) -> defer/&r { +fn defer(b: &'r mut bool) -> defer<'r> { defer { b: b } diff --git a/src/test/run-pass/issue-2748-a.rs b/src/test/run-pass/issue-2748-a.rs index f36b364aadda..8a0f64b32d49 100644 --- a/src/test/run-pass/issue-2748-a.rs +++ b/src/test/run-pass/issue-2748-a.rs @@ -12,7 +12,7 @@ struct CMap { buf: &'self [u8], } -fn CMap(buf: &'r [u8]) -> CMap/&r { +fn CMap<'r>(buf: &'r [u8]) -> CMap<'r> { CMap { buf: buf } diff --git a/src/test/run-pass/regions-copy-closure.rs b/src/test/run-pass/regions-copy-closure.rs index 6bd42769cec0..0fc8cb49f077 100644 --- a/src/test/run-pass/regions-copy-closure.rs +++ b/src/test/run-pass/regions-copy-closure.rs @@ -12,7 +12,7 @@ struct closure_box { cl: &'self fn(), } -fn box_it(+x: &'r fn()) -> closure_box/&r { +fn box_it<'r>(+x: &'r fn()) -> closure_box<'r> { closure_box {cl: x} } diff --git a/src/test/run-pass/regions-infer-contravariance.rs b/src/test/run-pass/regions-infer-contravariance.rs index 7d966b06e353..ef2be398b64d 100644 --- a/src/test/run-pass/regions-infer-contravariance.rs +++ b/src/test/run-pass/regions-infer-contravariance.rs @@ -20,7 +20,7 @@ fn with(bi: &'r boxed_int) { // Here, the upcast is allowed because the `boxed_int` type is // contravariant with respect to `&r`. See also // compile-fail/regions-infer-invariance-due-to-mutability.rs - let bi: &'blk boxed_int/&blk = bi; + let bi: &'blk boxed_int<'blk> = bi; fail_unless!(*get(bi) == 22); } diff --git a/src/test/run-pass/regions-mock-trans.rs b/src/test/run-pass/regions-mock-trans.rs index b249a4470cb9..717588ab4cb9 100644 --- a/src/test/run-pass/regions-mock-trans.rs +++ b/src/test/run-pass/regions-mock-trans.rs @@ -26,7 +26,7 @@ struct Ccx { fn alloc(_bcx : &'a arena) -> &'a Bcx<'a> { unsafe { return cast::reinterpret_cast( - &libc::malloc(sys::size_of::() as libc::size_t)); + &libc::malloc(sys::size_of::>() as libc::size_t)); } } diff --git a/src/test/run-pass/regions-static-closure.rs b/src/test/run-pass/regions-static-closure.rs index 0351f031e093..5673a1e50f07 100644 --- a/src/test/run-pass/regions-static-closure.rs +++ b/src/test/run-pass/regions-static-closure.rs @@ -16,7 +16,7 @@ fn box_it(+x: &'r fn()) -> closure_box<'r> { closure_box {cl: x} } -fn call_static_closure(cl: closure_box/&static) { +fn call_static_closure(cl: closure_box<'static>) { (cl.cl)(); }