mirror of
https://github.com/rust-lang/rust.git
synced 2025-02-05 03:23:25 +00:00
Add tests for the 'as' (cast) operator
This commit is contained in:
parent
5a0f18558e
commit
361adf9f86
8
src/test/compile-fail/nonscalar-cast.rs
Normal file
8
src/test/compile-fail/nonscalar-cast.rs
Normal file
@ -0,0 +1,8 @@
|
||||
// error-pattern:non-scalar cast
|
||||
|
||||
use std;
|
||||
import std::os;
|
||||
|
||||
fn main() {
|
||||
log { x: 1 } as int;
|
||||
}
|
8
src/test/compile-fail/unsupported-cast.rs
Normal file
8
src/test/compile-fail/unsupported-cast.rs
Normal file
@ -0,0 +1,8 @@
|
||||
// error-pattern:unsupported cast
|
||||
|
||||
use std;
|
||||
import std::os;
|
||||
|
||||
fn main() {
|
||||
log 1.0 as os::libc::FILE; // Can't cast float to native.
|
||||
}
|
253
src/test/run-pass/supported-cast.rs
Normal file
253
src/test/run-pass/supported-cast.rs
Normal file
@ -0,0 +1,253 @@
|
||||
use std;
|
||||
import std::os;
|
||||
|
||||
fn main() {
|
||||
let f = 1 as os::libc::FILE;
|
||||
log f as int;
|
||||
log f as uint;
|
||||
log f as i8;
|
||||
log f as i16;
|
||||
log f as i32;
|
||||
log f as i64;
|
||||
log f as u8;
|
||||
log f as u16;
|
||||
log f as u32;
|
||||
log f as u64;
|
||||
|
||||
log 1 as int;
|
||||
log 1 as uint;
|
||||
log 1 as float;
|
||||
log 1 as bool;
|
||||
log 1 as os::libc::FILE;
|
||||
log 1 as i8;
|
||||
log 1 as i16;
|
||||
log 1 as i32;
|
||||
log 1 as i64;
|
||||
log 1 as u8;
|
||||
log 1 as u16;
|
||||
log 1 as u32;
|
||||
log 1 as u64;
|
||||
log 1 as f32;
|
||||
log 1 as f64;
|
||||
|
||||
log 1u as int;
|
||||
log 1u as uint;
|
||||
log 1u as float;
|
||||
log 1u as bool;
|
||||
log 1u as os::libc::FILE;
|
||||
log 1u as i8;
|
||||
log 1u as i16;
|
||||
log 1u as i32;
|
||||
log 1u as i64;
|
||||
log 1u as u8;
|
||||
log 1u as u16;
|
||||
log 1u as u32;
|
||||
log 1u as u64;
|
||||
log 1u as f32;
|
||||
log 1u as f64;
|
||||
|
||||
log 1i8 as int;
|
||||
log 1i8 as uint;
|
||||
log 1i8 as float;
|
||||
log 1i8 as bool;
|
||||
log 1i8 as os::libc::FILE;
|
||||
log 1i8 as i8;
|
||||
log 1i8 as i16;
|
||||
log 1i8 as i32;
|
||||
log 1i8 as i64;
|
||||
log 1i8 as u8;
|
||||
log 1i8 as u16;
|
||||
log 1i8 as u32;
|
||||
log 1i8 as u64;
|
||||
log 1i8 as f32;
|
||||
log 1i8 as f64;
|
||||
|
||||
log 1u8 as int;
|
||||
log 1u8 as uint;
|
||||
log 1u8 as float;
|
||||
log 1u8 as bool;
|
||||
log 1u8 as os::libc::FILE;
|
||||
log 1u8 as i8;
|
||||
log 1u8 as i16;
|
||||
log 1u8 as i32;
|
||||
log 1u8 as i64;
|
||||
log 1u8 as u8;
|
||||
log 1u8 as u16;
|
||||
log 1u8 as u32;
|
||||
log 1u8 as u64;
|
||||
log 1u8 as f32;
|
||||
log 1u8 as f64;
|
||||
|
||||
log 1i16 as int;
|
||||
log 1i16 as uint;
|
||||
log 1i16 as float;
|
||||
log 1i16 as bool;
|
||||
log 1i16 as os::libc::FILE;
|
||||
log 1i16 as i8;
|
||||
log 1i16 as i16;
|
||||
log 1i16 as i32;
|
||||
log 1i16 as i64;
|
||||
log 1i16 as u8;
|
||||
log 1i16 as u16;
|
||||
log 1i16 as u32;
|
||||
log 1i16 as u64;
|
||||
log 1i16 as f32;
|
||||
log 1i16 as f64;
|
||||
|
||||
log 1u16 as int;
|
||||
log 1u16 as uint;
|
||||
log 1u16 as float;
|
||||
log 1u16 as bool;
|
||||
log 1u16 as os::libc::FILE;
|
||||
log 1u16 as i8;
|
||||
log 1u16 as i16;
|
||||
log 1u16 as i32;
|
||||
log 1u16 as i64;
|
||||
log 1u16 as u8;
|
||||
log 1u16 as u16;
|
||||
log 1u16 as u32;
|
||||
log 1u16 as u64;
|
||||
log 1u16 as f32;
|
||||
log 1u16 as f64;
|
||||
|
||||
log 1i32 as int;
|
||||
log 1i32 as uint;
|
||||
log 1i32 as float;
|
||||
log 1i32 as bool;
|
||||
log 1i32 as os::libc::FILE;
|
||||
log 1i32 as i8;
|
||||
log 1i32 as i16;
|
||||
log 1i32 as i32;
|
||||
log 1i32 as i64;
|
||||
log 1i32 as u8;
|
||||
log 1i32 as u16;
|
||||
log 1i32 as u32;
|
||||
log 1i32 as u64;
|
||||
log 1i32 as f32;
|
||||
log 1i32 as f64;
|
||||
|
||||
log 1u32 as int;
|
||||
log 1u32 as uint;
|
||||
log 1u32 as float;
|
||||
log 1u32 as bool;
|
||||
log 1u32 as os::libc::FILE;
|
||||
log 1u32 as i8;
|
||||
log 1u32 as i16;
|
||||
log 1u32 as i32;
|
||||
log 1u32 as i64;
|
||||
log 1u32 as u8;
|
||||
log 1u32 as u16;
|
||||
log 1u32 as u32;
|
||||
log 1u32 as u64;
|
||||
log 1u32 as f32;
|
||||
log 1u32 as f64;
|
||||
|
||||
log 1i64 as int;
|
||||
log 1i64 as uint;
|
||||
log 1i64 as float;
|
||||
log 1i64 as bool;
|
||||
log 1i64 as os::libc::FILE;
|
||||
log 1i64 as i8;
|
||||
log 1i64 as i16;
|
||||
log 1i64 as i32;
|
||||
log 1i64 as i64;
|
||||
log 1i64 as u8;
|
||||
log 1i64 as u16;
|
||||
log 1i64 as u32;
|
||||
log 1i64 as u64;
|
||||
log 1i64 as f32;
|
||||
log 1i64 as f64;
|
||||
|
||||
log 1u64 as int;
|
||||
log 1u64 as uint;
|
||||
log 1u64 as float;
|
||||
log 1u64 as bool;
|
||||
log 1u64 as os::libc::FILE;
|
||||
log 1u64 as i8;
|
||||
log 1u64 as i16;
|
||||
log 1u64 as i32;
|
||||
log 1u64 as i64;
|
||||
log 1u64 as u8;
|
||||
log 1u64 as u16;
|
||||
log 1u64 as u32;
|
||||
log 1u64 as u64;
|
||||
log 1u64 as f32;
|
||||
log 1u64 as f64;
|
||||
|
||||
log 1u64 as int;
|
||||
log 1u64 as uint;
|
||||
log 1u64 as float;
|
||||
log 1u64 as bool;
|
||||
log 1u64 as os::libc::FILE;
|
||||
log 1u64 as i8;
|
||||
log 1u64 as i16;
|
||||
log 1u64 as i32;
|
||||
log 1u64 as i64;
|
||||
log 1u64 as u8;
|
||||
log 1u64 as u16;
|
||||
log 1u64 as u32;
|
||||
log 1u64 as u64;
|
||||
log 1u64 as f32;
|
||||
log 1u64 as f64;
|
||||
|
||||
log true as int;
|
||||
log true as uint;
|
||||
log true as float;
|
||||
log true as bool;
|
||||
log true as os::libc::FILE;
|
||||
log true as i8;
|
||||
log true as i16;
|
||||
log true as i32;
|
||||
log true as i64;
|
||||
log true as u8;
|
||||
log true as u16;
|
||||
log true as u32;
|
||||
log true as u64;
|
||||
log true as f32;
|
||||
log true as f64;
|
||||
|
||||
log 1. as int;
|
||||
log 1. as uint;
|
||||
log 1. as float;
|
||||
log 1. as bool;
|
||||
log 1. as i8;
|
||||
log 1. as i16;
|
||||
log 1. as i32;
|
||||
log 1. as i64;
|
||||
log 1. as u8;
|
||||
log 1. as u16;
|
||||
log 1. as u32;
|
||||
log 1. as u64;
|
||||
log 1. as f32;
|
||||
log 1. as f64;
|
||||
|
||||
log 1f32 as int;
|
||||
log 1f32 as uint;
|
||||
log 1f32 as float;
|
||||
log 1f32 as bool;
|
||||
log 1f32 as i8;
|
||||
log 1f32 as i16;
|
||||
log 1f32 as i32;
|
||||
log 1f32 as i64;
|
||||
log 1f32 as u8;
|
||||
log 1f32 as u16;
|
||||
log 1f32 as u32;
|
||||
log 1f32 as u64;
|
||||
log 1f32 as f32;
|
||||
log 1f32 as f64;
|
||||
|
||||
log 1f64 as int;
|
||||
log 1f64 as uint;
|
||||
log 1f64 as float;
|
||||
log 1f64 as bool;
|
||||
log 1f64 as i8;
|
||||
log 1f64 as i16;
|
||||
log 1f64 as i32;
|
||||
log 1f64 as i64;
|
||||
log 1f64 as u8;
|
||||
log 1f64 as u16;
|
||||
log 1f64 as u32;
|
||||
log 1f64 as u64;
|
||||
log 1f64 as f32;
|
||||
log 1f64 as f64;
|
||||
}
|
Loading…
Reference in New Issue
Block a user