Any reason not to define this as `IS_SCALAR_P(*a)`? It would entail less code duplication.