No program decides a non-trivial property of what programs accept. Build the machine of the proof, which runs M on w and then behaves like a machine with the property, and see why a decider for the property would decide halting.
This interactive visualization needs JavaScript.