Der Fehler sollte wenn, dann erst im Falle einer Kollision erzeugt werden.
Also wenn ein Attribute ohne Suffix genutzt wird, und es ein anderes im Scope gibt, welches auch passen könnte.
Wenn C# als Beispiel Pate stand, dann lief das was schief: C# würde das nämlich nicht zulassen. (C# lässt generell keine Namenskollisionen zu)
Naja, die C# Fehlermeldung habe ich ja oben gepostet: Der Fehler kommt bei der Verwendung des Attributes. Deklariert man zwei Attribute (einmal "MyTestAttribute", und "MyTest") so compiliert das noch wunderbar. Erst beim Versuch, es mit [MyTest] zu verwenden schlägt der Compiler mit o.g. Fehlermeldung an. Und in diesem Fall kann man dann die Mehrdeutigkeit manuell auflösen, indem man z.B. [@MyTest] schreibt. (Habe diese Verwendung des @ noch nicht gesehen...)
Aber ja, es ist sehr wahrscheinlich dass hier C# als Pate stand - dann hätte man aber das Feature auch ruhig etwas besser kopieren können inkl. der Compilerfehler.