I don't really know how much the special-casing of std:: buys us, but if that is to be preserved, I propose the following grammar addition: <name> ::= St <unqualified-name> Regards, Martin