I have an idea to simplify the grammar:

Attribute:
          Pragma
        | ProtectionAttribute
        | FloorWaxOrDessertTopping
        ;

StorageClass:
          "enum"
        | FloorWaxOrDessertTopping
        ;

FloorWaxOrDessertTopping:
          "abstract"
        | AlignAttribute
        | "auto"
        | "const"
        | DeprecatedAttribute
        | "enum"
        | "extern"
        | "final"
        | "__gshared"
        | "immutable"
        | "inout"
        | LinkageAttribute
        | "nothrow"
        | "override"
        | Property
        | "pure"
        | "ref"
        | "scope"
        | "shared"
        | "static"
        | "synchronized"
        ;

I'm only half joking.

Reply via email to