Subject: Re: bug#73500: eglot: diagnostic location not always shown

From: Federico Beffa <[email-masked]>
Date: Tue, 1 Oct 2024 18:32:12 +0200

Thanks for the constructive answer!

On 01/10/2024 18:08, Dmitry Gutov wrote:
> Hi!
>
> I cannot comment on the whole previous discussion, but what I'm seeing 
> here's is both diagnostics are rendered, but one of them (the first 
> one) gets lost inside the second one visually.
>
> Is that the problem?
>

No, not really. The initial report included a single line code example 
that I extracted from a slightly longer example and produces 3 
diagnostics, one more than the full code that I was using. In the 
following emails I sent the following full example:

```haskell
module Main where

isAscending :: [Int] -> Bool
isAscending [] = True
isAscending [x] = True
--           ^ thix 'x' is not underlined!
isAscending (x : y : ys) = x < y && isAscending (y : ys)

main :: IO ()
main = putStrLn "Hello, bug 73500!"
```

Here I see the fringe exclamation mark on the line above the comment, 
but no underline anywhere. What I'd expect is to see the `x` underlined 
(comment likely off due to non-monospaced fonts in the email).

> One existing way to see the warnings separate from each other is 
> invoke Flymake's diagnostics buffer: 'M-x 
> flymake-show-buffer-diagnostics'. -matches]: Defined but not used: ‘x’
>

Yes, `flymake-show-buffer-diagnostics` shows the diagnostic

     5  13 warning  e-f-b    typecheck [-Wunused-matches]: Defined but 
not used: ‘x’

  It's just the missing underline that's unexpected. Here a screenshot