Skip to content

Obsolete SuppressIldasmAttribute #40622

@teo-tsirpanis

Description

@teo-tsirpanis

Edit by @GrabYourPitchforks: This issue tracks only obsoleting the attribute, not any other ildasm.exe work.

namespace System.Runtime.CompilerServices
{
    [Obsolete("SuppressIldasmAttribute has no effect in .NET 6.0+ applications.")] // NEW attribute
    [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Module)]
    public sealed class SuppressIldasmAttribute : Attribute
    {
        public SuppressIldasmAttribute() { }
    }
}

(What text do we even put there? "This attribute never made any sense to begin with and has no valid use case."? I've based the text proposed above on the DisablePrivateReflectionAttribute obsoletion text already in 6.0.)


It has no valid use case, the security against reverse engineering it provides is nonexistent and there are tons of tools that ignore it.

My proposal is to deprecate it per #33360 and modify ILDasm to stop honoring that attribute.

Metadata

Metadata

Type

No type

Projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions