Community
Participate
Working Groups
Unlike removing entries from a type hierarchy, removing annotations is far less dangerous and addresses some use cases. (eg. you want to switch from some bunch of annotations to another bunch). So we need something like declare @remove_field: int i: @Anno (syntax not yet decided).
Syntax is declare @field: int A.i: -@Foo Tasks still to do: 1) tests for specifying multiple annotations. Grammar won't allow '-' before each one I think (right now) - should just police it and prevent it for now. 2) police usage of '-' with other annotation declares (constructor/method/type) - error message required (compiler limitation right now) 3) grammar had support for '+' added, need to police that as well with an appropriate error for now
As Andrew discovered - need to do something about values. Probably -@Foo doesn't allow values to be specified, and shouldn't enforce inclusion of values that have no default.
fixed for 1.6.11 - will need another bug to cover the other declare variants as use cases come up.