-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Malformed recursive generic types can cause CrossGen crash or hang #5907
Labels
Milestone
Comments
@kouvel Can you PTAL? |
The issue is present in 1.0 and 1.1 and given that we have not seen any instances (besides the test) running into this, moving this out to 2.1.0. |
MichalStrehovsky
added a commit
that referenced
this issue
Nov 15, 2021
Caught my attention because this is disabled outside issues.targets. This is apparently blocked on #5907 which is a crossgen bug. I tried to /p:PublishReadyToRun=true this test locally and it seems to work fine with crossgen2.
Merged
jkotas
pushed a commit
that referenced
this issue
Nov 19, 2021
Caught my attention because this is disabled outside issues.targets. This is apparently blocked on #5907 which is a crossgen bug. I tried to /p:PublishReadyToRun=true this test locally and it seems to work fine with crossgen2.
Doesn't crash crossgen2. Test enabled in #61585. |
ghost
locked as resolved and limited conversation to collaborators
Dec 22, 2021
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Test case
tests/src/Loader/classloader/generics/regressions/DD117522/Test.csproj
contains a malformed infinitely recursive generic type definition. During app execution, this is correctly handled by throwing aTypeLoadException
. However, CrossGen isn't able to handle this correctly, and either crashes with a stack overflow (on Windows) or hangs (on Ubuntu). This test case is being temporarily disabled by dotnet/coreclr#5122, but we need to find a proper fix for this in CrossGen.The text was updated successfully, but these errors were encountered: