-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Fix ValueTracking for index parameters #57727
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
Fix ValueTracking for index parameters #57727
Conversation
…all parameters existed in a method. In reality some exist in properties. Who knew!??! No need to worry about the cast, symbol finder will do the right thing. Code does need to be updated to handle the fact that we want to track potentially two things with index: the argument passed in as the index in callsites, and potentially the item being indexed to. Update the FindReferencesProgress to handle references for index specifically.
src/Features/Core/Portable/ValueTracking/ValueTracker.FindReferencesProgress.cs
Outdated
Show resolved
Hide resolved
this can also be true for VB properties, if you haven't, can you test that out? Also, it woudl be good to test tracking of the standard 'value' value in a C# property if we're not already doing that. |
…rencesProgress.cs Co-authored-by: David Wengier <david.wengier@microsoft.com>
…b.com/ryzngard/roslyn into issues/57100_value_tracking_index
Added tests for this :) |
…rations * upstream/main: (3387 commits) Fix ValueTracking for index parameters (dotnet#57727) Avoid accessing current assembly identity while reporting an accessibility diagnostics for an inaccessible internal symbol. (dotnet#57783) Include a type for NoneOperations in VB, print the type in tests (dotnet#57664) Don't throw exceptions for file changes after a project is unloaded Check up front for being called to remove more than once Fix C# language name in spec (dotnet#57427) Add test Fix null ref in navbars Ensure that getting the checksum for a project cone is resilient to its project references being missing Check constraints on lifted operator types (dotnet#57050) Adjust tests for Windows 11 changes (dotnet#57678) Add comment Load SVsShellDebugger before calling IVsSolution.CreateSolution Remove extra EnsureEditableDocuments calls (dotnet#57725) Don't show nullable annotation in completion items of static field/property Don't analyze local function bodies as though they are top level code (dotnet#57623) update error code to fix main break (dotnet#57739) Error when ref is used on a parameter or return type of an UnmanagedCallersOnly method (dotnet#57043) Simplify code from review Fix featureflag name for .net 6 host in UI ...
Index values weren't properly handled previously, and it was assumed all parameters existed in a method. In reality some exist in properties. Who knew!??!
No need to worry about the cast, symbol finder will do the right thing. Code does need to be updated to handle the fact that we want to track potentially two things with index: the argument passed in as the index in callsites, and potentially the item being indexed to. Update the FindReferencesProgress to handle references for index specifically.
Fixes #57100