Why isn’t auto allowed in a definition where the declaration specifies the type