When a base custom attribute class BaseAttribute has an AttributeUsageAttribute specifying that it is not inheritable (Inherited = False) and a derived attribute class DerivedAttribute inherits from that base attribute class, the Type.GetCustomAttributes and Attribute.GetCustomAttributes APIs do not consider the inherited specification of non-inheritability.Since the AttributeUsageAttribute is itself documented as being inherited (and indeed the ValidOn part of the AttributeUsage specification is, by the C# compiler, evaluated correctly), the DerivedAttribute does inherit the "Inherited = false" specification from its base class, and the GetCustomAttributes APIs should respect it.
Visual Studio/Team Foundation Server/.NET Framework Tooling Version
Steps to reproduce
Product Language
Operating System
Operating System Language
Actual results
Expected results