about summary refs log tree commit diff
path: root/tests/ui/numbers-arithmetic/usize-base.rs
blob: 833fc0497989d6cf58f7c4e0a0fcc9e1694b1d7b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
//! Tests basic `usize` functionality

//@ run-pass

pub fn main() {
    // Literal matches assignment type
    let a: usize = 42usize;
    // Literal cast
    let b: usize = 42 as usize;
    // Literal type inference from assignment type
    let c: usize = 42;
    // Assignment type inference from literal (and later comparison)
    let d = 42usize;
    // Function return value type inference
    let e = return_val();

    assert_eq!(a, b);
    assert_eq!(a, c);
    assert_eq!(a, d);
    assert_eq!(a, e);
}

fn return_val() -> usize {
    42
}