rust-lang / wg-grammar

Where the work of WG-grammar, aiming to provide a canonical grammar for Rust, resides
Apache License 2.0
100 stars 20 forks source link

Bump GLL #36

Closed CAD97 closed 5 years ago

CAD97 commented 5 years ago

master CI:

Out of 11717 Rust files tested:
* 878 parsed fully and unambiguously
* 10596 parsed fully (but ambiguously)
* 192 parsed partially (only a prefix)
* 51 didn't parse at all (lexer error?)

local:

Out of 13695 Rust files tested:
* 1100 parsed fully and unambiguously
* 12350 parsed fully (but ambiguously)
* 194 parsed partially (only a prefix)
* 51 didn't parse at all (lexer error?)

fork CI:

Out of 11717 Rust files tested:
* 878 parsed fully and unambiguously
* 10596 parsed fully (but ambiguously)
* 192 parsed partially (only a prefix)
* 51 didn't parse at all (lexer error?)

PR CI

Out of 11717 Rust files tested:
* 878 parsed fully and unambiguously
* 10596 parsed fully (but ambiguously)
* 192 parsed partially (only a prefix)
* 51 didn't parse at all (lexer error?)
CAD97 commented 5 years ago

I found what I believe to be the source of the error.

https://github.com/rust-lang/gll/blob/master/src/forest.rs#L80

    pub fn one_choice(&self, node: ParseNode<'i, P>) -> Result<ParseNode<'i, P>, MoreThanOne> {
        match self.grammar.parse_node_shape(node.kind) {
            ParseNodeShape::Choice => {
                let choices = &self.possible_choices[&node];
thread '<unnamed>' panicked at 'no entry found for key', src\libcore\option.rs:1038:5
             at src\libcore/panicking.rs:85
   7: core::option::expect_failed
             at src\libcore/option.rs:1038
   8: <gll::forest::ParseForest<'i, G, I>>::one_choice
   9: <gll::high::ExistsL<T>>::unpack_ref
  10: coverage::process
  11: <rayon::iter::par_bridge::IterParallelProducer<'a, Iter> as rayon::iter::plumbing::UnindexedProducer>::fold_with
  12: rayon::iter::plumbing::bridge_unindexed_producer_consumer
  13: std::panicking::try::do_call
  14: _rust_maybe_catch_panic
             at src\libpanic_unwind/lib.rs:87
  15: <rayon_core::job::StackJob<L, F, R> as rayon_core::job::Job>::execute
  16: rayon_core::registry::WorkerThread::wait_until_cold
  17: rayon_core::registry::main_loop
  18: std::panicking::try::do_call
  19: _rust_maybe_catch_panic
             at src\libpanic_unwind/lib.rs:87
  20: <F as alloc::boxed::FnBox<A>>::call_box
  21: std::sys::windows::thread::Thread::new::thread_start
             at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759
             at src\libstd\sys_common/thread.rs:14
             at src\libstd\sys\windows/thread.rs:47
  22: unit_addrs_search
  23: unit_addrs_search

cc @eddyb Any reason why this might be failing?

CAD97 commented 5 years ago

Unfortunately I don't know an easy way to determine which files are causing the issue, but here's some debugging information I attached to that failed lookup:

``` .........................................thread '' panicked at 'Attempted to read node in possible choices that didn't exist! node: _354 @ 2..3 possible_choices: { _325 @ 72..74: { _81 }, _561 @ 52..53: { Path }, _251 @ 19..20: { _40 }, _255 @ 54..54: { _69 }, _563 @ 53..78: { Expr }, _563 @ 15..16: { Expr }, _177 @ 63..74: { _25, _26 }, _177 @ 50..51: { QPath }, _563 @ 42..43: { Expr }, _563 @ 26..30: { Expr }, _177 @ 35..39: { _14 }, _537 @ 49..50: { QPath }, _177 @ 64..67: { _14 }, _563 @ 31..34: { Expr }, _177 @ 29..30: { LITERAL }, _451 @ 4..8: { _105 }, _561 @ 16..17: { Path }, _177 @ 62..74: { _10, _25, _26 }, _563 @ 51..53: { Expr }, _177 @ 30..42: { _28 }, _255 @ 48..48: { _69 }, _177 @ 38..39: { QPath }, _563 @ 50..51: { Expr }, _177 @ 52..53: { QPath }, _537 @ 55..56: { QPath }, _255 @ 48..49: { _69 }, _177 @ 47..79: { _28 }, _561 @ 54..55: { Path }, _563 @ 31..32: { Expr }, _563 @ 60..75: { Expr }, _177 @ 55..56: { QPath }, _177 @ 64..69: { _14 }, _177 @ 18..22: { MacroCall }, _254 @ 33..34: { IDENT }, _563 @ 31..40: { Expr }, _177 @ 44..45: { QPath }, _177 @ 46..47: { QPath }, _177 @ 44..47: { _14 }, _561 @ 56..57: { Path }, _563 @ 14..23: { _145 }, _177 @ 66..69: { _14 }, _177 @ 25..26: { QPath }, _177 @ 23..24: { QPath }, _177 @ 58..59: { QPath }, _563 @ 14..15: { Expr }, _177 @ 48..78: { _38 }, _561 @ 15..16: { Path }, _561 @ 49..50: { Path }, _252 @ 45..46: { _47 }, _537 @ 15..16: { QPath }, _252 @ 51..52: { _47 }, _252 @ 67..68: { _48 }, _177 @ 54..77: { _38 }, _563 @ 43..44: { Expr }, _177 @ 54..55: { QPath }, _561 @ 24..25: { Path }, _517 @ 15..17: { _131 }, _563 @ 27..29: { Expr }, _344 @ 3..9: { _87 }, _177 @ 14..15: { QPath }, _177 @ 15..16: { QPath }, _344 @ 9..80: { _93 }, _563 @ 42..79: { Expr }, _563 @ 55..56: { Expr }, _563 @ 48..78: { Expr }, _572 @ 64..65: { QPath, _156 }, _563 @ 45..47: { Expr }, _177 @ 45..47: { _10 }, _563 @ 44..47: { Expr }, _451 @ 4..5: { _105 }, _177 @ 19..22: { _12 }, _517 @ 55..56: { QPath, _131 }, _563 @ 16..17: { Expr }, _561 @ 58..59: { Path }, _255 @ 60..60: { _69 }, _563 @ 57..59: { Expr }, _177 @ 16..19: { _15 }, _563 @ 23..24: { Expr }, _252 @ 65..66: { _48 }, _537 @ 24..25: { QPath }, _563 @ 61..75: { Expr }, _320 @ 38..39: { TypeTraitBound }, _254 @ 60..61: { IDENT }, _186 @ 16..18: { _8 }, _177 @ 27..30: { _16 }, _561 @ 18..19: { Path }, _252 @ 36..38: { _49 }, _177 @ 56..57: { QPath }, _177 @ 50..53: { _14 }, _561 @ 42..43: { Path }, _177 @ 64..65: { QPath }, _177 @ 68..69: { QPath }, _344 @ 0..3: { _89 }, _320 @ 64..65: { TypeTraitBound }, _262 @ 48..49: { IDENT }, _561 @ 64..65: { Path }, _262 @ 54..55: { IDENT }, _561 @ 14..15: { Path }, _563 @ 26..29: { Expr }, _177 @ 27..29: { _16 }, _177 @ 18..19: { QPath }, _177 @ 26..29: { _16 }, _177 @ 20..22: { _22 }, _177 @ 16..17: { QPath }, _563 @ 27..30: { Expr }, _563 @ 25..26: { Expr }, _177 @ 62..72: { _10, _20 }, _177 @ 53..78: { _28 }, _252 @ 36..37: { _54 }, _563 @ 54..55: { Expr }, _563 @ 23..42: { Expr }, _563 @ 24..25: { Expr }, _177 @ 35..36: { LITERAL }, _255 @ 54..55: { _69 }, _177 @ 60..61: { QPath }, _254 @ 48..49: { IDENT }, _517 @ 24..25: { QPath, _131 }, _561 @ 60..61: { Path }, _254 @ 54..55: { IDENT }, _177 @ 42..43: { QPath }, _563 @ 50..53: { Expr }, _255 @ 60..61: { _69 }, _177 @ 60..75: { _25 }, _561 @ 46..47: { Path }, _563 @ 29..30: { Expr }, _572 @ 38..39: { QPath, _156 }, _458 @ 4..7: { _106 }, _561 @ 38..39: { Path }, _537 @ 43..44: { QPath }, _177 @ 26..27: { LITERAL }, _517 @ 15..16: { QPath, _131 }, _177 @ 63..70: { _9, _24 }, _177 @ 63..72: { _20 }, _563 @ 48..49: { Expr }, _561 @ 44..45: { Path }, _517 @ 49..50: { QPath, _131 }, _177 @ 66..67: { QPath }, _254 @ 71..72: { IDENT }, _177 @ 59..77: { _28 }, _563 @ 56..59: { Expr }, _177 @ 42..79: { _38 }, _563 @ 47..79: { Expr }, _177 @ 24..25: { QPath }, _563 @ 34..40: { Expr }, _563 @ 56..57: { Expr }, _177 @ 57..59: { _10 }, _563 @ 16..19: { Expr }, _177 @ 26..30: { _16 }, _563 @ 40..41: { _85 }, _177 @ 51..53: { _10 }, _563 @ 75..76: { _85 }, _563 @ 54..77: { Expr }, _563 @ 16..22: { Expr }, _561 @ 50..51: { Path }, _561 @ 23..24: { Path }, _177 @ 34..40: { _9, _24 }, _563 @ 22..23: { _85 }, _177 @ 43..44: { QPath }, _177 @ 56..59: { _14 }, _561 @ 31..32: { Path }, _177 @ 31..32: { QPath }, _177 @ 16..22: { _15 }, _563 @ 49..50: { Expr }, _262 @ 60..61: { IDENT }, _563 @ 26..27: { Expr }, _517 @ 43..44: { QPath, _131 }, _561 @ 25..26: { Path }, _563 @ 44..45: { Expr }, _561 @ 66..67: { Path }, _177 @ 48..49: { QPath }, _563 @ 19..22: { Expr }, _177 @ 31..34: { _20 }, _354 @ 0..3: { _85 }, _561 @ 55..56: { Path }, _177 @ 31..40: { _25, _26 }, _563 @ 60..61: { Expr }, _177 @ 62..70: { _10 }, _563 @ 30..42: { Expr }, _561 @ 43..44: { Path }, _252 @ 57..58: { _47 }, _177 @ 61..75: { _9, _24 }, _561 @ 48..49: { Path }, _561 @ 68..69: { Path }, _563 @ 59..77: { Expr }, _177 @ 23..42: { _38 }, _177 @ 49..50: { QPath } }.', D:\usr\Documents\Code\Rust\lykenware\gll\src\forest.rs:81:40 thread '' panicked at 'Attempted to read node in possible choices that didn't exist! node: _354 @ 2..3 possible_choices: { _177 @ 32..42: { _10 }, _177 @ 30..31: { QPath }, _320 @ 33..34: { TypeTraitBound }, _177 @ 25..26: { LITERAL }, _177 @ 26..28: { _16 }, _563 @ 18..20: { Expr }, _451 @ 4..8: { _105 }, _177 @ 14..46: { _38 }, _563 @ 22..23: { Expr }, _563 @ 16..17: { Expr }, _572 @ 33..42: { MacroCall }, _177 @ 26..29: { _16 }, _177 @ 17..18: { LITERAL }, _177 @ 20..21: { LITERAL }, _561 @ 33..34: { Path }, _325 @ 31..43: { _81 }, _563 @ 31..43: { Expr }, _563 @ 30..31: { Expr }, _177 @ 21..46: { _28 }, _572 @ 32..34: { _150 }, _563 @ 43..44: { _85 }, _177 @ 22..45: { _38 }, _563 @ 14..15: { Expr }, _563 @ 25..28: { Expr }, _563 @ 14..46: { Expr }, _563 @ 24..25: { Expr }, _177 @ 33..34: { QPath }, _563 @ 17..21: { Expr }, _177 @ 23..24: { QPath }, _177 @ 16..17: { QPath }, _561 @ 23..24: { Path }, _344 @ 9..47: { _93 }, _563 @ 22..45: { Expr }, _177 @ 31..43: { _9, _24 }, _517 @ 23..24: { QPath, _131 }, _177 @ 29..45: { _28 }, _344 @ 0..3: { _89 }, _561 @ 22..23: { Path }, _563 @ 25..26: { Expr }, _572 @ 33..34: { QPath, _156 }, _561 @ 15..16: { Path }, _458 @ 4..7: { _106 }, _563 @ 18..21: { Expr }, _563 @ 30..43: { Expr }, _563 @ 17..18: { Expr }, _177 @ 32..34: { _10 }, _563 @ 26..28: { Expr }, _563 @ 26..29: { Expr }, _561 @ 16..17: { Path }, _537 @ 15..16: { QPath }, _537 @ 23..24: { QPath }, _177 @ 25..29: { _16 }, _344 @ 3..9: { _87 }, _177 @ 22..23: { QPath }, _177 @ 28..29: { LITERAL }, _563 @ 29..45: { Expr }, _563 @ 23..24: { Expr }, _563 @ 21..46: { Expr }, _177 @ 18..21: { _16 }, _563 @ 28..29: { Expr }, _177 @ 30..43: { QPath, _25 }, _177 @ 18..20: { _16 }, _177 @ 17..20: { _16 }, _177 @ 15..16: { QPath }, _451 @ 4..5: { _105 }, _517 @ 15..16: { QPath, _131 }, _354 @ 0..3: { _85 }, _563 @ 20..21: { Expr }, _563 @ 15..16: { Expr }, _177 @ 24..25: { QPath }, _561 @ 30..43: { Path }, _561 @ 24..25: { Path }, _177 @ 17..21: { _16 }, _563 @ 17..20: { Expr }, _561 @ 14..15: { Path }, _177 @ 25..28: { _16 }, _572 @ 32..42: { _150 }, _177 @ 14..15: { QPath }, _177 @ 33..42: { MacroCall }, _563 @ 25..29: { Expr }, _561 @ 30..31: { Path } }', D:\usr\Documents\Code\Rust\lykenware\gll\src\forest.rs:81:40 .thread '' panicked at 'Attempted to read node in possible choices that didn't exist! node: _354 @ 2..3 possible_choices: { _561 @ 20..21: { Path }, _177 @ 86..91: { QPath, _25 }, _344 @ 15..96: { _93 }, _177 @ 32..35: { QPath }, _177 @ 59..61: { _16 }, _177 @ 59..62: { _16 }, _177 @ 20..21: { QPath }, _563 @ 29..32: { Expr }, _451 @ 10..11: { _105 }, _563 @ 87..91: { Expr }, _177 @ 23..26: { _16 }, _563 @ 23..26: { Expr }, _177 @ 32..42: { _20 }, _177 @ 49..54: { _25, _26 }, _177 @ 63..64: { QPath }, _270 @ 71..72: { Expr }, _517 @ 29..30: { QPath, _131 }, _458 @ 4..7: { _106 }, _177 @ 47..54: { _15, _25, _26 }, _572 @ 88..90: { _150 }, _177 @ 71..81: { _26 }, _177 @ 71..85: { _25, _26 }, _177 @ 58..62: { _16 }, _563 @ 20..21: { Expr }, _177 @ 23..27: { _16 }, _561 @ 29..30: { Path }, _537 @ 56..57: { QPath }, _254 @ 51..52: { IDENT }, _270 @ 71..81: { Expr }, _561 @ 56..57: { Path }, _563 @ 63..64: { Expr }, _177 @ 31..42: { _20 }, _561 @ 86..87: { Path }, _563 @ 35..42: { Expr }, _517 @ 56..57: { QPath, _127, _131 }, _177 @ 63..66: { _20 }, _177 @ 89..90: { QPath }, _537 @ 46..47: { QPath }, _177 @ 29..40: { _15, _25 }, _177 @ 71..72: { QPath }, _320 @ 77..78: { TypeTraitBound }, _177 @ 29..32: { _15 }, _254 @ 73..74: { IDENT }, _177 @ 70..93: { If }, _563 @ 56..57: { Expr }, _563 @ 66..69: { Expr }, _177 @ 24..27: { _16 }, _332 @ 77..78: { _82 }, _563 @ 24..27: { Expr }, _177 @ 49..50: { LITERAL }, _177 @ 35..40: { _24 }, _563 @ 71..83: { Expr }, _563 @ 47..50: { Expr }, _177 @ 55..56: { QPath }, _563 @ 24..26: { Expr }, _561 @ 70..71: { Path }, _177 @ 83..85: { _24 }, _563 @ 55..56: { Expr }, _563 @ 29..42: { Expr }, _561 @ 55..56: { Path }, _177 @ 24..26: { _16 }, _344 @ 3..9: { _87 }, _563 @ 71..72: { Expr }, _563 @ 32..35: { Expr }, _254 @ 65..66: { IDENT }, _561 @ 57..58: { Path }, _563 @ 28..45: { _145 }, _563 @ 42..44: { Expr }, _177 @ 31..44: { _25, _26 }, _177 @ 42..44: { _24 }, _572 @ 77..78: { QPath, _156 }, _572 @ 36..37: { QPath, _156 }, _270 @ 71..83: { Expr }, _451 @ 4..8: { _105 }, _177 @ 57..58: { QPath }, _177 @ 70..71: { QPath }, _270 @ 71..74: { Expr }, _177 @ 32..40: { _25 }, _177 @ 27..95: { _28 }, _561 @ 86..91: { Path }, _563 @ 28..29: { Expr }, _177 @ 87..91: { _9, _24 }, _186 @ 47..49: { _8 }, _177 @ 45..46: { QPath }, _563 @ 58..62: { Expr }, _563 @ 54..55: { _85 }, _561 @ 71..72: { Path }, _177 @ 23..24: { LITERAL }, _537 @ 21..22: { QPath }, _563 @ 69..70: { _85 }, _563 @ 29..40: { Expr }, _177 @ 31..35: { QPath }, _177 @ 28..29: { QPath }, _563 @ 45..46: { Expr }, _177 @ 36..37: { QPath }, _561 @ 63..64: { Path }, _563 @ 85..93: { Expr }, _563 @ 70..93: { Expr }, _336 @ 77..78: { Type }, _563 @ 47..52: { Expr }, _561 @ 67..68: { Path }, _320 @ 89..90: { TypeTraitBound }, _563 @ 29..35: { Expr }, _563 @ 32..44: { Expr }, _563 @ 70..71: { Expr }, _563 @ 71..81: { Expr }, _177 @ 86..87: { QPath }, _177 @ 29..42: { _15, _20 }, _563 @ 58..59: { Expr }, _177 @ 55..94: { _38 }, _177 @ 26..27: { LITERAL }, _563 @ 86..87: { Expr }, _563 @ 44..45: { _85 }, _563 @ 62..94: { Expr }, _517 @ 21..22: { QPath, _131 }, _561 @ 45..46: { Path }, _177 @ 46..47: { QPath }, _563 @ 27..95: { Expr }, _563 @ 23..27: { Expr }, _177 @ 56..57: { QPath }, _177 @ 62..94: { _28 }, _563 @ 32..40: { Expr }, _177 @ 47..48: { QPath }, _561 @ 36..37: { Path }, _563 @ 47..48: { Expr }, _177 @ 29..44: { _15, _25, _26 }, _561 @ 31..35: { Path }, _561 @ 22..23: { Path }, _177 @ 58..59: { LITERAL }, _177 @ 32..44: { _25, _26 }, _177 @ 61..62: { LITERAL }, _325 @ 66..69: { _81 }, _325 @ 87..91: { _81 }, _563 @ 35..40: { Expr }, _177 @ 71..83: { _20 }, _320 @ 67..68: { TypeTraitBound }, _177 @ 35..42: { _20 }, _561 @ 89..90: { Path }, _344 @ 0..3: { _89 }, _177 @ 47..50: { _15 }, _561 @ 77..78: { Path }, _561 @ 47..48: { Path }, _177 @ 63..69: { _25, _26 }, _563 @ 58..61: { Expr }, _561 @ 28..29: { Path }, _325 @ 42..44: { _81 }, _325 @ 83..85: { _81 }, _254 @ 82..83: { IDENT }, _563 @ 86..91: { Expr }, _458 @ 10..13: { _106 }, _563 @ 63..66: { Expr }, _563 @ 61..62: { Expr }, _563 @ 45..55: { _145 }, _563 @ 32..42: { Expr }, _177 @ 58..61: { _16 }, _563 @ 71..74: { Expr }, _325 @ 76..79: { _80 }, _177 @ 52..54: { _24 }, _563 @ 59..62: { Expr }, _177 @ 31..32: { QPath }, _451 @ 10..14: { _105 }, _572 @ 67..68: { QPath, _156 }, _563 @ 59..61: { Expr }, _177 @ 66..69: { _9, _24 }, _563 @ 21..22: { Expr }, _537 @ 29..30: { QPath }, _563 @ 46..47: { Expr }, _177 @ 88..90: { _10 }, _177 @ 21..22: { QPath }, _563 @ 20..95: { Expr }, _563 @ 22..23: { Expr }, _186 @ 29..31: { _8 }, _561 @ 32..35: { Path }, _517 @ 46..47: { QPath, _131 }, _320 @ 36..37: { TypeTraitBound }, _177 @ 38..39: { LITERAL }, _177 @ 35..44: { _25, _26 }, _563 @ 26..27: { Expr }, _177 @ 29..30: { QPath }, _572 @ 89..90: { QPath, _156 }, _561 @ 31..32: { Path }, _177 @ 31..40: { _25 }, _563 @ 91..92: { _85 }, _561 @ 46..47: { Path }, _344 @ 9..15: { _87 }, _177 @ 49..52: { _20 }, _177 @ 29..35: { _15 }, _177 @ 85..93: { _28 }, _563 @ 83..85: { Expr }, _177 @ 20..95: { _38 }, _563 @ 29..44: { Expr }, _177 @ 47..52: { _15, _20 }, _563 @ 29..30: { Expr }, _325 @ 52..54: { _81 }, _563 @ 57..58: { Expr }, _354 @ 0..3: { _85 }, _563 @ 55..94: { Expr }, _177 @ 71..74: { _20 }, _517 @ 46..48: { _131 }, _177 @ 22..23: { QPath }, _270 @ 71..85: { Expr }, _451 @ 4..5: { _105 }, _563 @ 63..69: { Expr }, _563 @ 52..54: { Expr }, _563 @ 47..54: { Expr }, _254 @ 41..42: { IDENT }, _563 @ 23..24: { Expr }, _561 @ 21..22: { Path }, _563 @ 35..44: { Expr }, _177 @ 67..68: { QPath }, _563 @ 71..85: { Expr } }', D:\usr\Documents\Code\Rust\lykenware\gll\src\forest.rs:81:40 .thread '' panicked at 'Attempted to read node in possible choices that didn't exist! node: _354 @ 6..7 possible_choices: { _320 @ 63..64: { TypeTraitBound }, _489 @ 132..135: { FnSigInput }, _561 @ 172..173: { Path }, _572 @ 182..183: { QPath, _156 }, _177 @ 71..79: { _25 }, _451 @ 39..40: { _105 }, _177 @ 113..114: { QPath }, _517 @ 167..168: { QPath, _127, _131 }, _177 @ 55..58: { _15 }, _561 @ 177..178: { Path }, _486 @ 132..133: { _114 }, _177 @ 75..76: { LITERAL }, _517 @ 89..90: { QPath, _131 }, _177 @ 181..193: { _20 }, _489 @ 132..133: { FnSigInput }, _561 @ 186..187: { Path }, _572 @ 149..150: { QPath, _156 }, _320 @ 113..114: { TypeTraitBound }, _320 @ 105..106: { TypeTraitBound }, _177 @ 67..68: { QPath }, _451 @ 35..36: { _105 }, _563 @ 160..165: { Expr }, _563 @ 121..122: { _85 }, _177 @ 80..81: { QPath }, _517 @ 67..68: { QPath, _131 }, _563 @ 173..204: { Expr }, _563 @ 195..196: { _85 }, _320 @ 142..143: { TypeTraitBound }, _177 @ 68..74: { _15 }, _563 @ 65..66: { _85 }, _561 @ 160..163: { Path }, _563 @ 170..172: { Expr }, _177 @ 159..160: { QPath }, _177 @ 68..71: { _15 }, _177 @ 91..99: { _25, _26 }, _177 @ 178..193: { _20 }, _177 @ 196..202: { _25, _26 }, _177 @ 169..173: { _16 }, _177 @ 82..83: { QPath }, _561 @ 108..109: { Path }, _177 @ 178..191: { _25 }, _186 @ 175..177: { _8 }, _561 @ 63..64: { Path }, _561 @ 68..69: { Path }, _177 @ 111..113: { _10 }, _177 @ 55..61: { _15 }, _177 @ 71..74: { QPath }, _563 @ 196..197: { Expr }, _177 @ 66..67: { QPath }, _517 @ 136..137: { QPath, _131 }, _451 @ 22..23: { _105 }, _563 @ 58..65: { Expr }, _177 @ 159..163: { QPath }, _451 @ 39..47: { _104 }, _177 @ 83..84: { LITERAL }, _563 @ 166..204: { Expr }, _177 @ 166..167: { QPath }, _563 @ 89..92: { Expr }, _561 @ 80..81: { Path }, _177 @ 91..94: { _20 }, _177 @ 101..115: { _15, _25 }, _344 @ 0..4: { _88 }, _561 @ 100..101: { Path }, _572 @ 132..133: { QPath, _156 }, _177 @ 101..102: { QPath }, _177 @ 89..94: { _15, _20 }, _177 @ 84..86: { _16 }, _561 @ 113..114: { Path }, _320 @ 153..154: { TypeTraitBound }, _186 @ 157..159: { _8 }, _561 @ 139..140: { Path }, _486 @ 132..150: { _114 }, _177 @ 160..165: { QPath, _25 }, _563 @ 79..80: { _85 }, _572 @ 142..143: { QPath, _156 }, _177 @ 173..204: { _28 }, _563 @ 160..163: { Expr }, _561 @ 167..168: { Path }, _561 @ 175..176: { Path }, _320 @ 134..135: { TypeTraitBound }, _563 @ 83..87: { Expr }, _563 @ 82..83: { Expr }, _563 @ 99..100: { _85 }, _563 @ 100..101: { Expr }, _177 @ 181..195: { _25, _26 }, _563 @ 116..117: { Expr }, _186 @ 89..91: { _8 }, _177 @ 175..193: { _15, _20 }, _563 @ 181..195: { Expr }, _177 @ 178..181: { QPath }, _177 @ 89..99: { _15, _25, _26 }, _563 @ 178..195: { Expr }, _177 @ 107..110: { _10 }, _572 @ 62..64: { _150 }, _563 @ 204..205: { Expr }, _563 @ 101..115: { Expr }, _177 @ 157..160: { _15 }, _563 @ 84..87: { Expr }, _177 @ 91..92: { QPath }, _517 @ 81..82: { QPath, _127, _131 }, _561 @ 156..157: { Path }, _563 @ 202..203: { _85 }, _537 @ 175..176: { QPath }, _177 @ 70..79: { _25 }, _563 @ 157..158: { Expr }, _320 @ 136..137: { TypeTraitBound }, _177 @ 83..86: { _16 }, _177 @ 62..64: { _10 }, _177 @ 182..183: { QPath }, _561 @ 57..58: { Path }, _177 @ 81..82: { QPath }, _177 @ 100..101: { QPath }, _561 @ 88..89: { Path }, _563 @ 55..56: { Expr }, _561 @ 174..175: { Path }, _344 @ 38..48: { _87 }, _177 @ 111..114: { _10 }, _254 @ 93..94: { IDENT }, _177 @ 118..120: { _10 }, _517 @ 132..133: { QPath, _131 }, _563 @ 156..157: { Expr }, _563 @ 169..172: { Expr }, _561 @ 200..201: { Path }, _563 @ 101..104: { Expr }, _561 @ 57..65: { Path }, _572 @ 147..150: { _150 }, _563 @ 175..181: { Expr }, _177 @ 103..104: { QPath }, _563 @ 87..123: { Expr }, _320 @ 129..130: { TypeTraitBound }, _177 @ 108..109: { QPath }, _563 @ 181..193: { Expr }, _537 @ 136..137: { QPath }, _177 @ 204..205: { QPath }, _486 @ 132..146: { _114 }, _344 @ 7..13: { _87 }, _572 @ 136..137: { QPath, _156 }, _177 @ 55..65: { _15, _25 }, _563 @ 66..80: { _145 }, _254 @ 184..185: { IDENT }, _561 @ 148..149: { Path }, _563 @ 71..74: { Expr }, _254 @ 192..193: { IDENT }, _458 @ 8..11: { _106 }, _255 @ 174..174: { _69 }, _186 @ 55..57: { _8 }, _563 @ 55..65: { Expr }, _177 @ 54..55: { QPath }, _537 @ 54..55: { QPath }, _320 @ 112..113: { TypeTraitBound }, _563 @ 193..195: { Expr }, _489 @ 145..146: { FnSigInput }, _537 @ 156..157: { QPath }, _561 @ 58..61: { Path }, _561 @ 159..160: { Path }, _563 @ 172..173: { Expr }, _572 @ 148..149: { QPath, _156 }, _344 @ 124..206: { _93 }, _563 @ 157..160: { Expr }, _320 @ 200..201: { TypeTraitBound }, _561 @ 82..83: { Path }, _572 @ 113..114: { QPath, _156 }, _563 @ 178..181: { Expr }, _177 @ 166..204: { _38 }, _177 @ 74..79: { _24 }, _177 @ 177..191: { _25 }, _344 @ 13..25: { _87 }, _332 @ 142..143: { _82 }, _561 @ 91..92: { Path }, _458 @ 14..17: { _106 }, _177 @ 186..187: { QPath }, _563 @ 83..84: { Expr }, _325 @ 104..115: { _81 }, _561 @ 57..61: { Path }, _563 @ 80..123: { Expr }, _563 @ 175..178: { Expr }, _177 @ 105..106: { QPath }, _325 @ 61..65: { _81 }, _177 @ 175..191: { _15, _25 }, _458 @ 26..32: { _106 }, _572 @ 138..144: { _150 }, _489 @ 145..149: { FnSigInput }, _561 @ 166..167: { Path }, _451 @ 14..15: { _105 }, _320 @ 182..183: { TypeTraitBound }, _572 @ 186..187: { QPath, _156 }, _177 @ 87..123: { _28 }, _325 @ 193..195: { _81 }, _177 @ 182..185: { _20 }, _563 @ 67..68: { Expr }, _451 @ 45..46: { _105 }, _517 @ 67..69: { _131 }, _561 @ 196..197: { Path }, _563 @ 116..121: { Expr }, _177 @ 200..201: { QPath }, _325 @ 199..202: { _81 }, _293 @ 127..128: { _75 }, _563 @ 55..61: { Expr }, _177 @ 119..120: { QPath }, _177 @ 68..79: { _15, _25 }, _354 @ 4..7: { _85 }, _489 @ 136..137: { FnSigInput }, _320 @ 149..150: { TypeTraitBound }, _177 @ 178..195: { _25, _26 }, _572 @ 107..109: { _150 }, _451 @ 20..21: { _105 }, _320 @ 108..109: { TypeTraitBound }, _451 @ 43..44: { _105 }, _572 @ 147..149: { _150 }, _561 @ 54..55: { Path }, _561 @ 182..183: { Path }, _177 @ 83..87: { _16 }, _563 @ 89..94: { Expr }, _177 @ 97..98: { LITERAL }, _177 @ 117..121: { _9, _24 }, _561 @ 55..56: { Path }, _177 @ 80..123: { _38 }, _177 @ 182..188: { _25, _26 }, _451 @ 26..37: { _104 }, _561 @ 116..121: { Path }, _177 @ 53..54: { QPath }, _517 @ 156..157: { QPath, _131 }, _563 @ 68..71: { Expr }, _561 @ 159..163: { Path }, _177 @ 89..92: { _15 }, _177 @ 177..195: { _25, _26 }, _458 @ 26..29: { _106 }, _563 @ 104..115: { Expr }, _517 @ 156..158: { _131 }, _320 @ 139..140: { TypeTraitBound }, _572 @ 107..110: { _150 }, _177 @ 77..78: { LITERAL }, _517 @ 54..56: { _131 }, _177 @ 157..158: { QPath }, _563 @ 71..79: { Expr }, _177 @ 88..89: { QPath }, _563 @ 53..66: { _145 }, _563 @ 54..55: { Expr }, _293 @ 127..129: { _75 }, _177 @ 177..193: { _20 }, _177 @ 116..121: { QPath, _25 }, _177 @ 86..87: { LITERAL }, _563 @ 169..173: { Expr }, _563 @ 165..166: { _85 }, _451 @ 8..12: { _105 }, _563 @ 157..165: { Expr }, _572 @ 112..113: { QPath, _156 }, _572 @ 140..144: { QPath, _156 }, _561 @ 134..135: { Path }, _177 @ 174..175: { QPath }, _177 @ 169..170: { LITERAL }, _563 @ 169..170: { Expr }, _177 @ 160..163: { QPath }, _563 @ 74..79: { Expr }, _517 @ 101..102: { QPath, _131 }, _572 @ 109..110: { QPath, _156 }, _486 @ 132..137: { _114 }, _517 @ 145..146: { QPath, _131 }, _177 @ 103..115: { QPath, _25 }, _561 @ 159..165: { Path }, _563 @ 175..191: { Expr }, _325 @ 163..165: { _81 }, _186 @ 101..103: { _8 }, _177 @ 63..64: { QPath }, _177 @ 196..199: { _20 }, _486 @ 132..140: { _114 }, _177 @ 163..165: { _24 }, _177 @ 157..165: { _15, _25 }, _563 @ 196..199: { Expr }, _186 @ 68..70: { _8 }, _561 @ 132..133: { Path }, _486 @ 132..149: { _114 }, _563 @ 101..102: { Expr }, _177 @ 167..168: { QPath }, _561 @ 140..141: { Path }, _563 @ 175..195: { Expr }, _486 @ 132..144: { _114 }, _572 @ 138..140: { _150 }, _177 @ 170..172: { _16 }, _563 @ 181..191: { Expr }, _177 @ 156..157: { QPath }, _572 @ 108..109: { QPath, _156 }, _458 @ 39..42: { _106 }, _336 @ 142..143: { Type }, _344 @ 4..7: { _89 }, _177 @ 159..165: { QPath, _25 }, _489 @ 145..150: { FnSigInput }, _561 @ 142..143: { Path }, _489 @ 136..144: { FnSigInput }, _563 @ 86..87: { Expr }, _572 @ 140..141: { QPath, _156 }, _517 @ 175..176: { QPath, _131 }, _563 @ 58..61: { Expr }, _561 @ 103..115: { Path }, _320 @ 132..133: { TypeTraitBound }, _563 @ 55..58: { Expr }, _537 @ 67..68: { QPath }, _293 @ 127..130: { _75 }, _177 @ 57..58: { QPath }, _561 @ 149..150: { Path }, _561 @ 168..169: { Path }, _561 @ 204..205: { Path }, _177 @ 181..191: { _24 }, _563 @ 89..90: { Expr }, _563 @ 178..191: { Expr }, _177 @ 175..178: { _15 }, _561 @ 178..181: { Path }, _177 @ 58..61: { QPath }, _572 @ 63..64: { QPath, _156 }, _563 @ 174..175: { Expr }, _537 @ 145..146: { QPath }, _561 @ 89..90: { Path }, _561 @ 140..144: { Path }, _177 @ 155..156: { QPath }, _572 @ 119..120: { QPath, _156 }, _177 @ 193..195: { _24 }, _537 @ 81..82: { QPath }, _177 @ 58..65: { QPath, _25 }, _563 @ 66..67: { Expr }, _537 @ 132..133: { QPath }, _563 @ 175..193: { Expr }, _451 @ 14..24: { _104 }, _563 @ 94..99: { Expr }, _177 @ 107..109: { _10 }, _451 @ 26..30: { _105 }, _563 @ 117..121: { Expr }, _517 @ 54..55: { QPath, _131 }, _563 @ 157..163: { Expr }, _563 @ 174..196: { _145 }, _561 @ 70..71: { Path }, _537 @ 167..168: { QPath }, _563 @ 178..193: { Expr }, _177 @ 70..74: { QPath }, _572 @ 111..113: { _150 }, _320 @ 140..144: { TypeTraitBound }, _262 @ 174..175: { IDENT }, _451 @ 26..27: { _105 }, _177 @ 57..61: { QPath }, _563 @ 83..86: { Expr }, _563 @ 196..202: { Expr }, _320 @ 145..146: { TypeTraitBound }, _177 @ 89..90: { QPath }, _561 @ 116..117: { Path }, _561 @ 119..120: { Path }, _177 @ 175..176: { QPath }, _320 @ 186..187: { TypeTraitBound }, _177 @ 199..202: { _9, _24 }, _177 @ 68..69: { QPath }, _572 @ 118..120: { _150 }, _561 @ 153..154: { Path }, _537 @ 89..90: { QPath }, _177 @ 70..71: { QPath }, _325 @ 185..188: { _81 }, _325 @ 117..121: { _81 }, _561 @ 177..181: { Path }, _563 @ 68..74: { Expr }, _561 @ 71..74: { Path }, _563 @ 89..99: { Expr }, _561 @ 109..110: { Path }, _177 @ 57..65: { QPath, _25 }, _561 @ 157..158: { Path }, _177 @ 112..113: { QPath }, _561 @ 81..82: { Path }, _177 @ 169..172: { _16 }, _561 @ 155..156: { Path }, _563 @ 81..82: { Expr }, _563 @ 88..100: { _145 }, _561 @ 145..146: { Path }, _563 @ 199..202: { Expr }, _572 @ 200..201: { QPath, _156 }, _561 @ 105..106: { Path }, _561 @ 70..74: { Path }, _572 @ 139..140: { QPath, _156 }, _177 @ 189..190: { LITERAL }, _177 @ 157..163: { _15 }, _572 @ 111..114: { _150 }, _177 @ 95..96: { LITERAL }, _563 @ 88..89: { Expr }, _563 @ 61..65: { Expr }, _563 @ 115..116: { _85 }, _572 @ 138..141: { _150 }, _489 @ 136..141: { FnSigInput }, _320 @ 140..141: { TypeTraitBound }, _563 @ 84..86: { Expr }, _177 @ 177..178: { QPath }, _572 @ 105..106: { QPath, _156 }, _177 @ 109..110: { QPath }, _177 @ 61..65: { _9, _24 }, _320 @ 109..110: { TypeTraitBound }, _177 @ 116..117: { QPath }, _561 @ 136..137: { Path }, _563 @ 166..167: { Expr }, _563 @ 168..169: { Expr }, _572 @ 153..154: { QPath, _156 }, _572 @ 145..146: { QPath, _156 }, _572 @ 134..135: { QPath, _156 }, _325 @ 141..144: { _80 }, _563 @ 167..168: { Expr }, _255 @ 174..175: { _69 }, _563 @ 175..176: { Expr }, _563 @ 155..166: { _145 }, _537 @ 101..102: { QPath }, _561 @ 53..54: { Path }, _254 @ 198..199: { IDENT }, _489 @ 136..140: { FnSigInput }, _486 @ 132..135: { _114 }, _563 @ 100..116: { _145 }, _561 @ 67..68: { Path }, _177 @ 172..173: { QPath }, _177 @ 175..181: { _15 }, _320 @ 119..120: { TypeTraitBound }, _177 @ 170..173: { _16 }, _177 @ 101..104: { _15 }, _561 @ 58..65: { Path }, _320 @ 148..149: { TypeTraitBound }, _561 @ 160..165: { Path }, _563 @ 80..81: { Expr }, _177 @ 175..195: { _15, _25, _26 }, _451 @ 33..34: { _105 }, _451 @ 18..19: { _105 }, _177 @ 168..169: { QPath }, _177 @ 104..115: { _24 }, _561 @ 101..102: { Path }, _486 @ 132..141: { _114 }, _563 @ 68..79: { Expr }, _177 @ 84..87: { _16 }, _177 @ 55..56: { QPath }, _344 @ 25..38: { _87 }, _563 @ 163..165: { Expr }, _177 @ 94..99: { _24 }, _563 @ 53..54: { Expr }, _563 @ 170..173: { Expr }, _254 @ 174..175: { IDENT }, _561 @ 66..67: { Path }, _561 @ 112..113: { Path }, _561 @ 103..104: { Path }, _563 @ 155..156: { Expr }, _451 @ 8..9: { _105 }, _344 @ 48..124: { _93 }, _177 @ 177..181: { QPath }, _177 @ 196..197: { QPath }, _563 @ 68..69: { Expr } }', D:\usr\Documents\Code\Rust\lykenware\gll\src\forest.rs:81:40 .stack backtrace: 0: std::sys_common::backtrace::_print thread '' panicked at 'Attempted to read node in possible choices that didn't exist! node: _354 @ 2..3 possible_choices: { _572 @ 58..67: { MacroCall }, _537 @ 15..16: { QPath }, _177 @ 33..37: { _14 }, _561 @ 23..24: { Path }, _177 @ 25..29: { _16 }, _177 @ 56..68: { _9, _24 }, _451 @ 4..8: { _105 }, _177 @ 31..32: { QPath }, _561 @ 15..16: { Path }, _563 @ 14..71: { Expr }, _344 @ 0..3: { _89 }, _186 @ 31..35: { _8 }, _572 @ 58..59: { QPath, _156 }, _563 @ 31..37: { Expr }, _270 @ 31..32: { Expr }, _563 @ 24..25: { Expr }, _177 @ 37..41: { _28 }, _563 @ 55..56: { Expr }, _561 @ 55..56: { Path }, _563 @ 38..39: { Expr }, _177 @ 23..24: { QPath }, _563 @ 25..26: { Expr }, _563 @ 68..69: { _85 }, _177 @ 57..59: { _10 }, _563 @ 55..68: { Expr }, _563 @ 26..28: { Expr }, _563 @ 30..31: { Expr }, _177 @ 17..20: { _16 }, _177 @ 55..68: { QPath, _25 }, _252 @ 34..36: { _53 }, _563 @ 21..71: { Expr }, _563 @ 25..29: { Expr }, _563 @ 54..55: { _85 }, _325 @ 42..54: { _81 }, _563 @ 17..18: { Expr }, _325 @ 56..68: { _81 }, _177 @ 31..37: { _14 }, _177 @ 25..28: { _16 }, _177 @ 14..15: { QPath }, _177 @ 17..18: { LITERAL }, _563 @ 31..34: { Expr }, _177 @ 17..21: { _16 }, _177 @ 14..71: { _38 }, _177 @ 58..67: { MacroCall }, _563 @ 23..24: { Expr }, _572 @ 57..67: { _150 }, _252 @ 32..33: { _45 }, _177 @ 22..23: { QPath }, _320 @ 58..59: { TypeTraitBound }, _561 @ 41..54: { Path }, _563 @ 42..54: { Expr }, _572 @ 44..45: { QPath, _156 }, _563 @ 56..68: { Expr }, _177 @ 25..26: { LITERAL }, _561 @ 24..25: { Path }, _177 @ 38..39: { QPath, _31 }, _563 @ 14..15: { Expr }, _563 @ 31..32: { Expr }, _563 @ 17..21: { Expr }, _572 @ 44..53: { MacroCall }, _563 @ 39..40: { _85 }, _458 @ 4..7: { _106 }, _177 @ 43..45: { _10 }, _177 @ 55..56: { QPath }, _177 @ 41..54: { QPath, _25 }, _177 @ 44..53: { MacroCall }, _572 @ 57..59: { _150 }, _561 @ 31..32: { Path }, _563 @ 22..70: { Expr }, _563 @ 18..21: { Expr }, _270 @ 31..37: { Expr }, _572 @ 43..45: { _150 }, _270 @ 31..34: { Expr }, _186 @ 33..35: { _8 }, _177 @ 15..16: { QPath }, _563 @ 28..29: { Expr }, _320 @ 44..45: { TypeTraitBound }, _177 @ 33..34: { LITERAL }, _517 @ 15..16: { QPath, _131 }, _537 @ 23..24: { QPath }, _561 @ 14..15: { Path }, _177 @ 16..17: { QPath }, _177 @ 58..59: { QPath }, _561 @ 55..68: { Path }, _177 @ 26..28: { _16 }, _561 @ 30..31: { Path }, _177 @ 20..21: { LITERAL }, _177 @ 36..37: { LITERAL }, _572 @ 43..53: { _150 }, _561 @ 58..59: { Path }, _177 @ 22..70: { _38 }, _563 @ 30..41: { Expr }, _563 @ 16..17: { Expr }, _451 @ 4..5: { _105 }, _177 @ 18..21: { _16 }, _177 @ 28..29: { LITERAL }, _563 @ 29..70: { Expr }, _177 @ 43..53: { _10 }, _177 @ 24..25: { QPath }, _561 @ 22..23: { Path }, _563 @ 37..41: { Expr }, _177 @ 21..71: { _28 }, _561 @ 38..39: { Path }, _561 @ 44..45: { Path }, _177 @ 18..20: { _16 }, _517 @ 23..24: { QPath, _131 }, _563 @ 18..20: { Expr }, _177 @ 31..34: { _14 }, _563 @ 41..54: { Expr }, _344 @ 3..9: { _87 }, _177 @ 57..67: { _10 }, _563 @ 17..20: { Expr }, _563 @ 20..21: { Expr }, _563 @ 15..16: { Expr }, _563 @ 22..23: { Expr }, _563 @ 25..28: { Expr }, _354 @ 0..3: { _85 }, _177 @ 30..31: { QPath }, _177 @ 26..29: { _16 }, _563 @ 26..29: { Expr }, _177 @ 44..45: { QPath }, _177 @ 29..70: { _28 }, _561 @ 16..17: { Path }, _561 @ 41..42: { Path }, _177 @ 42..54: { _9, _24 }, _177 @ 41..42: { QPath }, _344 @ 9..72: { _93 }, _177 @ 30..41: { If }, _563 @ 41..42: { Expr } } ', D:\usr\Documents\Code\Rust\lykenware\gll\src\forest.rsthread ': at ' panicked at 'src\libstd\sys\windows\backtrace/mod.rs81:Attempted to read node in possible choices that didn't exist! node: _354 @ 6..7 possible_choices: { _177 @ 43..44: { QPath }, _561 @ 56..57: { Path }, _563 @ 83..87: { Expr }, _451 @ 18..19: { _105 }, _537 @ 57..58: { QPath }, _537 @ 68..69: { QPath }, _563 @ 48..51: { Expr }, _344 @ 7..17: { _87 }, _252 @ 64..65: { _54 }, _344 @ 17..29: { _87 }, _563 @ 68..75: { Expr }, _254 @ 83..84: { IDENT }, _177 @ 111..112: { LITERAL }, _177 @ 90..93: { _20 }, _561 @ 58..59: { Path }, _572 @ 98..100: { _150 }, _451 @ 30..34: { _105 }, _177 @ 70..73: { _20 }, _270 @ 90..95: { Expr }, _177 @ 45..55: { _15, _25 }, _563 @ 51..55: { Expr }, _563 @ 97..107: { Expr }, _325 @ 93..95: { _81 }, _517 @ 68..69: { QPath, _131 }, _320 @ 85..86: { TypeTraitBound }, _517 @ 77..78: { QPath, _131 }, _177 @ 47..48: { QPath }, _320 @ 99..100: { TypeTraitBound }, _177 @ 62..115: { _37 }, _563 @ 83..84: { Expr }, _561 @ 83..87: { Path }, _563 @ 96..97: { Expr }, _563 @ 90..95: { Expr }, _177 @ 96..107: { QPath, _25 }, _561 @ 89..90: { Path }, _561 @ 108..109: { Path }, _451 @ 22..23: { _105 }, _177 @ 98..106: { _10 }, _563 @ 57..58: { Expr }, _177 @ 70..71: { QPath }, _563 @ 96..107: { Expr }, _563 @ 67..76: { _145 }, _177 @ 81..82: { QPath }, _572 @ 99..100: { QPath, _156 }, _561 @ 44..45: { Path }, _563 @ 56..62: { _145 }, _325 @ 84..87: { _81 }, _561 @ 76..77: { Path }, _177 @ 70..75: { _25, _26 }, _262 @ 83..84: { IDENT }, _563 @ 48..55: { Expr }, _344 @ 0..4: { _88 }, _561 @ 45..46: { Path }, _561 @ 99..100: { Path }, _563 @ 75..76: { _85 }, _177 @ 98..100: { _10 }, _177 @ 83..84: { QPath }, _561 @ 57..58: { Path }, _186 @ 108..111: { BinaryAssignOp }, _255 @ 83..83: { _69 }, _563 @ 77..80: { Expr }, _563 @ 89..114: { Expr }, _177 @ 48..51: { QPath }, _270 @ 63..64: { Expr }, _325 @ 73..75: { _81 }, _561 @ 83..84: { Path }, _561 @ 68..69: { Path }, _563 @ 67..68: { Expr }, _177 @ 68..73: { _15, _20 }, _177 @ 77..78: { QPath }, _561 @ 48..51: { Path }, _255 @ 83..84: { _69 }, _177 @ 45..46: { QPath }, _186 @ 68..70: { _8 }, _254 @ 72..73: { IDENT }, _561 @ 79..80: { Path }, _177 @ 108..112: { _15 }, _563 @ 61..62: { _85 }, _177 @ 57..58: { QPath }, _325 @ 97..107: { _81 }, _177 @ 84..87: { _9, _24 }, _561 @ 63..64: { Path }, _563 @ 68..69: { Expr }, _177 @ 45..51: { _15 }, _177 @ 47..55: { QPath, _25 }, _563 @ 95..114: { Expr }, _177 @ 68..71: { _15 }, _451 @ 14..15: { _105 }, _561 @ 62..63: { Path }, _563 @ 112..113: { _85 }, _563 @ 45..51: { Expr }, _177 @ 58..61: { _15 }, _517 @ 57..58: { QPath, _131 }, _563 @ 68..73: { Expr }, _177 @ 56..57: { QPath }, _563 @ 45..46: { Expr }, _458 @ 30..36: { _106 }, _270 @ 90..93: { Expr }, _563 @ 63..66: { Expr }, _177 @ 97..107: { _9, _24 }, _177 @ 44..45: { QPath }, _177 @ 62..63: { QPath }, _572 @ 53..54: { QPath, _156 }, _177 @ 108..109: { QPath }, _344 @ 4..7: { _89 }, _458 @ 18..21: { _106 }, _517 @ 57..59: { _131 }, _561 @ 77..78: { Path }, _177 @ 93..95: { _24 }, _177 @ 68..75: { _15, _25, _26 }, _561 @ 47..48: { Path }, _572 @ 99..106: { MacroCall }, _537 @ 44..45: { QPath }, _177 @ 95..114: { _28 }, _177 @ 96..97: { QPath }, _177 @ 63..66: { _14 }, _253 @ 109..111: { _59 }, _561 @ 53..54: { Path }, _563 @ 58..59: { Expr }, _563 @ 76..77: { Expr }, _186 @ 77..81: { _8 }, _177 @ 67..68: { QPath }, _563 @ 56..57: { Expr }, _177 @ 60..61: { LITERAL }, _563 @ 77..88: { Expr }, _563 @ 77..78: { Expr }, _517 @ 44..46: { _131 }, _561 @ 70..71: { Path }, _561 @ 48..55: { Path }, _177 @ 77..82: { _15 }, _177 @ 76..77: { QPath }, _561 @ 85..86: { Path }, _451 @ 26..27: { _105 }, _563 @ 90..91: { Expr }, _344 @ 29..38: { _87 }, _561 @ 43..44: { Path }, _563 @ 62..115: { Expr }, _177 @ 82..88: { _28 }, _451 @ 12..13: { _105 }, _320 @ 53..54: { TypeTraitBound }, _177 @ 90..95: { _25, _26 }, _344 @ 38..116: { _93 }, _177 @ 52..54: { _10 }, _563 @ 76..89: { _145 }, _451 @ 8..16: { _104 }, _517 @ 44..45: { QPath, _131 }, _252 @ 109..110: { _43 }, _563 @ 82..88: { Expr }, _563 @ 84..87: { Expr }, _563 @ 90..93: { Expr }, _563 @ 66..115: { Expr }, _458 @ 30..33: { _106 }, _563 @ 107..108: { _85 }, _177 @ 65..66: { LITERAL }, _572 @ 85..86: { QPath, _156 }, _177 @ 68..69: { QPath }, _572 @ 98..106: { _150 }, _458 @ 8..11: { _106 }, _563 @ 43..56: { _145 }, _563 @ 108..109: { Expr }, _177 @ 58..59: { QPath }, _177 @ 73..75: { _24 }, _325 @ 51..55: { _81 }, _563 @ 93..95: { Expr }, _177 @ 66..115: { _28 }, _270 @ 63..66: { Expr }, _451 @ 30..31: { _105 }, _537 @ 77..78: { QPath }, _177 @ 77..80: { _18 }, _451 @ 24..25: { _105 }, _563 @ 63..64: { Expr }, _177 @ 99..100: { QPath }, _561 @ 96..97: { Path }, _177 @ 47..51: { QPath }, _177 @ 45..48: { _15 }, _563 @ 68..71: { Expr }, _563 @ 88..89: { _85 }, _177 @ 77..88: { _15 }, _563 @ 62..63: { Expr }, _177 @ 99..106: { MacroCall }, _254 @ 92..93: { IDENT }, _572 @ 52..54: { _150 }, _177 @ 48..55: { QPath, _25 }, _563 @ 58..61: { Expr }, _451 @ 30..37: { _105 }, _563 @ 108..112: { Expr }, _177 @ 51..55: { _9, _24 }, _561 @ 81..82: { Path }, _186 @ 45..47: { _8 }, _563 @ 73..75: { Expr }, _563 @ 55..56: { _85 }, _270 @ 90..91: { Expr }, _563 @ 89..90: { Expr }, _561 @ 47..55: { Path }, _177 @ 89..114: { If }, _177 @ 90..91: { QPath }, _451 @ 8..9: { _105 }, _563 @ 45..55: { Expr }, _177 @ 81..88: { _28 }, _561 @ 90..91: { Path }, _320 @ 79..80: { TypeTraitBound }, _177 @ 89..90: { QPath }, _563 @ 43..44: { Expr }, _561 @ 47..51: { Path }, _177 @ 85..86: { QPath }, _561 @ 96..107: { Path }, _561 @ 67..68: { Path }, _572 @ 79..80: { QPath, _156 }, _177 @ 83..87: { QPath, _25 }, _354 @ 4..7: { _85 }, _563 @ 77..82: { Expr }, _563 @ 44..45: { Expr }, _451 @ 18..28: { _104 }, _563 @ 45..48: { Expr }, _186 @ 58..60: { _8 }, _177 @ 63..64: { QPath }, _177 @ 53..54: { QPath } }94', :D:\usr\Documents\Code\Rust\lykenware\gll\src\forest.rs40: at 81src\libstd\sys\windows\backtrace/mod.rs::8140 at src\libstd\sys_common/backtrace.rs:70 1: std::panicking::default_hook::{{closure}} at src\libstd\sys_common/backtrace.rs:58 at src\libstd/panicking.rs:200 2: std::panicking::default_hook at src\libstd/panicking.rs:215 3: std::panicking::rust_panic_with_hook at src\libstd/panicking.rs:482 4: std::panicking::continue_panic_fmt at src\libstd/panicking.rs:385 5: std::panicking::begin_panic_fmt at src\libstd/panicking.rs:340 6: >::one_choice 7: >::unpack_ref 8: coverage::process 9: as rayon::iter::plumbing::UnindexedProducer>::fold_with 10: rayon::iter::plumbing::bridge_unindexed_producer_consumer 11: std::panicking::try::do_call 12: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 13: as rayon_core::job::Job>::execute 14: rayon_core::registry::WorkerThread::wait_until_cold 15: rayon_core::registry::main_loop 16: std::panicking::try::do_call 17: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 18: >::call_box 19: std::sys::windows::thread::Thread::new::thread_start at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759 at src\libstd\sys_common/thread.rs:14 at src\libstd\sys\windows/thread.rs:47 20: unit_addrs_search 21: unit_addrs_search thread '' panicked at 'Attempted to read node in possible choices that didn't exist! node: _354 @ 2..3 possible_choices: { _344 @ 0..3: { _89 }, _325 @ 77..87: { _81 }, _572 @ 51..59: { _150 }, _255 @ 68..68: { _69 }, _561 @ 49..60: { Path }, _561 @ 72..73: { Path }, _537 @ 62..63: { QPath }, _563 @ 43..47: { Expr }, _177 @ 26..27: { LITERAL }, _177 @ 77..87: { _9, _24 }, _262 @ 68..69: { IDENT }, _563 @ 61..76: { _145 }, _561 @ 25..26: { Path }, _177 @ 51..53: { _10 }, _320 @ 70..71: { TypeTraitBound }, _572 @ 39..40: { QPath, _156 }, _344 @ 12..18: { _87 }, _563 @ 68..74: { Expr }, _177 @ 36..37: { QPath }, _177 @ 30..34: { _14 }, _563 @ 62..75: { Expr }, _177 @ 42..48: { _28 }, _517 @ 24..25: { QPath, _131 }, _177 @ 78..86: { _10 }, _517 @ 62..63: { QPath, _131 }, _177 @ 76..77: { QPath }, _344 @ 18..90: { _93 }, _177 @ 45..46: { QPath }, _177 @ 43..47: { QPath, _25 }, _572 @ 79..80: { QPath, _156 }, _563 @ 27..35: { Expr }, _186 @ 37..41: { _8 }, _177 @ 69..74: { _9, _24 }, _451 @ 13..14: { _105 }, _177 @ 33..34: { LITERAL }, _561 @ 43..44: { Path }, _451 @ 4..11: { _105 }, _563 @ 26..29: { Expr }, _325 @ 44..47: { _81 }, _451 @ 4..8: { _105 }, _572 @ 52..53: { QPath, _156 }, _252 @ 31..33: { _49 }, _255 @ 68..69: { _69 }, _561 @ 76..77: { Path }, _451 @ 4..5: { _105 }, _563 @ 23..24: { Expr }, _177 @ 24..25: { QPath }, _177 @ 41..42: { QPath }, _177 @ 37..48: { _15 }, _177 @ 29..35: { _9, _24 }, _177 @ 62..65: { _18 }, _177 @ 66..75: { _28 }, _561 @ 39..40: { Path }, _563 @ 27..29: { Expr }, _255 @ 43..43: { _69 }, _177 @ 70..71: { QPath }, _563 @ 29..35: { Expr }, _561 @ 64..65: { Path }, _563 @ 50..60: { Expr }, _254 @ 43..44: { IDENT }, _572 @ 45..46: { QPath, _156 }, _563 @ 69..74: { Expr }, _563 @ 37..42: { Expr }, _561 @ 41..42: { Path }, _325 @ 50..60: { _81 }, _563 @ 49..50: { Expr }, _561 @ 43..47: { Path }, _563 @ 60..61: { _85 }, _561 @ 70..71: { Path }, _458 @ 13..16: { _106 }, _563 @ 26..35: { Expr }, _563 @ 77..87: { Expr }, _177 @ 67..75: { _28 }, _177 @ 27..29: { _16 }, _177 @ 35..89: { _28 }, _186 @ 62..66: { _8 }, _177 @ 26..29: { _16 }, _561 @ 23..24: { Path }, _563 @ 62..67: { Expr }, _561 @ 24..25: { Path }, _572 @ 70..71: { QPath, _156 }, _177 @ 62..63: { QPath }, _572 @ 79..86: { MacroCall }, _563 @ 26..27: { Expr }, _177 @ 49..60: { QPath, _25 }, _177 @ 41..48: { _28 }, _177 @ 27..35: { _16, _25 }, _563 @ 25..26: { Expr }, _572 @ 52..59: { MacroCall }, _563 @ 37..38: { Expr }, _177 @ 62..75: { _15 }, _572 @ 72..73: { QPath, _156 }, _563 @ 67..75: { Expr }, _177 @ 78..80: { _10 }, _177 @ 52..59: { MacroCall }, _517 @ 37..38: { QPath, _131 }, _561 @ 62..63: { Path }, _561 @ 52..53: { Path }, _177 @ 51..59: { _10 }, _561 @ 61..62: { Path }, _572 @ 64..65: { QPath, _156 }, _563 @ 43..44: { Expr }, _561 @ 37..38: { Path }, _563 @ 24..25: { Expr }, _563 @ 23..89: { Expr }, _177 @ 50..60: { _9, _24 }, _561 @ 66..67: { Path }, _563 @ 62..65: { Expr }, _563 @ 76..77: { Expr }, _537 @ 24..25: { QPath }, _561 @ 49..50: { Path }, _177 @ 26..35: { _16, _25 }, _344 @ 3..12: { _87 }, _177 @ 79..80: { QPath }, _177 @ 61..62: { QPath }, _320 @ 79..80: { TypeTraitBound }, _320 @ 64..65: { TypeTraitBound }, _563 @ 36..49: { _145 }, _354 @ 0..3: { _85 }, _561 @ 68..69: { Path }, _320 @ 39..40: { TypeTraitBound }, _561 @ 76..87: { Path }, _177 @ 62..67: { _15 }, _458 @ 4..10: { _106 }, _563 @ 44..47: { Expr }, _177 @ 43..44: { QPath }, _177 @ 70..73: { _19 }, _572 @ 78..80: { _150 }, _177 @ 30..31: { LITERAL }, _177 @ 25..26: { QPath }, _177 @ 37..38: { QPath }, _563 @ 76..87: { Expr }, _177 @ 37..42: { _15 }, _177 @ 44..47: { _9, _24 }, _561 @ 45..46: { Path }, _563 @ 75..76: { _85 }, _572 @ 51..53: { _150 }, _177 @ 23..24: { QPath }, _255 @ 43..44: { _69 }, _177 @ 79..86: { MacroCall }, _320 @ 52..53: { TypeTraitBound }, _458 @ 4..7: { _106 }, _563 @ 36..37: { Expr }, _177 @ 37..40: { _18 }, _262 @ 43..44: { IDENT }, _177 @ 66..67: { QPath }, _320 @ 72..73: { TypeTraitBound }, _563 @ 61..62: { Expr }, _177 @ 68..69: { QPath }, _563 @ 68..69: { Expr }, _320 @ 45..46: { TypeTraitBound }, _177 @ 76..87: { QPath, _25 }, _561 @ 79..80: { Path }, _177 @ 23..89: { _38 }, _563 @ 62..63: { Expr }, _252 @ 31..32: { _54 }, _563 @ 49..60: { Expr }, _563 @ 87..88: { _85 }, _563 @ 37..48: { Expr }, _563 @ 48..49: { _85 }, _177 @ 52..53: { QPath }, _254 @ 68..69: { IDENT }, _563 @ 35..89: { Expr }, _561 @ 36..37: { Path }, _177 @ 49..50: { QPath }, _177 @ 68..74: { _25 }, _572 @ 78..86: { _150 }, _537 @ 37..38: { QPath }, _451 @ 13..17: { _105 }, _563 @ 37..40: { Expr }, _563 @ 42..48: { Expr } }', D:\usr\Documents\Code\Rust\lykenware\gll\src\forest.rs:81:40 stack backtrace: 0: std::sys_common::backtrace::_print at src\libstd\sys\windows\backtrace/mod.rs:94 at src\libstd\sys\windows\backtrace/mod.rs:81 at src\libstd\sys_common/backtrace.rs:70 1: std::panicking::default_hook::{{closure}} at src\libstd\sys_common/backtrace.rs:58 at src\libstd/panicking.rs:200 2: std::panicking::default_hook at src\libstd/panicking.rs:215 3: std::panicking::rust_panic_with_hook at src\libstd/panicking.rs:482 4: std::panicking::continue_panic_fmt at src\libstd/panicking.rs:385 5: std::panicking::begin_panic_fmt at src\libstd/panicking.rs:340 6: >::one_choice 7: >::unpack_ref 8: coverage::process 9: as rayon::iter::plumbing::UnindexedProducer>::fold_with 10: rayon::iter::plumbing::bridge_unindexed_producer_consumer 11: std::panicking::try::do_call 12: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 13: as rayon_core::job::Job>::execute 14: rayon_core::registry::WorkerThread::wait_until_cold 15: rayon_core::registry::main_loop 16: std::panicking::try::do_call 17: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 18: >::call_box 19: std::sys::windows::thread::Thread::new::thread_start at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759 at src\libstd\sys_common/thread.rs:14 at src\libstd\sys\windows/thread.rs:47 20: unit_addrs_search 21: unit_addrs_search stack backtrace: 0: std::sys_common::backtrace::_print at src\libstd\sys\windows\backtrace/mod.rs:94 at src\libstd\sys\windows\backtrace/mod.rs:81 at src\libstd\sys_common/backtrace.rs:70 1: std::panicking::default_hook::{{closure}} at src\libstd\sys_common/backtrace.rs:58 at src\libstd/panicking.rs:200 2: std::panicking::default_hook at src\libstd/panicking.rs:215 3: std::panicking::rust_panic_with_hook at src\libstd/panicking.rs:482 4: std::panicking::continue_panic_fmt at src\libstd/panicking.rs:385 5: std::panicking::begin_panic_fmt at src\libstd/panicking.rs:340 6: >::one_choice 7: >::unpack_ref 8: coverage::process 9: as rayon::iter::plumbing::UnindexedProducer>::fold_with 10: rayon::iter::plumbing::bridge_unindexed_producer_consumer 11: std::panicking::try::do_call 12: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 13: rayon_core::registry::in_worker 14: rayon::iter::plumbing::bridge_unindexed_producer_consumer 15: std::panicking::try::do_call 16: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 17: as rayon_core::job::Job>::execute 18: rayon_core::registry::WorkerThread::wait_until_cold 19: rayon_core::registry::main_loop 20: std::panicking::try::do_call 21: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 22: >::call_box 23: std::sys::windows::thread::Thread::new::thread_start at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759 at src\libstd\sys_common/thread.rs:14 at src\libstd\sys\windows/thread.rs:47 24: unit_addrs_search 25: unit_addrs_search stack backtrace: 0: std::sys_common::backtrace::_print at src\libstd\sys\windows\backtrace/mod.rs:94 at src\libstd\sys\windows\backtrace/mod.rs:81 at src\libstd\sys_common/backtrace.rs:70 1: std::panicking::default_hook::{{closure}} at src\libstd\sys_common/backtrace.rs:58 at src\libstd/panicking.rs:200 2: std::panicking::default_hook at src\libstd/panicking.rs:215 3: std::panicking::rust_panic_with_hook at src\libstd/panicking.rs:482 4: std::panicking::continue_panic_fmt at src\libstd/panicking.rs:385 5: std::panicking::begin_panic_fmt at src\libstd/panicking.rs:340 6: >::one_choice 7: >::unpack_ref 8: coverage::process 9: as rayon::iter::plumbing::UnindexedProducer>::fold_with 10: rayon::iter::plumbing::bridge_unindexed_producer_consumer 11: std::panicking::try::do_call 12: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 13: rayon_core::registry::in_worker 14: rayon::iter::plumbing::bridge_unindexed_producer_consumer 15: std::panicking::try::do_call 16: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 17: rayon_core::registry::in_worker 18: rayon::iter::plumbing::bridge_unindexed_producer_consumer 19: std::panicking::try::do_call 20: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 21: as rayon_core::job::Job>::execute 22: rayon_core::registry::WorkerThread::wait_until_cold 23: rayon_core::registry::main_loop 24: std::panicking::try::do_call 25: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 26: >::call_box 27: std::sys::windows::thread::Thread::new::thread_start at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759 at src\libstd\sys_common/thread.rs:14 at src\libstd\sys\windows/thread.rs:47 28: unit_addrs_search 29: unit_addrs_search stack backtrace: 0: std::sys_common::backtrace::_print at src\libstd\sys\windows\backtrace/mod.rs:94 at src\libstd\sys\windows\backtrace/mod.rs:81 at src\libstd\sys_common/backtrace.rs:70 1: std::panicking::default_hook::{{closure}} at src\libstd\sys_common/backtrace.rs:58 at src\libstd/panicking.rs:200 2: std::panicking::default_hook at src\libstd/panicking.rs:215 3: std::panicking::rust_panic_with_hook at src\libstd/panicking.rs:482 4: std::panicking::continue_panic_fmt at src\libstd/panicking.rs:385 5: std::panicking::begin_panic_fmt at src\libstd/panicking.rs:340 6: >::one_choice 7: >::unpack_ref 8: coverage::process 9: as rayon::iter::plumbing::UnindexedProducer>::fold_with 10: rayon::iter::plumbing::bridge_unindexed_producer_consumer 11: std::panicking::try::do_call 12: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 13: as rayon_core::job::Job>::execute 14: rayon_core::registry::WorkerThread::wait_until_cold 15: rayon_core::registry::main_loop 16: std::panicking::try::do_call 17: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 18: >::call_box 19: std::sys::windows::thread::Thread::new::thread_start at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759 at src\libstd\sys_common/thread.rs:14 at src\libstd\sys\windows/thread.rs:47 20: unit_addrs_search 21: unit_addrs_search stack backtrace: 0: std::sys_common::backtrace::_print at src\libstd\sys\windows\backtrace/mod.rs:94 at src\libstd\sys\windows\backtrace/mod.rs:81 at src\libstd\sys_common/backtrace.rs:70 1: std::panicking::default_hook::{{closure}} at src\libstd\sys_common/backtrace.rs:58 at src\libstd/panicking.rs:200 2: std::panicking::default_hook at src\libstd/panicking.rs:215 3: std::panicking::rust_panic_with_hook at src\libstd/panicking.rs:482 4: std::panicking::continue_panic_fmt at src\libstd/panicking.rs:385 5: std::panicking::begin_panic_fmt at src\libstd/panicking.rs:340 6: >::one_choice 7: >::unpack_ref 8: coverage::process 9: as rayon::iter::plumbing::UnindexedProducer>::fold_with 10: rayon::iter::plumbing::bridge_unindexed_producer_consumer 11: std::panicking::try::do_call 12: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 13: rayon_core::registry::in_worker 14: rayon::iter::plumbing::bridge_unindexed_producer_consumer 15: std::panicking::try::do_call 16: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 17: rayon_core::registry::in_worker 18: rayon::iter::plumbing::bridge_unindexed_producer_consumer 19: std::panicking::try::do_call 20: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 21: rayon_core::registry::in_worker 22: rayon::iter::plumbing::bridge_unindexed_producer_consumer 23: std::panicking::try::do_call 24: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 25: rayon_core::registry::in_worker 26: rayon::iter::plumbing::bridge_unindexed_producer_consumer 27: std::panicking::try::do_call 28: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 29: as core::ops::function::FnOnce<()>>::call_once 30: std::panicking::try::do_call 31: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 32: as rayon_core::job::Job>::execute 33: rayon_core::registry::WorkerThread::wait_until_cold 34: rayon_core::registry::main_loop 35: std::panicking::try::do_call 36: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 37: >::call_box 38: std::sys::windows::thread::Thread::new::thread_start at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759 at src\libstd\sys_common/thread.rs:14 at src\libstd\sys\windows/thread.rs:47 39: unit_addrs_search 40: unit_addrs_search stack backtrace: 0: std::sys_common::backtrace::_print at src\libstd\sys\windows\backtrace/mod.rs:94 at src\libstd\sys\windows\backtrace/mod.rs:81 at src\libstd\sys_common/backtrace.rs:70 1: std::panicking::default_hook::{{closure}} at src\libstd\sys_common/backtrace.rs:58 at src\libstd/panicking.rs:200 2: std::panicking::default_hook at src\libstd/panicking.rs:215 3: std::panicking::rust_panic_with_hook at src\libstd/panicking.rs:482 4: std::panicking::continue_panic_fmt at src\libstd/panicking.rs:385 5: std::panicking::begin_panic_fmt at src\libstd/panicking.rs:340 6: >::one_choice 7: >::unpack_ref 8: coverage::process 9: as rayon::iter::plumbing::UnindexedProducer>::fold_with 10: rayon::iter::plumbing::bridge_unindexed_producer_consumer 11: std::panicking::try::do_call 12: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 13: as rayon_core::job::Job>::execute 14: rayon_core::registry::WorkerThread::wait_until_cold 15: rayon_core::registry::main_loop 16: std::panicking::try::do_call 17: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 18: >::call_box 19: std::sys::windows::thread::Thread::new::thread_start at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759 at src\libstd\sys_common/thread.rs:14 at src\libstd\sys\windows/thread.rs:47 20: unit_addrs_search 21: unit_addrs_search .thread '' panicked at 'Attempted to read node in possible choices that didn't exist! node: _354 @ 2..3 possible_choices: { _561 @ 22..23: { Path }, _177 @ 20..21: { LITERAL }, _563 @ 18..21: { Expr }, _563 @ 25..28: { Expr }, _451 @ 4..8: { _105 }, _177 @ 18..20: { _16 }, _177 @ 18..21: { _16 }, _563 @ 20..21: { Expr }, _561 @ 15..16: { Path }, _563 @ 24..25: { Expr }, _563 @ 14..15: { Expr }, _344 @ 3..9: { _87 }, _563 @ 43..44: { _85 }, _561 @ 30..31: { Path }, _177 @ 22..45: { _38 }, _354 @ 0..3: { _85 }, _177 @ 15..16: { QPath }, _563 @ 21..46: { Expr }, _177 @ 24..25: { QPath }, _563 @ 22..23: { Expr }, _572 @ 33..42: { MacroCall }, _177 @ 28..29: { LITERAL }, _177 @ 17..18: { LITERAL }, _572 @ 33..34: { QPath, _156 }, _561 @ 30..43: { Path }, _177 @ 25..29: { _16 }, _517 @ 23..24: { QPath, _131 }, _458 @ 4..7: { _106 }, _177 @ 21..46: { _28 }, _177 @ 32..34: { _10 }, _177 @ 25..28: { _16 }, _561 @ 24..25: { Path }, _563 @ 29..45: { Expr }, _177 @ 29..45: { _28 }, _177 @ 30..43: { QPath, _25 }, _325 @ 31..43: { _81 }, _177 @ 14..15: { QPath }, _563 @ 25..26: { Expr }, _177 @ 33..42: { MacroCall }, _177 @ 31..43: { _9, _24 }, _537 @ 23..24: { QPath }, _517 @ 15..16: { QPath, _131 }, _563 @ 22..45: { Expr }, _177 @ 14..46: { _38 }, _561 @ 23..24: { Path }, _563 @ 16..17: { Expr }, _563 @ 17..21: { Expr }, _563 @ 30..31: { Expr }, _561 @ 16..17: { Path }, _572 @ 32..34: { _150 }, _177 @ 26..28: { _16 }, _563 @ 28..29: { Expr }, _563 @ 26..28: { Expr }, _177 @ 22..23: { QPath }, _563 @ 26..29: { Expr }, _177 @ 30..31: { QPath }, _561 @ 33..34: { Path }, _344 @ 0..3: { _89 }, _177 @ 32..42: { _10 }, _177 @ 16..17: { QPath }, _451 @ 4..5: { _105 }, _572 @ 32..42: { _150 }, _563 @ 25..29: { Expr }, _563 @ 23..24: { Expr }, _320 @ 33..34: { TypeTraitBound }, _561 @ 14..15: { Path }, _563 @ 14..46: { Expr }, _177 @ 17..20: { _16 }, _563 @ 17..20: { Expr }, _537 @ 15..16: { QPath }, _177 @ 26..29: { _16 }, _563 @ 17..18: { Expr }, _563 @ 18..20: { Expr }, _563 @ 30..43: { Expr }, _177 @ 17..21: { _16 }, _177 @ 23..24: { QPath }, _563 @ 31..43: { Expr }, _177 @ 33..34: { QPath }, _563 @ 15..16: { Expr }, _177 @ 25..26: { LITERAL }, _344 @ 9..47: { _93 } }', D:\usr\Documents\Code\Rust\lykenware\gll\src\forest.rs:81:40 stack backtrace: 0: std::sys_common::backtrace::_print at src\libstd\sys\windows\backtrace/mod.rs:94 at src\libstd\sys\windows\backtrace/mod.rs:81 at src\libstd\sys_common/backtrace.rs:70 1: std::panicking::default_hook::{{closure}} at src\libstd\sys_common/backtrace.rs:58 at src\libstd/panicking.rs:200 2: std::panicking::default_hook at src\libstd/panicking.rs:215 3: std::panicking::rust_panic_with_hook at src\libstd/panicking.rs:482 4: std::panicking::continue_panic_fmt at src\libstd/panicking.rs:385 5: std::panicking::begin_panic_fmt at src\libstd/panicking.rs:340 6: >::one_choice 7: >::unpack_ref 8: coverage::process 9: as rayon::iter::plumbing::UnindexedProducer>::fold_with 10: rayon::iter::plumbing::bridge_unindexed_producer_consumer 11: std::panicking::try::do_call 12: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 13: as rayon_core::job::Job>::execute 14: rayon_core::registry::WorkerThread::wait_until_cold 15: rayon_core::registry::main_loop 16: std::panicking::try::do_call 17: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 18: >::call_box 19: std::sys::windows::thread::Thread::new::thread_start at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759 at src\libstd\sys_common/thread.rs:14 at src\libstd\sys\windows/thread.rs:47 20: unit_addrs_search 21: unit_addrs_search .thread '' panicked at 'Attempted to read node in possible choices that didn't exist! node: _354 @ 2..3 possible_choices: { _563 @ 26..38: { Expr }, _561 @ 30..31: { Path }, _177 @ 17..18: { LITERAL }, _177 @ 14..15: { QPath }, _563 @ 27..28: { Expr }, _563 @ 17..18: { Expr }, _177 @ 24..25: { LITERAL }, _177 @ 26..38: { _28 }, _563 @ 14..38: { Expr }, _177 @ 27..28: { QPath }, _252 @ 22..23: { _54 }, _561 @ 14..15: { Path }, _177 @ 18..20: { _16 }, _561 @ 15..16: { Path }, _563 @ 16..17: { Expr }, _572 @ 29..31: { _150 }, _177 @ 17..20: { _16 }, _254 @ 32..33: { IDENT }, _177 @ 29..33: { _10, _20 }, _451 @ 4..8: { _105 }, _177 @ 29..35: { _10, _25, _26 }, _344 @ 9..39: { _93 }, _344 @ 3..9: { _87 }, _561 @ 16..17: { Path }, _177 @ 14..38: { _38 }, _252 @ 22..24: { _49 }, _344 @ 0..3: { _89 }, _537 @ 15..16: { QPath }, _177 @ 29..31: { _10 }, _177 @ 30..31: { QPath }, _177 @ 28..36: { _9, _24 }, _563 @ 15..16: { Expr }, _561 @ 27..28: { Path }, _572 @ 30..31: { QPath, _156 }, _451 @ 4..5: { _105 }, _563 @ 28..36: { Expr }, _563 @ 18..26: { Expr }, _563 @ 18..20: { Expr }, _458 @ 4..7: { _106 }, _177 @ 16..17: { QPath }, _177 @ 21..22: { LITERAL }, _563 @ 20..26: { Expr }, _325 @ 33..35: { _81 }, _177 @ 27..36: { _25 }, _177 @ 17..26: { _16, _25 }, _177 @ 30..33: { _20 }, _177 @ 20..26: { _9, _24 }, _177 @ 21..25: { _14 }, _177 @ 15..16: { QPath }, _563 @ 17..20: { Expr }, _354 @ 0..3: { _85 }, _517 @ 15..16: { QPath, _131 }, _563 @ 17..26: { Expr }, _177 @ 18..26: { _16, _25 }, _177 @ 30..35: { _25, _26 }, _563 @ 14..15: { Expr }, _563 @ 36..37: { _85 }, _320 @ 30..31: { TypeTraitBound }, _563 @ 27..36: { Expr } }', D:\usr\Documents\Code\Rust\lykenware\gll\src\forest.rs:81:40 stack backtrace: 0: std::sys_common::backtrace::_print at src\libstd\sys\windows\backtrace/mod.rs:94 at src\libstd\sys\windows\backtrace/mod.rs:81 at src\libstd\sys_common/backtrace.rs:70 1: std::panicking::default_hook::{{closure}} at src\libstd\sys_common/backtrace.rs:58 at src\libstd/panicking.rs:200 2: std::panicking::default_hook at src\libstd/panicking.rs:215 3: std::panicking::rust_panic_with_hook at src\libstd/panicking.rs:482 4: std::panicking::continue_panic_fmt at src\libstd/panicking.rs:385 5: std::panicking::begin_panic_fmt at src\libstd/panicking.rs:340 6: >::one_choice 7: >::unpack_ref 8: coverage::process 9: as rayon::iter::plumbing::UnindexedProducer>::fold_with 10: rayon::iter::plumbing::bridge_unindexed_producer_consumer 11: std::panicking::try::do_call 12: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 13: as rayon_core::job::Job>::execute 14: rayon_core::registry::WorkerThread::wait_until_cold 15: rayon_core::registry::main_loop 16: std::panicking::try::do_call 17: _rust_maybe_catch_panic at src\libpanic_unwind/lib.rs:87 18: >::call_box 19: std::sys::windows::thread::Thread::new::thread_start at /rustc/6c2484dc3c532c052f159264e970278d8b77cdc9\src\liballoc/boxed.rs:759 at src\libstd\sys_common/thread.rs:14 at src\libstd\sys\windows/thread.rs:47 20: unit_addrs_search 21: unit_addrs_search ```
CAD97 commented 5 years ago

I'm tempted to say go ahead and land this; snapshot tests work fine, it's just the ambiguity check that's failing, and that's on gll for building us a bad forest with the generated parser.

However, I'm hesitant since we want to add in %% usage and we should be able to see the coverage change (which should be 0) for that refactor.

A minimal PR to get this repo pointed at rust-lang/gll instead of rust-lang-nursery/gll would be to just update the manifest to point at the currently rust-lang-nursery/gll/master revision in rust-lang/gll.

r? @qmx

CAD97 commented 5 years ago

Minimal panic repro: https://gist.github.com/CAD97/e5c6cba85f110c13c5d6a1fc66a218cc

cargo +nightly run --release --bin coverage -- file --graphviz-forest forest.dot test.rs
Centril commented 5 years ago

Let's bump GLL again, wait for travis to go green, and then merge. 🎉