21.2.4 Attribute parameter types
The types of positional and named parameters for an attribute class are limited to the attribute parameter types, which are:
One of the following types: bool, byte, char, double, float, int, long, sbyte, short, string, uint, ulong, ushort.
This list of types seems to be quite limited. I was very surprised that I can't use a decimal literal. I expect there is some complex reason why this list is so limited that I'm not aware of, but it would be nice to get decimal on the list.