The spec says that a user-defined attribute must be an expression, but DMD accepts a wide range of things as UDAs:
Indeed UDA are odd beasts: https://issues.dlang.org/show_bug.cgi?id=19127
What do you do to handle this?
@Foo() int bar; instead of @Foo int bar; https://run.dlang.io/is/3USj6h