Merge main to VBOverloadResolutionPriority#76392
Merged
AlekseyTs merged 1117 commits intofeatures/VBOverloadResolutionPriorityfrom Dec 12, 2024
Merged
Merge main to VBOverloadResolutionPriority#76392AlekseyTs merged 1117 commits intofeatures/VBOverloadResolutionPriorityfrom
AlekseyTs merged 1117 commits intofeatures/VBOverloadResolutionPriorityfrom
Conversation
Clearly strings are going to be broken if this is merged. dfc660c#diff-a16de2a58a10f14a7fc8512f47bbd467869339a6135046bb0274d2fce1151f93R1901 This PR brings back to track. Current:  After:  This should be covered by unit test. I am preparing it in https://github.com/Cosifne/roslyn/tree/dev/shech/UnifiedSettingsAdvPage, will cover these strings will that is ready
…76375) This is a small allocation, only showing up as about 0.1% of allocationsi n the typing scenario in the csharp editing speedometer test. However, the change is fairly simple, and I prefer the change as it passes around ImmutableArrays instead of IReadOnlyLists.
…ite warnings (#76347) * Do not bail generating base type initializer in the presence of use site warnings We were returning early from generating a call to the base record copy constructor initializer if use site diagnostics reported any kind of diagnostic, including warnings. This isn't good in general, but is particularly bad for warnings like CS1701, which are typically suppressed by the SDK and results in what seems like a completely clean csc invocation skipping calling the base constructor. Fixes #72357. * Set FailsPEVerify * Only run test on coreclr
…oAssemblyInUsingNamespaces (#76370) This method shows up as 1.1% of allocations in the typing scenario in the csharp editing speedometer test. Of that, 0.6% is in the string.Concat call merging the Namespace, '.', and type name. Instead of creating and passing this merged string to GetForwardedToAssembly, we can instead construct a MetadataTypeName to pass to that method. That struct can either be constructed using a fullname or a namespace/typename combination. In the caller where we are trying to get rid of the string concat, we can pass in the namespace/typename and avoid the concat operation completely. The other caller to GetForwardedToAssembly also now passes in a MetadataTypeName, but it's constructed from the fullname as that method used to do itself before taking in the MetadataTypeName.
…ry in SolutionCompilationState.ComputeFrozenSnapshot (#76361) * *** draft PR while I wait on speedometer to verify if this improves allocations *** Reduce allocations from doing repeated adds into an ImmutableDictionary in SolutionCompilationState.ComputeFrozenSnapshot Instead, use an ImmutableSegmentedDictionaryBuilder to do the adds and then do a single update to the SolutionCompilationState._projectIdToTrackerMap after all new compilation trackers are created. Note that there is a potential negative aspect to this change as it increases the time window during which a compilation state can be queried for in the SolutionCompilationState and not found. However, I don't believe this will cause functional issues, and wasn't hitting that concern during local testing.
Contributor
|
This PR modifies public API files. Please follow the instructions at https://github.com/dotnet/roslyn/blob/main/docs/contributing/API%20Review%20Process.md for ensuring all public APIs are reviewed before merging. |
Contributor
Author
|
@dotnet/roslyn-compiler Need a sign-off for a merge PR |
Contributor
Author
|
\azp run |
cston
approved these changes
Dec 12, 2024
This was referenced Dec 19, 2024
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.
No description provided.