Hi,

In .NET there is attribute named ObsoleteAttribute which is derived from
System.Attribute Class. This attribute when applied to a target (class or
method etc.) gives a compiler warning/error. I know we can write our own
attributes by inheriting the System.Attribute but I want to make it give
compiler warning or error when it is applied on the defined attribute
target.

How can we write such an attributes?

Regards,
Ashok G

Re: How to write a .NET attribute which does just like by Marc

Marc
Thu Apr 24 07:42:13 CDT 2008

You can't... ObsoleteAttribute is handled as a special-case by the
compiler, not by anything extensible.

What do you want to check, in particular? There may be other ways of
doing it...

Marc

Re: How to write a .NET attribute which does just like by Ignacio

Ignacio
Thu Apr 24 08:45:11 CDT 2008

On Apr 24, 8:26=A0am, "AshokG" <gw2ks...@hotmail.com> wrote:
> Hi,
>
> In .NET there is attribute named ObsoleteAttribute which is derived from
> System.Attribute Class. This attribute when applied to a target (class or
> method etc.) gives a compiler warning/error. I know we can write our own
> attributes by inheriting the System.Attribute but I want to =A0make it giv=
e
> compiler warning or error when it is applied on the defined attribute
> target.
>
> How can we write such an attributes?
>
> Regards,
> Ashok G

Hi,

AFAIK there is no way of doing that. The compiler knows a given number
of attributes and have CODED actions for them.
You would need to write a new compiler :)

Re: How to write a .NET attribute which does just like ObsoleteAttribute... by Chazz

Chazz
Sun Apr 27 02:49:12 CDT 2008

Hi Ashok,

I know you can designate code as 'deprecated'.
Simply deprecate the attribute and each usage of it
will probally result in a compiler warning.

(not sure 100% because i have not tried this yet)

Let me know if it works!

Chazz


AshokG schreef:
> Hi,
>
> In .NET there is attribute named ObsoleteAttribute which is derived from
> System.Attribute Class. This attribute when applied to a target (class or
> method etc.) gives a compiler warning/error. I know we can write our own
> attributes by inheriting the System.Attribute but I want to make it give
> compiler warning or error when it is applied on the defined attribute
> target.
>
> How can we write such an attributes?
>
> Regards,
> Ashok G
>
>

Re: How to write a .NET attribute which does just like ObsoleteAttribute... by AshokG

AshokG
Mon Apr 28 09:57:46 CDT 2008

I think I can do something with AST (Abstract Syntax Tree) of the .NET
framework. I don't have complete onfo on .NET's AST.

Regards,
Ashok G

"AshokG" <gw2ksoft@hotmail.com> wrote in message
news:uTeKFZgpIHA.1236@TK2MSFTNGP02.phx.gbl...
> Hi,
>
> In .NET there is attribute named ObsoleteAttribute which is derived from
> System.Attribute Class. This attribute when applied to a target (class or
> method etc.) gives a compiler warning/error. I know we can write our own
> attributes by inheriting the System.Attribute but I want to make it give
> compiler warning or error when it is applied on the defined attribute
> target.
>
> How can we write such an attributes?
>
> Regards,
> Ashok G
>