-
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
Tracking issue for stack overflow exception in devenv and OOP #63349
Comments
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label. |
We probably need to make sure we use the same pattern to guard against this kind of issues in IDE visitors/walkers |
And we need to add an integration test with the sample code here. |
Generally speaking, we've found that there is always a limit to pathological cases and some part of the system will always fall over. So, we try to ensure we don't regress on existing code that works, but we don't use pathologically generated code (like what looks like that test file) as it's a never ending chase. |
I feel if the recursion is easy enough to rewrite, we should do this like https://sourceroslyn.io/#Microsoft.CodeAnalysis.Features/Wrapping/BinaryExpression/AbstractBinaryExpressionWrapper.cs,f461f8abcebe1530,references Other things like |
@CyrusNajmabadi you are right. But I think @Cosifne's approach makes sense. For IDE features based on compiler visitors/walkers, we need to at least ensure they don't crash on deep recursions (probably by using |
Using sample code:
LongClass.txt
Many places using recursion would fail in this case.
Updates: checked in two tests try to cover the scenario, but it is not stable enough in the CI environment
The text was updated successfully, but these errors were encountered: