Example for the >> case:
[[block]] struct B { a: array<array<i32,2>>; }
// That >> should two copies of GREATER_THAN, not one copy of SHIFT_RIGHT
Example for the ]] case:
fn foo() {
var a : array<i32,10>;
let v = a[a[0]]; // That ]] should be two copies of BRACKET_RIGHT instead of ATTR_RIGHT.
}
Tint parses these provisionally as the longer token, then backtracks to split them if needed.
I think the group has already discussed this but I can't find the tracking issue.
Related: #1063 validating the grammar is unambiguous
Example for the
>>case:Example for the
]]case:Tint parses these provisionally as the longer token, then backtracks to split them if needed.
I think the group has already discussed this but I can't find the tracking issue.
Related: #1063 validating the grammar is unambiguous