//@run-rustfix

#![warn(clippy::unreadable_literal)]
#![allow(unused_tuple_struct_fields)]

struct Foo(u64);

macro_rules! foo {
    () => {
        Foo(123123123123)
    };
}

struct Bar(f32);

macro_rules! bar {
    () => {
        Bar(100200300400.100200300400500)
    };
}

fn main() {
    let _good = (
        0b1011_i64,
        0o1_234_u32,
        0x1_234_567,
        65536,
        1_2345_6789,
        1234_f32,
        1_234.12_f32,
        1_234.123_f32,
        1.123_4_f32,
    );
    let _bad = (0b11_0110_i64, 0x1234_5678_usize, 123_456_f32, 1.234_567_f32);
    let _good_sci = 1.1234e1;
    let _bad_sci = 1.123_456e1;

    let _fail1 = 0x00ab_cdef;
    let _fail2: u32 = 0xBAFE_BAFE;
    let _fail3 = 0x0abc_deff;
    let _fail4: i128 = 0x00ab_cabc_abca_bcab_cabc;
    let _fail5 = 1.100_300_400;

    let _ = foo!();
    let _ = bar!();
}