Is "for arg no. 1" not hint enough
The message itself is fine. The "problem" is that you can't start editing the incorrect variable name because the cursor is at the end of the variable instead of at the beginning (which would simplify editing the incorrect name.)
Well that depends...
- If you want to delete the name to replace it: ctrl-backspace (but yes that can be done from either side)
- If you typed "SomeObject" and forgot to add the value like "SomeObject.MyList" then the position is perfect.
- Same if it is a pointer and you forgot the ^ deref.
- And if it is the wrong method you are calling, then any pos is wrong.
Even if you went to the begin of the term, what is the begin?
MyFunc(foo.bar.some.not_a_list)
Do I really just need to replace the last ident? Or maybe several or all?
IMHO it can't be predicted how the user wants to edit the faulty source.
Some users maybe would prefer if the word was selected (if an identifier is marked as the problem, maybe different if it is a symbol). I would probably be annoyed by that (I probably wouldn't mind the at the begin of the word, in this case... but not important to me)