[INFO] cloning repository https://github.com/doxxx/raytracer [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/doxxx/raytracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdoxxx%2Fraytracer"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdoxxx%2Fraytracer'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 27048ee94758fb681a3eb3796caf8db9824d1d11 [INFO] checking doxxx/raytracer against master#2748a9fd93dd1a00a4521f4f16de5befbf77f6cd for pr-62262-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdoxxx%2Fraytracer" "/workspace/builds/worker-4/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/doxxx/raytracer on toolchain 2748a9fd93dd1a00a4521f4f16de5befbf77f6cd [INFO] running `"/workspace/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/doxxx/raytracer [INFO] finished tweaking git repo https://github.com/doxxx/raytracer [INFO] tweaked toml for git repo https://github.com/doxxx/raytracer written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/doxxx/raytracer already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] f49348c659a7a19d3a3f6d800d34732de4510e711351a570dfecf20bc5494ce1 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "f49348c659a7a19d3a3f6d800d34732de4510e711351a570dfecf20bc5494ce1"` [INFO] [stderr] Checking scopeguard v0.3.2 [INFO] [stderr] Compiling num-complex v0.2.0 [INFO] [stderr] Checking rand v0.4.2 [INFO] [stderr] Checking deflate v0.7.14 [INFO] [stderr] Compiling raytracer v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Checking clap v2.25.1 [INFO] [stderr] Checking pbr v1.0.0 [INFO] [stderr] Checking crossbeam-epoch v0.3.1 [INFO] [stderr] Checking crossbeam-deque v0.2.0 [INFO] [stderr] Checking png v0.8.0 [INFO] [stderr] Checking rayon-core v1.4.1 [INFO] [stderr] Checking rayon v0.8.2 [INFO] [stderr] Checking rayon v1.0.2 [INFO] [stderr] Checking jpeg-decoder v0.1.13 [INFO] [stderr] Checking image v0.14.0 [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:18:9 [INFO] [stderr] | [INFO] [stderr] 18 | try ! [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:21:41 [INFO] [stderr] | [INFO] [stderr] 21 | self . expected . len () == 0 { try ! (write ! (fmt, "EOF")) ; } else [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | try ! [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:30:56 [INFO] [stderr] | [INFO] [stderr] 30 | let mut iter = self . expected . iter () ; try ! [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:34:15 [INFO] [stderr] | [INFO] [stderr] 34 | { try ! (write ! (fmt, ", `{}`", escape_default (elem))) ; } [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:112:167 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_object_shape < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_planar_shape ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_mesh ( __input , __state , __pos , renderOptions ) } } } } } [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:114:167 [INFO] [stderr] | [INFO] [stderr] 114 | fn __parse_planar_shape < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_plane ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_xyrect ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_xzrect ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_zyrect ( __input , __state , __pos , renderOptions ) } } } } } } } [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:116:166 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_solid_shape < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_sphere ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_cylinder ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_torus ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_cube ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_csg ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_homogenous_medium ( __input , __state , __pos , renderOptions ) } } } } } } } } } } } [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:118:158 [INFO] [stderr] | [INFO] [stderr] 118 | fn __parse_csg < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_csg_union ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_csg_intersection ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_csg_difference ( __input , __state , __pos , renderOptions ) } } } } } [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:120:164 [INFO] [stderr] | [INFO] [stderr] 120 | fn __parse_csg_union < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "union" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , a ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , b ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:124:171 [INFO] [stderr] | [INFO] [stderr] 124 | fn __parse_csg_intersection < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "intersection" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , a ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , b ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:128:169 [INFO] [stderr] | [INFO] [stderr] 128 | fn __parse_csg_difference < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "difference" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , a ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , b ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:132:161 [INFO] [stderr] | [INFO] [stderr] 132 | fn __parse_sphere < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "sphere" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = match __parse_radius ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:138:163 [INFO] [stderr] | [INFO] [stderr] 138 | fn __parse_cylinder < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "cylinder" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_radius ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_height ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , h ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:142:160 [INFO] [stderr] | [INFO] [stderr] 142 | fn __parse_torus < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "torus" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_radius ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , r1 ) => { { let __seq_res = __parse_radius ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , r2 ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:146:160 [INFO] [stderr] | [INFO] [stderr] 146 | fn __parse_plane < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "plane" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = __parse_plane_normal ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , n ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:154:159 [INFO] [stderr] | [INFO] [stderr] 154 | fn __parse_mesh < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "mesh" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_mesh_file ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , p ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:160:161 [INFO] [stderr] | [INFO] [stderr] 160 | fn __parse_xyrect < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "xyrect" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = __parse_width ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = __parse_height ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , h ) => { { let __seq_res = match __parse_reverse ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:164:161 [INFO] [stderr] | [INFO] [stderr] 164 | fn __parse_xzrect < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "xzrect" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = __parse_width ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = __parse_height ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , h ) => { { let __seq_res = match __parse_reverse ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:168:161 [INFO] [stderr] | [INFO] [stderr] 168 | fn __parse_zyrect < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "zyrect" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = __parse_width ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = __parse_height ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , h ) => { { let __seq_res = match __parse_reverse ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:178:159 [INFO] [stderr] | [INFO] [stderr] 178 | fn __parse_cube < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "cube" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_point ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , p1 ) => { { let __seq_res = __parse_point ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , p2 ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:182:172 [INFO] [stderr] | [INFO] [stderr] 182 | fn __parse_homogenous_medium < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "homogenous_medium" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_density ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , density ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , boundary ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:190:170 [INFO] [stderr] | [INFO] [stderr] 190 | fn __parse_object_material < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "material" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_material ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , material ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:194:163 [INFO] [stderr] | [INFO] [stderr] 194 | fn __parse_material < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_lambertian ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_metal ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_dielectric ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_diffuse_light ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_isotropic ( __input , __state , __pos , renderOptions ) } } } } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:196:165 [INFO] [stderr] | [INFO] [stderr] 196 | fn __parse_lambertian < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "lambertian" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_texture ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , texture ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:200:160 [INFO] [stderr] | [INFO] [stderr] 200 | fn __parse_metal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "metal" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_fuzz ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , fuzz ) => { { let __seq_res = __parse_texture ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , texture ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:206:165 [INFO] [stderr] | [INFO] [stderr] 206 | fn __parse_dielectric < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "dielectric" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_ior ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , ior ) => { { let __seq_res = match __parse_fuzz ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , fuzz ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:212:168 [INFO] [stderr] | [INFO] [stderr] 212 | fn __parse_diffuse_light < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "diffuse_light" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_intensity ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , i ) => { { let __seq_res = __parse_texture ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , texture ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:220:164 [INFO] [stderr] | [INFO] [stderr] 220 | fn __parse_isotropic < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "isotropic" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_texture ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , texture ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:288:788 [INFO] [stderr] | [INFO] [stderr] 288 | fn __parse_FLOAT < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = match slice_eq ( __input , __state , __pos , "-" ) { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'e' | 'E' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[eE]" ) , } } else { __state . mark_failure ( __pos , "[eE]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_WS ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { f64::from_str(s).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "FLOAT" ) ; 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/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:288:1577 [INFO] [stderr] | [INFO] [stderr] 288 | fn __parse_FLOAT < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = match slice_eq ( __input , __state , __pos , "-" ) { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'e' | 'E' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[eE]" ) , } } else { __state . mark_failure ( __pos , "[eE]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_WS ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { f64::from_str(s).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "FLOAT" ) ; Failed } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:288:2551 [INFO] [stderr] | [INFO] [stderr] 288 | fn __parse_FLOAT < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = match slice_eq ( __input , __state , __pos , "-" ) { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'e' | 'E' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[eE]" ) , } } else { __state . mark_failure ( __pos , "[eE]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_WS ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { f64::from_str(s).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "FLOAT" ) ; Failed } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:18:9 [INFO] [stderr] | [INFO] [stderr] 18 | try ! [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:21:41 [INFO] [stderr] | [INFO] [stderr] 21 | self . expected . len () == 0 { try ! (write ! (fmt, "EOF")) ; } else [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | try ! [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:30:56 [INFO] [stderr] | [INFO] [stderr] 30 | let mut iter = self . expected . iter () ; try ! [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:34:15 [INFO] [stderr] | [INFO] [stderr] 34 | { try ! (write ! (fmt, ", `{}`", escape_default (elem))) ; } [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:112:167 [INFO] [stderr] | [INFO] [stderr] 112 | fn __parse_object_shape < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_planar_shape ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_mesh ( __input , __state , __pos , renderOptions ) } } } } } [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:114:167 [INFO] [stderr] | [INFO] [stderr] 114 | fn __parse_planar_shape < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_plane ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_xyrect ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_xzrect ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_zyrect ( __input , __state , __pos , renderOptions ) } } } } } } } [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:116:166 [INFO] [stderr] | [INFO] [stderr] 116 | fn __parse_solid_shape < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_sphere ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_cylinder ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_torus ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_cube ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_csg ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_homogenous_medium ( __input , __state , __pos , renderOptions ) } } } } } } } } } } } [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:118:158 [INFO] [stderr] | [INFO] [stderr] 118 | fn __parse_csg < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_csg_union ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_csg_intersection ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_csg_difference ( __input , __state , __pos , renderOptions ) } } } } } [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:120:164 [INFO] [stderr] | [INFO] [stderr] 120 | fn __parse_csg_union < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "union" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , a ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , b ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:124:171 [INFO] [stderr] | [INFO] [stderr] 124 | fn __parse_csg_intersection < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "intersection" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , a ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , b ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:128:169 [INFO] [stderr] | [INFO] [stderr] 128 | fn __parse_csg_difference < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "difference" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , a ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , b ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:132:161 [INFO] [stderr] | [INFO] [stderr] 132 | fn __parse_sphere < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "sphere" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = match __parse_radius ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:138:163 [INFO] [stderr] | [INFO] [stderr] 138 | fn __parse_cylinder < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "cylinder" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_radius ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_height ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , h ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:142:160 [INFO] [stderr] | [INFO] [stderr] 142 | fn __parse_torus < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "torus" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_radius ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , r1 ) => { { let __seq_res = __parse_radius ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , r2 ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:146:160 [INFO] [stderr] | [INFO] [stderr] 146 | fn __parse_plane < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "plane" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = __parse_plane_normal ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , n ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:154:159 [INFO] [stderr] | [INFO] [stderr] 154 | fn __parse_mesh < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "mesh" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_mesh_file ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , p ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:160:161 [INFO] [stderr] | [INFO] [stderr] 160 | fn __parse_xyrect < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "xyrect" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = __parse_width ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = __parse_height ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , h ) => { { let __seq_res = match __parse_reverse ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:164:161 [INFO] [stderr] | [INFO] [stderr] 164 | fn __parse_xzrect < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "xzrect" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = __parse_width ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = __parse_height ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , h ) => { { let __seq_res = match __parse_reverse ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:168:161 [INFO] [stderr] | [INFO] [stderr] 168 | fn __parse_zyrect < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "zyrect" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match __parse_origin ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , o ) => { { let __seq_res = __parse_width ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , w ) => { { let __seq_res = __parse_height ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , h ) => { { let __seq_res = match __parse_reverse ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , r ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:178:159 [INFO] [stderr] | [INFO] [stderr] 178 | fn __parse_cube < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "cube" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_point ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , p1 ) => { { let __seq_res = __parse_point ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , p2 ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:182:172 [INFO] [stderr] | [INFO] [stderr] 182 | fn __parse_homogenous_medium < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "homogenous_medium" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_density ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , density ) => { { let __seq_res = __parse_solid_shape ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , boundary ) => { { let __seq_res = match __parse_transforms ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , transform ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Shape` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:190:170 [INFO] [stderr] | [INFO] [stderr] 190 | fn __parse_object_material < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "material" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_OPEN_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_material ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , material ) => { { let __seq_res = __parse_CLOSE_BRACE ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:194:163 [INFO] [stderr] | [INFO] [stderr] 194 | fn __parse_material < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_lambertian ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_metal ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_dielectric ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_diffuse_light ( __input , __state , __pos , renderOptions ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_isotropic ( __input , __state , __pos , renderOptions ) } } } } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:196:165 [INFO] [stderr] | [INFO] [stderr] 196 | fn __parse_lambertian < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "lambertian" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_texture ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , texture ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:200:160 [INFO] [stderr] | [INFO] [stderr] 200 | fn __parse_metal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "metal" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_fuzz ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , fuzz ) => { { let __seq_res = __parse_texture ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , texture ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:206:165 [INFO] [stderr] | [INFO] [stderr] 206 | fn __parse_dielectric < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "dielectric" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_ior ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , ior ) => { { let __seq_res = match __parse_fuzz ( __input , __state , __pos , renderOptions ) { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , fuzz ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:212:168 [INFO] [stderr] | [INFO] [stderr] 212 | fn __parse_diffuse_light < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "diffuse_light" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_intensity ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , i ) => { { let __seq_res = __parse_texture ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , texture ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:220:164 [INFO] [stderr] | [INFO] [stderr] 220 | fn __parse_isotropic < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "isotropic" ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_HIDDEN ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } } Failed => Failed , } } } Failed => Failed , } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_texture ( __input , __state , __pos , renderOptions ) ; match __seq_res { Matched ( __pos , texture ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Material` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:288:788 [INFO] [stderr] | [INFO] [stderr] 288 | fn __parse_FLOAT < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = match slice_eq ( __input , __state , __pos , "-" ) { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'e' | 'E' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[eE]" ) , } } else { __state . mark_failure ( __pos , "[eE]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_WS ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { f64::from_str(s).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "FLOAT" ) ; 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/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:288:1577 [INFO] [stderr] | [INFO] [stderr] 288 | fn __parse_FLOAT < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = match slice_eq ( __input , __state , __pos , "-" ) { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'e' | 'E' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[eE]" ) , } } else { __state . mark_failure ( __pos , "[eE]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_WS ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { f64::from_str(s).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "FLOAT" ) ; Failed } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/raytracer-02cb24609e49003c/out/sdl_grammar.rs:288:2551 [INFO] [stderr] | [INFO] [stderr] 288 | fn __parse_FLOAT < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize , renderOptions : &Options ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = { let str_start = __pos ; match { let __seq_res = match slice_eq ( __input , __state , __pos , "-" ) { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { match { let __seq_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'e' | 'E' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[eE]" ) , } } else { __state . mark_failure ( __pos , "[eE]" ) } ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; 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 ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; let __step_res = __parse_WS ( __input , __state , __pos , renderOptions ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; } , Failed => { break ; } } } Matched ( __repeat_pos , ( ) ) } ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { f64::from_str(s).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "FLOAT" ) ; Failed } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 30.11s [INFO] running `"docker" "inspect" "f49348c659a7a19d3a3f6d800d34732de4510e711351a570dfecf20bc5494ce1"` [INFO] running `"docker" "rm" "-f" "f49348c659a7a19d3a3f6d800d34732de4510e711351a570dfecf20bc5494ce1"` [INFO] [stdout] f49348c659a7a19d3a3f6d800d34732de4510e711351a570dfecf20bc5494ce1