This implements an abstract declaration in the parent trait. Why does this compile with an `override`?