`*this` is valid too, for me; with a pointer, you may expect `nullptr`.
(sad that when `this` was introduced, ref didn't exist :/)
if it was me, `decl` would also be a ref and not a pointer, but as you check vs `nullptr`, I was ok with pointer.