What is the difference between modifies this, modifies this.x, and modifies this`x?


A modifies clause for a method lists object references whose fields may be modified by the body of the method.

If there are multiple items listed in the modifies clause, the implicit clause is the union of all of them. More on framing (modifies and reads clauses) can be found in the reference manual section on Framing specifications.