Keep static on an extern member inside a type - #3517
Merged
Merged
Conversation
The Oak had no place for the `static` of `static extern`, so formatting dropped it and changed the declaration. The parser only sets the static flag on the member: it keeps no range for the keyword. ExternBindingNode now has an optional Static node. Without attributes `static` is where the member starts. After attributes the transformer finds it in the source before `extern`, so comments around it stay where they were. The node's range now includes `static`. The case that pinned the bug as ignored now runs as a regular negative case. The changelog's Unreleased section becomes 8.0.7. Fixes fsprojects#3515
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Oak had no place for the
staticofstatic extern, so formatting dropped it and changed the declaration. The parser only sets the static flag on the member: it keeps no range for the keyword.ExternBindingNode now has an optional Static node. Without attributes
staticis where the member starts. After attributes the transformer finds it in the source beforeextern, so comments around it stay where they were. The node's range now includesstatic. The case that pinned the bug as ignored now runs as a regular negative case.The changelog's Unreleased section becomes 8.0.7.
Fixes #3515