[INFO] updating cached repository efenniht/cs420-rust [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/efenniht/cs420-rust [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/efenniht/cs420-rust" "work/ex/pr-62133/sources/master#5f9c0448dde167128d668da4555879f64e56af1d/gh/efenniht/cs420-rust"` [INFO] [stderr] Cloning into 'work/ex/pr-62133/sources/master#5f9c0448dde167128d668da4555879f64e56af1d/gh/efenniht/cs420-rust'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/efenniht/cs420-rust" "work/ex/pr-62133/sources/try#8ec8125bea94852768b56958f05da47666c21ab0/gh/efenniht/cs420-rust"` [INFO] [stderr] Cloning into 'work/ex/pr-62133/sources/try#8ec8125bea94852768b56958f05da47666c21ab0/gh/efenniht/cs420-rust'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 156d4e7a96996f218fa1e73a81aa8352a6c55489 [INFO] sha for GitHub repo efenniht/cs420-rust: 156d4e7a96996f218fa1e73a81aa8352a6c55489 [INFO] validating manifest of efenniht/cs420-rust on toolchain master#5f9c0448dde167128d668da4555879f64e56af1d [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+5f9c0448dde167128d668da4555879f64e56af1d-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of efenniht/cs420-rust on toolchain try#8ec8125bea94852768b56958f05da47666c21ab0 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+8ec8125bea94852768b56958f05da47666c21ab0-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing efenniht/cs420-rust [INFO] finished frobbing efenniht/cs420-rust [INFO] frobbed toml for efenniht/cs420-rust written to work/ex/pr-62133/sources/master#5f9c0448dde167128d668da4555879f64e56af1d/gh/efenniht/cs420-rust/Cargo.toml [INFO] started frobbing efenniht/cs420-rust [INFO] finished frobbing efenniht/cs420-rust [INFO] frobbed toml for efenniht/cs420-rust written to work/ex/pr-62133/sources/try#8ec8125bea94852768b56958f05da47666c21ab0/gh/efenniht/cs420-rust/Cargo.toml [INFO] crate efenniht/cs420-rust already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+5f9c0448dde167128d668da4555879f64e56af1d-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+8ec8125bea94852768b56958f05da47666c21ab0-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking efenniht/cs420-rust against master#5f9c0448dde167128d668da4555879f64e56af1d for pr-62133 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-62133/worker-3/master#5f9c0448dde167128d668da4555879f64e56af1d:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-62133/sources/master#5f9c0448dde167128d668da4555879f64e56af1d/gh/efenniht/cs420-rust:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+5f9c0448dde167128d668da4555879f64e56af1d-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 61f4080b29c09aea09a029ec1f276525fcb34fd4312e8cd8edd9d5fe7cd2dfa6 [INFO] running `"docker" "start" "-a" "61f4080b29c09aea09a029ec1f276525fcb34fd4312e8cd8edd9d5fe7cd2dfa6"` [INFO] [stderr] Compiling tinyc v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:57:639 [INFO] [stderr] | [INFO] [stderr] 57 | fn __parse_nonnegative < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < u32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { 0 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '1' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[1-9]" ) , } } else { __state . mark_failure ( __pos , "[1-9]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , v ) => { Matched ( __pos , { v.parse().unwrap() } ) } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: #[warn(ellipsis_inclusive_range_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:57:1022 [INFO] [stderr] | [INFO] [stderr] 57 | fn __parse_nonnegative < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < u32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { 0 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '1' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[1-9]" ) , } } else { __state . mark_failure ( __pos , "[1-9]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , v ) => { Matched ( __pos , { v.parse().unwrap() } ) } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:512 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:526 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:540 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2433 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2447 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2461 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:61:647 [INFO] [stderr] | [INFO] [stderr] 61 | fn __parse_float_ < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , n ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , d ) => { Matched ( __pos , { n as f32 + d.parse::().unwrap() as f32 / 10f32.powf(d.len() as f32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:467 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:481 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:495 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:504 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:518 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:532 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1852 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1866 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1880 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3180 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3194 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3208 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:378 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:392 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:789 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:803 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:817 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1495 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1509 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1523 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:491 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:505 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:519 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:489 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:503 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:517 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:494 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:508 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:522 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1485 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1499 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1513 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3457 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3471 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3485 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:524 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:538 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:552 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:57:639 [INFO] [stderr] | [INFO] [stderr] 57 | fn __parse_nonnegative < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < u32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { 0 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '1' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[1-9]" ) , } } else { __state . mark_failure ( __pos , "[1-9]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , v ) => { Matched ( __pos , { v.parse().unwrap() } ) } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: #[warn(ellipsis_inclusive_range_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:57:1022 [INFO] [stderr] | [INFO] [stderr] 57 | fn __parse_nonnegative < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < u32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { 0 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '1' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[1-9]" ) , } } else { __state . mark_failure ( __pos , "[1-9]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , v ) => { Matched ( __pos , { v.parse().unwrap() } ) } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:512 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:526 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:540 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2433 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2447 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2461 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:61:647 [INFO] [stderr] | [INFO] [stderr] 61 | fn __parse_float_ < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , n ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , d ) => { Matched ( __pos , { n as f32 + d.parse::().unwrap() as f32 / 10f32.powf(d.len() as f32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:467 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:481 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:495 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:504 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:518 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:532 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1852 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1866 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1880 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3180 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3194 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3208 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:378 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:392 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:789 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:803 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:817 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1495 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1509 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1523 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:491 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:505 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:519 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:489 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:503 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:517 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:494 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:508 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:522 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1485 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1499 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1513 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3457 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3471 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3485 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:524 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:538 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:552 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: constant `testcases` should have an upper case name [INFO] [stderr] --> tests/test_parser.rs:15:9 [INFO] [stderr] | [INFO] [stderr] 15 | const testcases:[&'static str; 8] = [ [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper case: `TESTCASES` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `bty` in this scope [INFO] [stderr] --> src/interpreter/mod.rs:309:21 [INFO] [stderr] | [INFO] [stderr] 309 | (Ty::Elem(bty), 0) [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:57:639 [INFO] [stderr] | [INFO] [stderr] 57 | fn __parse_nonnegative < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < u32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { 0 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '1' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[1-9]" ) , } } else { __state . mark_failure ( __pos , "[1-9]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , v ) => { Matched ( __pos , { v.parse().unwrap() } ) } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: #[warn(ellipsis_inclusive_range_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:57:1022 [INFO] [stderr] | [INFO] [stderr] 57 | fn __parse_nonnegative < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < u32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { 0 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '1' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[1-9]" ) , } } else { __state . mark_failure ( __pos , "[1-9]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , v ) => { Matched ( __pos , { v.parse().unwrap() } ) } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:512 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:526 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:540 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2433 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2447 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2461 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:61:647 [INFO] [stderr] | [INFO] [stderr] 61 | fn __parse_float_ < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , n ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , d ) => { Matched ( __pos , { n as f32 + d.parse::().unwrap() as f32 / 10f32.powf(d.len() as f32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:467 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:481 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:495 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:504 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:518 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:532 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1852 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1866 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1880 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3180 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3194 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3208 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:378 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:392 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:789 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:803 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:817 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1495 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1509 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1523 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:491 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:505 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:519 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:489 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:503 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:517 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:494 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:508 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:522 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1485 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1499 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1513 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3457 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3471 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3485 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:524 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:538 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:552 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `bty` in this scope [INFO] [stderr] --> src/interpreter/mod.rs:309:21 [INFO] [stderr] | [INFO] [stderr] 309 | (Ty::Elem(bty), 0) [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:57:639 [INFO] [stderr] | [INFO] [stderr] 57 | fn __parse_nonnegative < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < u32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { 0 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '1' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[1-9]" ) , } } else { __state . mark_failure ( __pos , "[1-9]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , v ) => { Matched ( __pos , { v.parse().unwrap() } ) } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: #[warn(ellipsis_inclusive_range_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:57:1022 [INFO] [stderr] | [INFO] [stderr] 57 | fn __parse_nonnegative < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < u32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { 0 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '1' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[1-9]" ) , } } else { __state . mark_failure ( __pos , "[1-9]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , v ) => { Matched ( __pos , { v.parse().unwrap() } ) } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:512 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:526 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:540 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2433 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2447 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:59:2461 [INFO] [stderr] | [INFO] [stderr] 59 | fn __parse_number < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i32 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w as i32 } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { -(w as i32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:61:647 [INFO] [stderr] | [INFO] [stderr] 61 | fn __parse_float_ < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_nonnegative ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , n ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , d ) => { Matched ( __pos , { n as f32 + d.parse::().unwrap() as f32 / 10f32.powf(d.len() as f32) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:467 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:481 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:63:495 [INFO] [stderr] | [INFO] [stderr] 63 | fn __parse_float < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f32 > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = __parse_float_ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:504 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:518 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:532 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1852 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1866 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:1880 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3180 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3194 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:67:3208 [INFO] [stderr] | [INFO] [stderr] 67 | fn __parse_ty < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Ty > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "int" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Int } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "float" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Float } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Ty::Void } ) } Failed => Failed , } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:378 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:392 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:789 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:803 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:817 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1495 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1509 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:77:1523 [INFO] [stderr] | [INFO] [stderr] 77 | fn __parse_varname < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z_]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z0-9_]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , w ) => { Matched ( __pos , { w.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:491 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:505 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:93:519 [INFO] [stderr] | [INFO] [stderr] 93 | fn __parse_stmt_for < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "for" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; if __repeat_value . len ( ) >= 3 { break } let __step_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 3 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , es ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:489 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:503 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:98:517 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_stmt_if < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "if" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , v ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { v } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , ev ) => { { let __seq_res = __parse_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , b ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:494 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:508 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:106:522 [INFO] [stderr] | [INFO] [stderr] 106 | fn __parse_stmt_ret < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "return" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_expr ( __input , __state , __pos ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1485 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1499 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:1513 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3457 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3471 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:112:3485 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Stmt > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_stmt_block ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_for ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_if ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_decl ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_ret ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_stmt_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "break" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Break } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "continue" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Cont } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , ";" ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { Stmt::Mpty } ) } Failed => Failed , } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:524 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:538 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/crater/target/debug/build/tinyc-50ac5f77177c51f4/out/grammar.rs:116:552 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec<(Ty, DecoName)> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let __seq_res = slice_eq ( __input , __state , __pos , "void" ) ; match __seq_res { Matched ( __pos , k ) => { { let __seq_res = { __state . suppress_fail += 1 ; let __assert_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '0' ... '9' | '_' => __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) , _ => Matched ( __next , ( ) ) , } } else { __state . mark_failure ( __pos , "[^a-zA-Z0-9_]" ) } ; __state . suppress_fail -= 1 ; match __assert_res { Matched ( _ , __value ) => Matched ( __pos , __value ) , Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { k } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { vec![] } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __pos = if __repeat_value . len ( ) > 0 { let __sep_res = { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_white ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { o } ) } Failed => Failed , } } } Failed => Failed , } } ; match __sep_res { Matched ( __newpos , _ ) => { __newpos } , Failed => break , } } else { __pos } ; let __step_res = __parse_arg ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `new_frame` found for type `interpreter::context::Context` in the current scope [INFO] [stderr] --> src/interpreter/mod.rs:145:26 [INFO] [stderr] | [INFO] [stderr] 145 | let frame = self.ctx.new_frame(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/interpreter/context.rs:85:1 [INFO] [stderr] | [INFO] [stderr] 85 | pub struct Context { [INFO] [stderr] | ------------------ method `new_frame` not found for this [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `zip_with` found for type `std::slice::Iter<'_, (ast::Ty, ast::DecoName)>` in the current scope [INFO] [stderr] --> src/interpreter/mod.rs:146:60 [INFO] [stderr] | [INFO] [stderr] 146 | for ((ast_ty, (arg_name, deco)), arg) in f.args.iter().zip_with(args.iter()) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `&[ast::Stmt]: std::convert::From>` is not satisfied [INFO] [stderr] --> src/interpreter/mod.rs:152:31 [INFO] [stderr] | [INFO] [stderr] 152 | let cfd = self.eval_block(Box::into(f.body)); [INFO] [stderr] | ^^^^^^^^^ the trait `std::convert::From>` is not implemented for `&[ast::Stmt]` [INFO] [stderr] | [INFO] [stderr] = note: required because of the requirements on the impl of `std::convert::Into<&[ast::Stmt]>` for `std::boxed::Box` [INFO] [stderr] = note: required by `std::convert::Into::into` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `restore_frame` found for type `interpreter::context::Context` in the current scope [INFO] [stderr] --> src/interpreter/mod.rs:169:14 [INFO] [stderr] | [INFO] [stderr] 169 | self.ctx.restore_frame(frame); [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/interpreter/context.rs:85:1 [INFO] [stderr] | [INFO] [stderr] 85 | pub struct Context { [INFO] [stderr] | ------------------ method `restore_frame` not found for this [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `+` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:237:31 [INFO] [stderr] | [INFO] [stderr] 237 | ast::BinOp::Add => v1 + v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Add` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `-` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:238:31 [INFO] [stderr] | [INFO] [stderr] 238 | ast::BinOp::Sub => v1 - v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Sub` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `*` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:239:31 [INFO] [stderr] | [INFO] [stderr] 239 | ast::BinOp::Mul => v1 * v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Mul` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `/` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:240:31 [INFO] [stderr] | [INFO] [stderr] 240 | ast::BinOp::Div => v1 / v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Div` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `%` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:241:31 [INFO] [stderr] | [INFO] [stderr] 241 | ast::BinOp::Mod => v1 % v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Rem` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `<` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:244:30 [INFO] [stderr] | [INFO] [stderr] 244 | ast::BinOp::Lt => v1 < v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::cmp::PartialOrd` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `>` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:245:30 [INFO] [stderr] | [INFO] [stderr] 245 | ast::BinOp::Gt => v1 > v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::cmp::PartialOrd` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `<=` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:246:30 [INFO] [stderr] | [INFO] [stderr] 246 | ast::BinOp::Le => v1 <= v2, [INFO] [stderr] | -- ^^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::cmp::PartialOrd` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `>=` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:247:30 [INFO] [stderr] | [INFO] [stderr] 247 | ast::BinOp::Ge => v1 >= v2, [INFO] [stderr] | -- ^^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::cmp::PartialOrd` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `+` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:258:32 [INFO] [stderr] | [INFO] [stderr] 258 | self.ctx.write(addr, v + Value::Int(1)); [INFO] [stderr] | - ^ ------------- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Add` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `-` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:264:32 [INFO] [stderr] | [INFO] [stderr] 264 | self.ctx.write(addr, v - Value::Int(1)); [INFO] [stderr] | - ^ ------------- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Sub` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `+` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:294:47 [INFO] [stderr] | [INFO] [stderr] 294 | if let Value::Point(bty, addr) = base + delta { [INFO] [stderr] | ---- ^ ----- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Add` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/interpreter/mod.rs:306:12 [INFO] [stderr] | [INFO] [stderr] 306 | (bty, addr) [INFO] [stderr] | ^^^ expected enum `interpreter::context::Ty`, found enum `interpreter::context::BaseTy` [INFO] [stderr] | [INFO] [stderr] = note: expected type `interpreter::context::Ty` [INFO] [stderr] found type `interpreter::context::BaseTy` [INFO] [stderr] help: try using a variant of the expected type [INFO] [stderr] | [INFO] [stderr] 306 | (interpreter::context::Ty::Elem(bty), addr) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 306 | (interpreter::context::Ty::Point(bty), addr) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 18 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0277, E0308, E0369, E0425, E0599. [INFO] [stderr] For more information about an error, try `rustc --explain E0277`. [INFO] [stderr] error[E0599]: no method named `new_frame` found for type `interpreter::context::Context` in the current scope [INFO] [stderr] --> src/interpreter/mod.rs:145:26 [INFO] [stderr] | [INFO] [stderr] 145 | let frame = self.ctx.new_frame(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/interpreter/context.rs:85:1 [INFO] [stderr] | [INFO] [stderr] 85 | pub struct Context { [INFO] [stderr] | ------------------ method `new_frame` not found for this [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `zip_with` found for type `std::slice::Iter<'_, (ast::Ty, ast::DecoName)>` in the current scope [INFO] [stderr] --> src/interpreter/mod.rs:146:60 [INFO] [stderr] | [INFO] [stderr] 146 | for ((ast_ty, (arg_name, deco)), arg) in f.args.iter().zip_with(args.iter()) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `&[ast::Stmt]: std::convert::From>` is not satisfied [INFO] [stderr] --> src/interpreter/mod.rs:152:31 [INFO] [stderr] | [INFO] [stderr] 152 | let cfd = self.eval_block(Box::into(f.body)); [INFO] [stderr] | ^^^^^^^^^ the trait `std::convert::From>` is not implemented for `&[ast::Stmt]` [INFO] [stderr] | [INFO] [stderr] = note: required because of the requirements on the impl of `std::convert::Into<&[ast::Stmt]>` for `std::boxed::Box` [INFO] [stderr] = note: required by `std::convert::Into::into` [INFO] [stderr] [INFO] [stderr] error: Could not compile `tinyc`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0599]: no method named `restore_frame` found for type `interpreter::context::Context` in the current scope [INFO] [stderr] --> src/interpreter/mod.rs:169:14 [INFO] [stderr] | [INFO] [stderr] 169 | self.ctx.restore_frame(frame); [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/interpreter/context.rs:85:1 [INFO] [stderr] | [INFO] [stderr] 85 | pub struct Context { [INFO] [stderr] | ------------------ method `restore_frame` not found for this [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `+` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:237:31 [INFO] [stderr] | [INFO] [stderr] 237 | ast::BinOp::Add => v1 + v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Add` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `-` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:238:31 [INFO] [stderr] | [INFO] [stderr] 238 | ast::BinOp::Sub => v1 - v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Sub` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `*` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:239:31 [INFO] [stderr] | [INFO] [stderr] 239 | ast::BinOp::Mul => v1 * v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Mul` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `/` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:240:31 [INFO] [stderr] | [INFO] [stderr] 240 | ast::BinOp::Div => v1 / v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Div` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `%` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:241:31 [INFO] [stderr] | [INFO] [stderr] 241 | ast::BinOp::Mod => v1 % v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Rem` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `<` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:244:30 [INFO] [stderr] | [INFO] [stderr] 244 | ast::BinOp::Lt => v1 < v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::cmp::PartialOrd` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `>` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:245:30 [INFO] [stderr] | [INFO] [stderr] 245 | ast::BinOp::Gt => v1 > v2, [INFO] [stderr] | -- ^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::cmp::PartialOrd` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `<=` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:246:30 [INFO] [stderr] | [INFO] [stderr] 246 | ast::BinOp::Le => v1 <= v2, [INFO] [stderr] | -- ^^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::cmp::PartialOrd` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `>=` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:247:30 [INFO] [stderr] | [INFO] [stderr] 247 | ast::BinOp::Ge => v1 >= v2, [INFO] [stderr] | -- ^^ -- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::cmp::PartialOrd` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `+` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:258:32 [INFO] [stderr] | [INFO] [stderr] 258 | self.ctx.write(addr, v + Value::Int(1)); [INFO] [stderr] | - ^ ------------- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Add` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `-` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:264:32 [INFO] [stderr] | [INFO] [stderr] 264 | self.ctx.write(addr, v - Value::Int(1)); [INFO] [stderr] | - ^ ------------- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Sub` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `+` cannot be applied to type `interpreter::context::Value` [INFO] [stderr] --> src/interpreter/mod.rs:294:47 [INFO] [stderr] | [INFO] [stderr] 294 | if let Value::Point(bty, addr) = base + delta { [INFO] [stderr] | ---- ^ ----- interpreter::context::Value [INFO] [stderr] | | [INFO] [stderr] | interpreter::context::Value [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Add` might be missing for `interpreter::context::Value` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> src/interpreter/mod.rs:306:12 [INFO] [stderr] | [INFO] [stderr] 306 | (bty, addr) [INFO] [stderr] | ^^^ expected enum `interpreter::context::Ty`, found enum `interpreter::context::BaseTy` [INFO] [stderr] | [INFO] [stderr] = note: expected type `interpreter::context::Ty` [INFO] [stderr] found type `interpreter::context::BaseTy` [INFO] [stderr] help: try using a variant of the expected type [INFO] [stderr] | [INFO] [stderr] 306 | (interpreter::context::Ty::Elem(bty), addr) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 306 | (interpreter::context::Ty::Point(bty), addr) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 18 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0277, E0308, E0369, E0425, E0599. [INFO] [stderr] For more information about an error, try `rustc --explain E0277`. [INFO] [stderr] error: Could not compile `tinyc`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "61f4080b29c09aea09a029ec1f276525fcb34fd4312e8cd8edd9d5fe7cd2dfa6"` [INFO] running `"docker" "rm" "-f" "61f4080b29c09aea09a029ec1f276525fcb34fd4312e8cd8edd9d5fe7cd2dfa6"` [INFO] [stdout] 61f4080b29c09aea09a029ec1f276525fcb34fd4312e8cd8edd9d5fe7cd2dfa6