Diagnose invalid decl-specifiers in non-type template parameter declarations
According to the C++ Standard [temp.param]p2:
A storage class shall not be specified in a template-parameter declaration.
Additionally other decl-specifiers are also restricted.
This patch implements a diagnostic for these restrictions within Sema (inspired by how the restrictions are enforced within ActOnParamDeclarator).