rust/tests/ui/min_max.rs
2017-02-07 21:05:30 +01:00

34 lines
1015 B
Rust

#![feature(plugin)]
#![plugin(clippy)]
#![deny(clippy)]
use std::cmp::{min, max};
use std::cmp::min as my_min;
use std::cmp::max as my_max;
const LARGE : usize = 3;
fn main() {
let x;
x = 2usize;
min(1, max(3, x)); //~ERROR this min/max combination leads to constant result
min(max(3, x), 1); //~ERROR this min/max combination leads to constant result
max(min(x, 1), 3); //~ERROR this min/max combination leads to constant result
max(3, min(x, 1)); //~ERROR this min/max combination leads to constant result
my_max(3, my_min(x, 1)); //~ERROR this min/max combination leads to constant result
min(3, max(1, x)); // ok, could be 1, 2 or 3 depending on x
min(1, max(LARGE, x)); // no error, we don't lookup consts here
let s;
s = "Hello";
min("Apple", max("Zoo", s)); //~ERROR this min/max combination leads to constant result
max(min(s, "Apple"), "Zoo"); //~ERROR this min/max combination leads to constant result
max("Apple", min(s, "Zoo")); // ok
}