I have some code which uses rustc_internal macros for code generation.
This code:
let val: i32 = ...;
//...
quote_tokens!(ctxt, $val => $scope :: $tok,)
was working perfectly to generate branches of a match statement. However, since last night, if val = -1i32, then this fails with: "error: unexpected token: -1i32". It works fine if val is positive.
I can work around this by avoiding explicitly mentioning the constant -1:
quote_tokens!(ctxt, x if x == ($scope :: $tok as i32) => $scope :: $tok,)
This seems like a regression…