| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:12:31 |
| | |
| LL | const VALID_LOW_1: char = 0x1000 as char; // 4096 |
| | ^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{1000}'` |
| | |
| note: the lint level is defined here |
| --> $DIR/cast-char.rs:1:9 |
| | |
| LL | #![deny(overflowing_literals)] |
| | ^^^^^^^^^^^^^^^^^^^^ |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:14:31 |
| | |
| LL | const VALID_LOW_2: char = 0xD7FF as char; // last valid in lower range |
| | ^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{D7FF}'` |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:16:31 |
| | |
| LL | const VALID_LOW_3: char = 0x0500 as char; // cyrillic range |
| | ^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{500}'` |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:20:32 |
| | |
| LL | const VALID_HIGH_1: char = 0xE000 as char; // first valid in upper range |
| | ^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{E000}'` |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:22:32 |
| | |
| LL | const VALID_HIGH_2: char = 0x1F888 as char; // 129160 - example from issue |
| | ^^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{1F888}'` |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:24:32 |
| | |
| LL | const VALID_HIGH_3: char = 0x10FFFF as char; // maximum valid Unicode |
| | ^^^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{10FFFF}'` |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:26:32 |
| | |
| LL | const VALID_HIGH_4: char = 0xFFFD as char; // replacement character |
| | ^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{FFFD}'` |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:28:32 |
| | |
| LL | const VALID_HIGH_5: char = 0x1F600 as char; // emoji |
| | ^^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{1F600}'` |
| |
| error: surrogate values are not valid for `char` |
| --> $DIR/cast-char.rs:34:39 |
| | |
| LL | const INVALID_SURROGATE_1: char = 0xD800 as char; // first surrogate |
| | ^^^^^^^^^^^^^^ |
| | |
| = note: `0xD800..=0xDFFF` are reserved for Unicode surrogates and are not valid `char` values |
| |
| error: surrogate values are not valid for `char` |
| --> $DIR/cast-char.rs:36:39 |
| | |
| LL | const INVALID_SURROGATE_2: char = 0xDFFF as char; // last surrogate |
| | ^^^^^^^^^^^^^^ |
| | |
| = note: `0xD800..=0xDFFF` are reserved for Unicode surrogates and are not valid `char` values |
| |
| error: surrogate values are not valid for `char` |
| --> $DIR/cast-char.rs:38:39 |
| | |
| LL | const INVALID_SURROGATE_3: char = 0xDB00 as char; // middle of surrogate range |
| | ^^^^^^^^^^^^^^ |
| | |
| = note: `0xD800..=0xDFFF` are reserved for Unicode surrogates and are not valid `char` values |
| |
| error: value exceeds maximum `char` value |
| --> $DIR/cast-char.rs:42:37 |
| | |
| LL | const INVALID_TOO_BIG_1: char = 0x110000 as char; // one more than maximum |
| | ^^^^^^^^^^^^^^^^ |
| | |
| = note: maximum valid `char` value is `0x10FFFF` |
| |
| error: value exceeds maximum `char` value |
| --> $DIR/cast-char.rs:44:37 |
| | |
| LL | const INVALID_TOO_BIG_2: char = 0xEF8888 as char; // example from issue |
| | ^^^^^^^^^^^^^^^^ |
| | |
| = note: maximum valid `char` value is `0x10FFFF` |
| |
| error: value exceeds maximum `char` value |
| --> $DIR/cast-char.rs:46:37 |
| | |
| LL | const INVALID_TOO_BIG_3: char = 0x1FFFFF as char; // much larger |
| | ^^^^^^^^^^^^^^^^ |
| | |
| = note: maximum valid `char` value is `0x10FFFF` |
| |
| error: value exceeds maximum `char` value |
| --> $DIR/cast-char.rs:48:37 |
| | |
| LL | const INVALID_TOO_BIG_4: char = 0xFFFFFF as char; // 24-bit maximum |
| | ^^^^^^^^^^^^^^^^ |
| | |
| = note: maximum valid `char` value is `0x10FFFF` |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:52:30 |
| | |
| LL | const BOUNDARY_1: char = 0xD7FE as char; // valid, before surrogate |
| | ^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{D7FE}'` |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:54:30 |
| | |
| LL | const BOUNDARY_2: char = 0xE001 as char; // valid, after surrogate |
| | ^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{E001}'` |
| |
| error: only `u8` can be cast into `char` |
| --> $DIR/cast-char.rs:56:30 |
| | |
| LL | const BOUNDARY_3: char = 0x10FFFE as char; // valid, near maximum |
| | ^^^^^^^^^^^^^^^^ help: use a `char` literal instead: `'\u{10FFFE}'` |
| |
| error: aborting due to 18 previous errors |
| |