diff options
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/auxiliary/extern_calling_convention.rs | 2 | ||||
| -rw-r--r-- | src/test/compile-fail/empty-struct-unit-pat.rs | 2 | ||||
| -rw-r--r-- | src/test/compile-fail/private-in-public-warn.rs | 36 | ||||
| -rw-r--r-- | src/test/compile-fail/private-variant-reexport.rs | 4 | ||||
| -rw-r--r-- | src/test/compile-fail/type-parameter-invalid-lint.rs | 2 | ||||
| -rw-r--r-- | src/test/run-pass/bitwise.rs | 4 | ||||
| -rw-r--r-- | src/test/run-pass/conditional-compile-arch.rs | 6 | ||||
| -rw-r--r-- | src/test/run-pass/intrinsic-alignment.rs | 2 | ||||
| -rw-r--r-- | src/test/run-pass/issue-2895.rs | 4 | ||||
| -rw-r--r-- | src/test/run-pass/rec-align-u32.rs | 8 | ||||
| -rw-r--r-- | src/test/run-pass/rec-align-u64.rs | 2 | ||||
| -rw-r--r-- | src/test/run-pass/struct-return.rs | 4 |
12 files changed, 58 insertions, 18 deletions
diff --git a/src/test/auxiliary/extern_calling_convention.rs b/src/test/auxiliary/extern_calling_convention.rs index 22cbc415eb4..55a4226c663 100644 --- a/src/test/auxiliary/extern_calling_convention.rs +++ b/src/test/auxiliary/extern_calling_convention.rs @@ -24,7 +24,7 @@ pub extern "win64" fn foo(a: isize, b: isize, c: isize, d: isize) { } #[inline(never)] -#[cfg(any(target_arch = "x86", target_arch = "arm", target_arch = "aarch64"))] +#[cfg(not(target_arch = "x86_64"))] pub extern fn foo(a: isize, b: isize, c: isize, d: isize) { assert_eq!(a, 1); assert_eq!(b, 2); diff --git a/src/test/compile-fail/empty-struct-unit-pat.rs b/src/test/compile-fail/empty-struct-unit-pat.rs index 7e13f539bb0..cffd9fd9b49 100644 --- a/src/test/compile-fail/empty-struct-unit-pat.rs +++ b/src/test/compile-fail/empty-struct-unit-pat.rs @@ -32,6 +32,7 @@ fn main() { //~ ERROR: compilation successful // } match e1 { Empty1(..) => () //~ WARN `Empty1` does not name a tuple variant or a tuple struct + //~^ WARN hard error } // Rejected by parser as yet // match e2 { @@ -39,5 +40,6 @@ fn main() { //~ ERROR: compilation successful // } match e2 { E::Empty2(..) => () //~ WARN `E::Empty2` does not name a tuple variant or a tuple struct + //~^ WARN hard error } } diff --git a/src/test/compile-fail/private-in-public-warn.rs b/src/test/compile-fail/private-in-public-warn.rs index 2d1de3ca282..9aab06ce14e 100644 --- a/src/test/compile-fail/private-in-public-warn.rs +++ b/src/test/compile-fail/private-in-public-warn.rs @@ -26,23 +26,34 @@ mod types { } pub type Alias = Priv; //~ WARN private type in public interface + //~^ WARNING hard error pub enum E { V1(Priv), //~ WARN private type in public interface + //~^ WARNING hard error V2 { field: Priv }, //~ WARN private type in public interface + //~^ WARNING hard error } pub trait Tr { const C: Priv = Priv; //~ WARN private type in public interface + //~^ WARNING hard error type Alias = Priv; //~ WARN private type in public interface + //~^ WARNING hard error fn f1(arg: Priv) {} //~ WARN private type in public interface + //~^ WARNING hard error fn f2() -> Priv { panic!() } //~ WARN private type in public interface + //~^ WARNING hard error } extern { pub static ES: Priv; //~ WARN private type in public interface + //~^ WARNING hard error pub fn ef1(arg: Priv); //~ WARN private type in public interface + //~^ WARNING hard error pub fn ef2() -> Priv; //~ WARN private type in public interface + //~^ WARNING hard error } impl PubTr for Pub { type Alias = Priv; //~ WARN private type in public interface + //~^ WARNING hard error } } @@ -53,14 +64,21 @@ mod traits { pub type Alias<T: PrivTr> = T; //~ WARN private trait in public interface //~^ WARN trait bounds are not (yet) enforced in type definitions + //~| WARNING hard error pub trait Tr1: PrivTr {} //~ WARN private trait in public interface + //~^ WARNING hard error pub trait Tr2<T: PrivTr> {} //~ WARN private trait in public interface + //~^ WARNING hard error pub trait Tr3 { type Alias: PrivTr; //~ WARN private trait in public interface + //~^ WARNING hard error fn f<T: PrivTr>(arg: T) {} //~ WARN private trait in public interface + //~^ WARNING hard error } impl<T: PrivTr> Pub<T> {} //~ WARN private trait in public interface + //~^ WARNING hard error impl<T: PrivTr> PubTr for Pub<T> {} //~ WARN private trait in public interface + //~^ WARNING hard error } mod traits_where { @@ -69,12 +87,17 @@ mod traits_where { pub trait PubTr {} pub type Alias<T> where T: PrivTr = T; //~ WARN private trait in public interface + //~^ WARNING hard error pub trait Tr2<T> where T: PrivTr {} //~ WARN private trait in public interface + //~^ WARNING hard error pub trait Tr3 { fn f<T>(arg: T) where T: PrivTr {} //~ WARN private trait in public interface + //~^ WARNING hard error } impl<T> Pub<T> where T: PrivTr {} //~ WARN private trait in public interface + //~^ WARNING hard error impl<T> PubTr for Pub<T> where T: PrivTr {} //~ WARN private trait in public interface + //~^ WARNING hard error } mod generics { @@ -84,9 +107,13 @@ mod generics { pub trait PubTr<T> {} pub trait Tr1: PrivTr<Pub> {} //~ WARN private trait in public interface + //~^ WARNING hard error pub trait Tr2: PubTr<Priv> {} //~ WARN private type in public interface + //~^ WARNING hard error pub trait Tr3: PubTr<[Priv; 1]> {} //~ WARN private type in public interface + //~^ WARNING hard error pub trait Tr4: PubTr<Pub<Priv>> {} //~ WARN private type in public interface + //~^ WARNING hard error } mod impls { @@ -113,6 +140,7 @@ mod impls { } impl PubTr for Pub { type Alias = Priv; //~ WARN private type in public interface + //~^ WARNING hard error } } @@ -179,9 +207,11 @@ mod aliases_pub { pub trait Tr1: PrivUseAliasTr {} // OK // This should be OK, if type aliases are substituted pub trait Tr2: PrivUseAliasTr<PrivAlias> {} //~ WARN private type in public interface + //~^ WARNING hard error impl PrivAlias { pub fn f(arg: Priv) {} //~ WARN private type in public interface + //~^ WARNING hard error } // This doesn't even parse // impl <Priv as PrivTr>::AssocAlias { @@ -189,12 +219,15 @@ mod aliases_pub { // } impl PrivUseAliasTr for PrivUseAlias { type Check = Priv; //~ WARN private type in public interface + //~^ WARNING hard error } impl PrivUseAliasTr for PrivAlias { type Check = Priv; //~ WARN private type in public interface + //~^ WARNING hard error } impl PrivUseAliasTr for <Priv as PrivTr>::AssocAlias { type Check = Priv; //~ WARN private type in public interface + //~^ WARNING hard error } } @@ -217,8 +250,11 @@ mod aliases_priv { impl PrivTr for Priv {} pub trait Tr1: PrivUseAliasTr {} //~ WARN private trait in public interface + //~^ WARNING hard error pub trait Tr2: PrivUseAliasTr<PrivAlias> {} //~ WARN private trait in public interface //~^ WARN private type in public interface + //~| WARNING hard error + //~| WARNING hard error impl PrivUseAlias { pub fn f(arg: Priv) {} // OK diff --git a/src/test/compile-fail/private-variant-reexport.rs b/src/test/compile-fail/private-variant-reexport.rs index 39698fa593a..06f08dc13c6 100644 --- a/src/test/compile-fail/private-variant-reexport.rs +++ b/src/test/compile-fail/private-variant-reexport.rs @@ -13,18 +13,22 @@ mod m1 { pub use ::E::V; //~ WARN variant `V` is private, and cannot be reexported + //~^ WARNING hard error } mod m2 { pub use ::E::{V}; //~ WARN variant `V` is private, and cannot be reexported + //~^ WARNING hard error } mod m3 { pub use ::E::V::{self}; //~ WARN variant `V` is private, and cannot be reexported + //~^ WARNING hard error } mod m4 { pub use ::E::*; //~ WARN variant `V` is private, and cannot be reexported + //~^ WARNING hard error } enum E { V } diff --git a/src/test/compile-fail/type-parameter-invalid-lint.rs b/src/test/compile-fail/type-parameter-invalid-lint.rs index a3ecbfa84f0..9291329fac3 100644 --- a/src/test/compile-fail/type-parameter-invalid-lint.rs +++ b/src/test/compile-fail/type-parameter-invalid-lint.rs @@ -13,5 +13,5 @@ fn avg<T=i32>(_: T) {} //~^ ERROR defaults for type parameters are only allowed -//~| NOTE HARD ERROR +//~| WARNING hard error fn main() {} diff --git a/src/test/run-pass/bitwise.rs b/src/test/run-pass/bitwise.rs index ac24ed8d916..bb4b9cfecf7 100644 --- a/src/test/run-pass/bitwise.rs +++ b/src/test/run-pass/bitwise.rs @@ -8,12 +8,12 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -#[cfg(any(target_arch = "x86", target_arch = "arm"))] +#[cfg(any(target_pointer_width = "32"))] fn target() { assert_eq!(-1000isize as usize >> 3_usize, 536870787_usize); } -#[cfg(any(target_arch = "x86_64", target_arch = "aarch64"))] +#[cfg(any(target_pointer_width = "64"))] fn target() { assert_eq!(-1000isize as usize >> 3_usize, 2305843009213693827_usize); } diff --git a/src/test/run-pass/conditional-compile-arch.rs b/src/test/run-pass/conditional-compile-arch.rs index e51270fdc8d..4e4c98e50bc 100644 --- a/src/test/run-pass/conditional-compile-arch.rs +++ b/src/test/run-pass/conditional-compile-arch.rs @@ -21,3 +21,9 @@ pub fn main() { } #[cfg(target_arch = "aarch64")] pub fn main() { } + +#[cfg(target_arch = "powerpc64")] +pub fn main() { } + +#[cfg(target_arch = "powerpc64le")] +pub fn main() { } diff --git a/src/test/run-pass/intrinsic-alignment.rs b/src/test/run-pass/intrinsic-alignment.rs index ef69946d7aa..a4720d48213 100644 --- a/src/test/run-pass/intrinsic-alignment.rs +++ b/src/test/run-pass/intrinsic-alignment.rs @@ -35,7 +35,7 @@ mod m { } #[main] - #[cfg(any(target_arch = "x86_64", target_arch = "arm", target_arch = "aarch64"))] + #[cfg(not(target_arch = "x86"))] pub fn main() { unsafe { assert_eq!(::rusti::pref_align_of::<u64>(), 8); diff --git a/src/test/run-pass/issue-2895.rs b/src/test/run-pass/issue-2895.rs index 93d9300edf6..5587f68bd18 100644 --- a/src/test/run-pass/issue-2895.rs +++ b/src/test/run-pass/issue-2895.rs @@ -23,13 +23,13 @@ impl Drop for Kitty { fn drop(&mut self) {} } -#[cfg(any(target_arch = "x86_64", target_arch="aarch64"))] +#[cfg(target_pointer_width = "64")] pub fn main() { assert_eq!(mem::size_of::<Cat>(), 8 as usize); assert_eq!(mem::size_of::<Kitty>(), 16 as usize); } -#[cfg(any(target_arch = "x86", target_arch = "arm"))] +#[cfg(target_pointer_width = "32")] pub fn main() { assert_eq!(mem::size_of::<Cat>(), 4 as usize); assert_eq!(mem::size_of::<Kitty>(), 8 as usize); diff --git a/src/test/run-pass/rec-align-u32.rs b/src/test/run-pass/rec-align-u32.rs index e5d76c3e67a..4a115c737da 100644 --- a/src/test/run-pass/rec-align-u32.rs +++ b/src/test/run-pass/rec-align-u32.rs @@ -35,14 +35,6 @@ struct Outer { t: Inner } - -#[cfg(any(target_arch = "x86", target_arch = "arm", target_arch = "aarch64"))] -mod m { - pub fn align() -> usize { 4 } - pub fn size() -> usize { 8 } -} - -#[cfg(target_arch = "x86_64")] mod m { pub fn align() -> usize { 4 } pub fn size() -> usize { 8 } diff --git a/src/test/run-pass/rec-align-u64.rs b/src/test/run-pass/rec-align-u64.rs index fc032aa3ff0..25cd77845ea 100644 --- a/src/test/run-pass/rec-align-u64.rs +++ b/src/test/run-pass/rec-align-u64.rs @@ -49,7 +49,7 @@ mod m { pub fn size() -> usize { 12 } } - #[cfg(any(target_arch = "x86_64", target_arch = "arm", target_arch = "aarch64"))] + #[cfg(not(target_arch = "x86"))] pub mod m { pub fn align() -> usize { 8 } pub fn size() -> usize { 16 } diff --git a/src/test/run-pass/struct-return.rs b/src/test/run-pass/struct-return.rs index 109287a83b1..6f23263790c 100644 --- a/src/test/run-pass/struct-return.rs +++ b/src/test/run-pass/struct-return.rs @@ -43,7 +43,7 @@ fn test1() { } } -#[cfg(any(target_arch = "x86_64", target_arch = "aarch64"))] +#[cfg(target_pointer_width = "64")] fn test2() { unsafe { let f = Floats { a: 1.234567890e-15_f64, @@ -59,7 +59,7 @@ fn test2() { } } -#[cfg(any(target_arch = "x86", target_arch = "arm"))] +#[cfg(target_pointer_width = "32")] fn test2() { } |
