-
Notifications
You must be signed in to change notification settings - Fork 4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge Lock object feature to main #72137
Merged
Merged
Conversation
This file contains 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
* Add native lock feature * Find Lock pattern manually * Revert language feature status changes * Improve error messages * Check lang version * Avoid unnecessary langversion check in lock lowering * Check language version without branching * Improve code style * Check more of Lock types and members shape * Rename feature to "Lock object" * Extend tests * Simplify code * Fix a test * Avoid double apostrophes in error messages * Check more of Lock and Scope shapes * Add more tests
* Warn when value of Lock type is locked in VB * Warn when converting Lock value in VB * Mark a sub shared * Check arity * Avoid warnings when converting Lock to Lock * Add more tests * Add more tests * Simplify code
* Implement control flow graph for Lock object feature * Avoid Monitor CFG if members are missing * Move CFG/IOp tests to their project * Add more tests * Fixup VB tests * Avoid storing data in LockOperation * Avoid Lock object control flow graph in VB * Change warning to error when using Lock type in VB * Emit the same CFG in VB as in C# * Fixup VB error codes * Simplify CFG error recovery * Visit resource inside using stack frame * Improve code * Remove unnecessary tests * Add more tests * Use Lock type name constant in VB * Improve code * Add more tests * Reword VB error
* Add `Lock` type to the compiler test plan * Move to statements cheatsheet
* Warn when converting to Lock subtype * Verify execution of derived lock * Use better helper to assert diagnostics
dotnet-issue-labeler
bot
added
Area-Compilers
untriaged
Issues and PRs which have not yet been triaged by a lead
labels
Feb 16, 2024
@AlekseyTs @cston @dotnet/roslyn-compiler I think I need one sign off here |
jcouv
approved these changes
Feb 20, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good to merge
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Area-Compilers
New Feature - Lock Type
untriaged
Issues and PRs which have not yet been triaged by a lead
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.
Test plan: #71888
This contains a merge from main which had only trivial conflicts in C# ErrorCode (solved by renumbering the lock error codes).