New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pop-tag-mark doesn't return if haskell-mode-find-def succeeds #1311
Comments
There should be a @gracjan 25.1's (defun xref-push-marker-stack (&optional m)
"Add point M (defaults to `point-marker') to the marker stack."
(ring-insert xref--marker-ring (or m (point-marker)))) Also, if |
There was something fishy with Yes, it should be fixed. |
@henrylaxen Should be fixed now. Please report back if something's still wrong. @gracjan Ah, |
@fice-t, we will fix it again if this happens. Would be great to have a test case for this. |
When I am in haskell-mode, and type M-. to find the source of the definition under point, and the definition under point is in a different file, I get the following error message in the Messages buffer:
error: "Marker points into wrong buffer", #<marker at 15335 in Snaplet.hs>
This behaviour does NOT occur if haskell-mode-find-def fails and haskell-mode-tag-find is called and succeeds. I instrumented haskell-mode-jump-to-def-or-tag and found that the error happens at the (goto-char initial-loc) line in the code, hence the (xref-push-marker-stack) line isn't executed. However if haskell-mode-tag-find succeeds, the the previous location is indeed pushed (inside of haskell-mode-tag-find somewhere) so M-* (pop-tag-mark) works correctly. I hope this is helpful.
Best wishes,
Henry Laxen
The text was updated successfully, but these errors were encountered: