diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2022-03-24 09:34:19 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-24 09:34:19 +0000 |
commit | ff5f3005d0e0c9771e042fc45c8f12fc1ae5a373 (patch) | |
tree | 42538b9379105f303a23f649a1f95f03377b7cca /gcc/rust/backend/rust-compile-struct-field-expr.h | |
parent | 90f938c2ecefbf16b4793a4135531ed5394a52ac (diff) | |
parent | 6821a642ab796aba5024032e3ace118a5e8277e1 (diff) | |
download | gcc-ff5f3005d0e0c9771e042fc45c8f12fc1ae5a373.zip gcc-ff5f3005d0e0c9771e042fc45c8f12fc1ae5a373.tar.gz gcc-ff5f3005d0e0c9771e042fc45c8f12fc1ae5a373.tar.bz2 |
Merge #1051
1051: macros: Add remaining restrictions for follow-set restrictions r=CohenArthur a=CohenArthur
Adds the remaining restrictions for follow-set ambiguities in macros.
This means adding the remaining allowed tokens for all fragment
specifiers with follow-up restrictions, as well as handling allowed
fragment specifiers in certain cases. For example, :vis specifiers can
sometimes be followed by fragments, if they have the :ident, :ty or
:path specifier. Likewise for :path and :ty which can be followed by a
:block.
Finally, we also allow *any* fragment after a matcher: Since the matcher
is delimiter by parentheses, brackets or curlies, anything is allowed
afterwards.
Some edge cases or allowed tokens that we cannot handle yet remain, for which FIXMEs exist. I'll open up corresponding issues.
Addresses #947
Co-authored-by: Arthur Cohen <arthur.cohen@embecosm.com>
Diffstat (limited to 'gcc/rust/backend/rust-compile-struct-field-expr.h')
0 files changed, 0 insertions, 0 deletions