[release/8.0] Avoid marking property/event attributes multiple times#92153
Merged
carlossanlop merged 6 commits intorelease/8.0from Sep 18, 2023
Merged
[release/8.0] Avoid marking property/event attributes multiple times#92153carlossanlop merged 6 commits intorelease/8.0from
carlossanlop merged 6 commits intorelease/8.0from
Conversation
NativeAot requires a call to GetCustomAttribute for the attributes to be kept.
|
Tagging subscribers to 'linkable-framework': @eerhardt, @vitek-karas, @LakshanF, @sbomer, @joperezr, @marek-safar Issue DetailsBackport of #92094 to release/8.0 /cc @sbomer Customer ImpactTestingRiskIMPORTANT: If this backport is for a servicing release, please verify that:
|
Contributor
|
@vitek-karas can you please review and sign-off this backport too? @jeffschwMSFT can we get your seal of approval? |
vitek-karas
approved these changes
Sep 16, 2023
jeffschwMSFT
approved these changes
Sep 18, 2023
Member
jeffschwMSFT
left a comment
There was a problem hiding this comment.
approved. this can be merged when ready
Closed
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Backport of #92094 to release/8.0
/cc @sbomer
Customer Impact
Specific patterns of attribute usages on properties or events could result in ILLink crashing (with stack overflow). This was reported by a customer publishing a MAUI iOS app in #92064.
As a side effect, this also fixes a (less impactful) bug where duplicate warnings were being produced: #83581.
Testing
Added test coverage for the pattern that causes recursion, for properties (the reported issue) and events (which can also exhibit the same problem).
Risk
Low risk. The change adds some extra tracking for properties and events, but this approach has been proven because we do something similar for methods/fields and other metadata entities.