locate: fix weird behavior when starting point is on an alias.

Examples:

        let x = [x]
        module M = [M]

with [ ] representing the cursor, locate wouldn't go to the original definition
of x (resp. M) but 3 chars before where the alias is introduced.