Unactionable trim warning on class with attribute that has RUC ctor #108501
Labels
area-Tools-ILLink
.NET linker development as well as trimming analyzers
Milestone
Similar to #108454, but for attributes at the type level:
RequiresUnreferencedCode
on C has no effect in this example (nor should it - it's just there to demonstrate that it doesn't silence the warning). There doesn't seem to be a way to annotate this to bubble up warnings to the caller.A variation of this came up in #108464. There the issue is not with RUC on an attribute ctor, but with DebuggerDisplayAttribute:
runtime/src/libraries/System.Configuration.ConfigurationManager/src/System/Configuration/ConfigurationElementCollection.cs
Lines 10 to 11 in 81efcad
This has the same problem when ConfigurationElementCollection is annotated with RequiresUnreferencedCode. Related: dotnet/linker#2122 worked around this issue for DebuggerDisplayAttribute strings that ILLink couldn't parse.
While #108454 could potentially be addressed by allowing RUC on properties/events, this issue seems to require a change in the warning model. I think the warning should point not to the annotated member, but to the place where the member (or maybe the attribute) is reflected over. Related: #103934
The text was updated successfully, but these errors were encountered: