[Haskell-cafe] ghc should be able to deduce correct use of partial functions and not give a warning in such cases

George Colpitts george.colpitts at gmail.com
Tue Apr 16 14:57:31 UTC 2024


Hi Henning,

Thanks for the quick response!
Yes, that's basically how I fixed it but I really don't want to have to do
that since the code is correct. Not a big deal but may be irritating to
beginners or large projects that want to eliminate warnings. Do you think
an ER would be rejected ? If I remember correctly there is already
detection of incomplete pattern matching that is ok and in such cases
warnings are omitted. This would be similar to that.

Cheers,
George


On Tue, Apr 16, 2024 at 11:46 AM Henning Thielemann <
lemming at henning-thielemann.de> wrote:

>
> On Tue, 16 Apr 2024, George Colpitts wrote:
>
> > ghc should be able to deduce correct use of partial functions and not
> give a warning in such cases, e.g.
> > in 9.8.2
> >
> >      if null ys then [] else [(xs,tail ys)])
> >
> > gets a warning
> >
> >       warning: [GHC-63394] [-Wx-partial]
> >
> > but it is clear that this use of tail will never be a problem so IMHO
> that line of code should not get a
> > warning.
> >
> > Does anybody know if there is a plan or enhancement request to eliminate
> such warnings?
>
>
> I would just use good old pattern matching:
>
> case ys of
>     [] -> []
>     _:zs -> [(xs,zs)]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20240416/669f2e81/attachment.html>


More information about the Haskell-Cafe mailing list