diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2020-03-06 10:03:54 +0000 |
---|---|---|
committer | GitHub <[email protected]> | 2020-03-06 10:03:54 +0000 |
commit | 670895a49c271751bf275f0ca1303a1bca7aad5a (patch) | |
tree | 58964cef2042a7e0088c81339770a2c8005023a7 /crates/ra_syntax/src/fuzz.rs | |
parent | dd7a11eec7cfc4703214c6278d4023cc372faa90 (diff) | |
parent | 0563cc8291227e9d84c8d931ceb2b3768512b770 (diff) |
Merge #3482
3482: Fix regression from #3451 r=matklad a=edwin0cheng
There is a regression from #3451 such that the following code has failed to parse in raw item collecting phase:
```rust
macro_rules! with_std {
($($i:item)*) => ($(#[cfg(feature = "std")]$i)*)
}
with_std! {
mod macros;
mod others;
}
```
### Rationale
We always assume the last token of an statement will not end with a whitespace, which is true. It is because in parsing phase, we always emit `SyntaxNode` before any whitespace. Such that in various parts of RA code, we solely check the semi-colon by using `SyntaxNode::last_child_token() == ";"` .
However, in #3451, we insert some whitespaces between puncts such that we broke above assumption. This PR fixed this bug by make sure we don't add any whitespace if it is a semicolon.
Co-authored-by: Edwin Cheng <[email protected]>
Diffstat (limited to 'crates/ra_syntax/src/fuzz.rs')
0 files changed, 0 insertions, 0 deletions