Out of interest, was it a question of form to add explicit casting to the `return *this`?