Joachim Breitner mail at
Sun Nov 29 18:09:18 UTC 2015


Am Sonntag, den 29.11.2015, 10:42 -0500 schrieb Richard Eisenberg:
> On my kind=type branch (D808), I have this test failure for
> stranal/sigs/UnsatFun:
> ==================== Strictness signatures ====================
>  UnsatFun.$trModule: m
>  UnsatFun.f: <B,1*U(U)><B,A>b
> -UnsatFun.g: <B,1*U(U)>b
> -UnsatFun.g': <L,1*U(U)>
> +UnsatFun.g: <L,U(U)>
> +UnsatFun.g': <L,U(U)>
>  UnsatFun.g3: <L,U(U)>m
> -UnsatFun.h: <C(S),1*C1(U(U))>
> -UnsatFun.h2: <S,1*U><L,1*C1(U(U))>
> -UnsatFun.h3: <C(S),1*C1(U)>m
> +UnsatFun.h: <S,1*U>
> +UnsatFun.h2: <S,1*U><L,1*U>
> +UnsatFun.h3: <S,1*U>m
> *** unexpected failure for UnsatFun(optasm)
> I haven't any clue what this means. Is it bad? Is it good? Any
> pointers?

Unless the test case is bogus (which is possible, it was created by me,
two years ago), the result ist bad. Here is the comment from the test
case source file:

    Here we test how a partially applied function (f x)
    with a bottom result affects the strictness signature
    when used strictly (g) and lazily (g')

    In both cases, the parameter x should not be absent

So it looks as if the strictness analysis become less powerful with
your changes. Probably not downright wrong (I guess “L” is always
correct), but less precise.

I admit to not having documented the test case well enough back then.

(I can dig deeper if required, but not right now.)


Joachim “nomeata” Breitner
  mail at joachim-breitner.de
  Jabber: nomeata at  • GPG-Key: 0xF0FBF51F
  Debian Developer: nomeata at

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <>

More information about the ghc-devs mailing list