T2627 profasm/profc: Kinds don't match in type application
T2627 profasm/profc is getting a lint failure:
=====> T2627(profasm)
cd ./indexed-types/should_compile && '/64playpen/buildbot/x86_64-linux-stable/build/ghc/stage2-inplace/ghc' -fforce-recomp -dcore-lint -dcmm-lint -Dx86_64_unknown_linux -dno-debug-output -c T2627.hs -O -prof -auto-all -fasm >T2627.comp.stderr 2>&1
Compile failed (status 256) errors were:
*** Core Lint Errors: in result of Worker Wrapper binds ***
<no location info>:
In the expression: (\ (@ a_akP)
(@ b_akQ)
(@ $coDual_alQ)
(@ $coDual_alR)
(ds_dmA [ALWAYS Just S] :: T2627.Comm a_akP)
(ds_dmB [ALWAYS Just S] :: T2627.Comm b_akQ) ->
__scc {conn main:T2627}
case ds_dmA of wild_B1 [ALWAYS Just A] {
T2627.Rd @ a_akW @ b_akX @ $co$_alf k_ag6 [ALWAYS Just C(S)] ->
case ds_dmB of wild_Xp [ALWAYS Just A] {
__DEFAULT -> fail_sn8;
T2627.Wr @ a_akY
@ b_akZ
@ $co$_al5
a_ag8 [ALWAYS Just L]
r_aga [ALWAYS Just S] ->
T2627.conn
@ b_akX
@ b_akZ
@ (trans
(trans
(T2627.Dual b_akX)
(trans
(trans
(T2627.Dual b_akX)
(trans
(trans
(T2627.Dual b_akX)
(trans
(trans
(T2627.Dual
(right
(trans
(sym $co$_alf)
(trans
(trans
(sym $coDual_alR)
(T2627.Dual $co$_al5))
(a_akY
T2627.:CoF:R1Dual b_akZ)))))
(T2627.Dual (T2627.Dual b_akZ)))
(trans
(trans
(T2627.Dual (T2627.Dual b_akZ))
(trans
(right
(trans
(trans
(sym
(a_akW
T2627.:CoF:R2Dual T2627.Dual
b_akZ))
(trans
(T2627.Dual
(T2627.R
(right
(left
(trans
(sym
$co$_alf)
(trans
(trans
(sym
$coDual_alR)
(T2627.Dual
$co$_al5))
(a_akY
T2627.:CoF:R1Dual b_akZ)))))
(T2627.Dual
b_akZ)))
(trans
(T2627.Dual
(trans
(sym
(a_akY
T2627.:CoF:R1Dual b_akZ))
(trans
(T2627.Dual
(sym
$co$_al5))
$coDual_alR)))
$coDual_alQ)))
$co$_al5))
b_akZ))
b_akZ)))
b_akZ))
b_akZ))
b_akZ)
@ (trans
(trans
(T2627.Dual b_akZ)
(trans
(trans
(T2627.Dual b_akZ)
(trans
(trans
(T2627.Dual b_akZ)
(trans
(T2627.Dual b_akZ)
(trans
(trans
(T2627.Dual b_akZ)
(trans
(right
(trans
(trans
(sym
(a_akY
T2627.:CoF:R1Dual b_akZ))
(trans
(T2627.Dual
(sym $co$_al5))
$coDual_alR))
$co$_alf))
b_akX))
b_akX)))
b_akX))
b_akX))
b_akX)
(k_ag6
(a_ag8
`cast` (trans
(trans
a_akY
(trans
(trans
a_akY
(trans
(trans
a_akY
(trans
(trans
a_akY
(trans
(right
(left
(trans
(trans
(sym
(a_akY
T2627.:CoF:R1Dual b_akZ))
(trans
(T2627.Dual
(sym
$co$_al5))
$coDual_alR))
$co$_alf)))
a_akW))
a_akW))
a_akW))
a_akW))
a_akW
:: a_akY ~ a_akW)))
r_aga
};
T2627.Wr @ a_all
@ b_alm
@ $co$_alI
a_agc [ALWAYS Just L]
r_age [ALWAYS Just S] ->
case ds_dmB of wild_Xq [ALWAYS Just A] {
__DEFAULT -> fail_sn8;
T2627.Rd @ a_aln @ b_alo @ $co$_alu k_agg [ALWAYS Just C(S)] ->
T2627.conn
@ b_alm
@ b_alo
@ (trans
(trans
(T2627.Dual b_alm)
(trans
(trans
(T2627.Dual b_alm)
(trans
(trans
(T2627.Dual b_alm)
(trans
(trans
(T2627.Dual
(right
(trans
(sym $co$_alI)
(trans
(trans
(sym $coDual_alR)
(T2627.Dual $co$_alu))
(a_aln
T2627.:CoF:R2Dual b_alo)))))
(T2627.Dual (T2627.Dual b_alo)))
(trans
(trans
(T2627.Dual (T2627.Dual b_alo))
(trans
(right
(trans
(trans
(sym
(a_all
T2627.:CoF:R1Dual T2627.Dual
b_alo))
(trans
(T2627.Dual
(T2627.W
(right
(left
(trans
(sym
$co$_alI)
(trans
(trans
(sym
$coDual_alR)
(T2627.Dual
$co$_alu))
(a_aln
T2627.:CoF:R2Dual b_alo)))))
(T2627.Dual
b_alo)))
(trans
(T2627.Dual
(trans
(sym
(a_aln
T2627.:CoF:R2Dual b_alo))
(trans
(T2627.Dual
(sym
$co$_alu))
$coDual_alR)))
$coDual_alQ)))
$co$_alu))
b_alo))
b_alo)))
b_alo))
b_alo))
b_alo)
@ (trans
(trans
(T2627.Dual b_alo)
(trans
(trans
(T2627.Dual b_alo)
(trans
(trans
(T2627.Dual b_alo)
(trans
(T2627.Dual b_alo)
(trans
(trans
(T2627.Dual b_alo)
(trans
(right
(trans
(trans
(sym
(a_aln
T2627.:CoF:R2Dual b_alo))
(trans
(T2627.Dual
(sym $co$_alu))
$coDual_alR))
$co$_alI))
b_alm))
b_alm)))
b_alm))
b_alm))
b_alm)
r_age
(k_agg
(a_agc
`cast` (trans
(trans
a_all
(sym
(sym
(trans
(trans
a_all
(sym
(sym
(trans
(trans
a_all
(sym
(sym
(trans
(trans
a_all
(sym
(trans
(right
(left
(trans
(trans
(sym
(a_aln
T2627.:CoF:R2Dual b_alo))
(trans
(T2627.Dual
(sym
$co$_alu))
$coDual_alR))
$co$_alI)))
(sym
a_all))))
a_aln))))
a_aln))))
a_aln))))
a_aln
:: a_all ~ a_aln)))
};
T2627.Fin @ $co$_akV x_ag2 [ALWAYS Just L] ->
case ds_dmB of wild_Xn [ALWAYS Just A] {
__DEFAULT -> fail_sn8;
T2627.Fin @ $co$_akU y_ag4 [ALWAYS Just L] -> (x_ag2, y_ag4)
}
})
@ a_afZ @ b_ag0 @ co_wild_B1
Kinds don't match in type application:
Type variable: $coDual_alQ :: T2627.Dual a_afZ ~ b_ag0
Arg type: co_wild_Xb :: T2627.Dual b_ag0 ~ a_afZ
*** Offending Program ***
T2627.$WRd :: forall a_afH b_afI.
(a_afH -> T2627.Comm b_afI) -> T2627.Comm (T2627.R a_afH b_afI)
[DataConWrapper]
[Arity 1
NoCafRefs
Str: DmdType L]
T2627.$WRd =
__inline_me (\ (@ a_afH)
(@ b_afI)
(tpl_B1 [ALWAYS Just L] :: a_afH -> T2627.Comm b_afI) ->
T2627.Rd
@ (T2627.R a_afH b_afI)
@ a_afH
@ b_afI
@ (T2627.R a_afH b_afI)
tpl_B1)
T2627.$WWr :: forall a_afK b_afL.
a_afK -> T2627.Comm b_afL -> T2627.Comm (T2627.W a_afK b_afL)
[DataConWrapper]
[Arity 2
NoCafRefs
Str: DmdType LL]
T2627.$WWr =
__inline_me (\ (@ a_afK)
(@ b_afL)
(tpl_B1 [ALWAYS Just L] :: a_afK)
(tpl_B2 [ALWAYS Just L] :: T2627.Comm b_afL) ->
T2627.Wr
@ (T2627.W a_afK b_afL)
@ a_afK
@ b_afL
@ (T2627.W a_afK b_afL)
tpl_B1
tpl_B2)
T2627.$WFin :: GHC.Types.Int -> T2627.Comm T2627.Z
[DataConWrapper]
[Arity 1
NoCafRefs
Str: DmdType L]
T2627.$WFin = __inline_me (T2627.Fin @ T2627.Z @ T2627.Z)
fail_sn8 :: (GHC.Types.Int, GHC.Types.Int)
[Str: DmdType b]
fail_sn8 =
__scc {conn main:T2627 !}
Control.Exception.Base.patError
@ (GHC.Types.Int, GHC.Types.Int)
"T2627.hs:(20,0)-(22,34)|function conn"
Rec {
$wconn_snA :: forall a_afZ b_ag0.
(T2627.Dual a_afZ ~ b_ag0, T2627.Dual b_ag0 ~ a_afZ) =>
T2627.Comm a_afZ
-> T2627.Comm b_ag0
-> (# GHC.Types.Int, GHC.Types.Int #)
[Arity 2
Str: DmdType SS]
$wconn_snA =
\ (@ a_afZ)
(@ b_ag0)
(@ co_wild_B1)
(@ co_wild_B1)
(w_snv [ALWAYS Just S] :: T2627.Comm a_afZ)
(w_snw [ALWAYS Just S] :: T2627.Comm b_ag0) ->
case (\ (@ a_akP)
(@ b_akQ)
(@ $coDual_alQ)
(@ $coDual_alR)
(ds_dmA [ALWAYS Just S] :: T2627.Comm a_akP)
(ds_dmB [ALWAYS Just S] :: T2627.Comm b_akQ) ->
__scc {conn main:T2627}
case ds_dmA of wild_B1 [ALWAYS Just A] {
T2627.Rd @ a_akW @ b_akX @ $co$_alf k_ag6 [ALWAYS Just C(S)] ->
case ds_dmB of wild_Xp [ALWAYS Just A] {
__DEFAULT -> fail_sn8;
T2627.Wr @ a_akY
@ b_akZ
@ $co$_al5
a_ag8 [ALWAYS Just L]
r_aga [ALWAYS Just S] ->
T2627.conn
@ b_akX
@ b_akZ
@ (trans
(trans
(T2627.Dual b_akX)
(trans
(trans
(T2627.Dual b_akX)
(trans
(trans
(T2627.Dual b_akX)
(trans
(trans
(T2627.Dual
(right
(trans
(sym $co$_alf)
(trans
(trans
(sym $coDual_alR)
(T2627.Dual $co$_al5))
(a_akY T2627.:CoF:R1Dual b_akZ)))))
(T2627.Dual (T2627.Dual b_akZ)))
(trans
(trans
(T2627.Dual (T2627.Dual b_akZ))
(trans
(right
(trans
(trans
(sym
(a_akW
T2627.:CoF:R2Dual T2627.Dual
b_akZ))
(trans
(T2627.Dual
(T2627.R
(right
(left
(trans
(sym $co$_alf)
(trans
(trans
(sym
$coDual_alR)
(T2627.Dual
$co$_al5))
(a_akY
T2627.:CoF:R1Dual b_akZ)))))
(T2627.Dual b_akZ)))
(trans
(T2627.Dual
(trans
(sym
(a_akY
T2627.:CoF:R1Dual b_akZ))
(trans
(T2627.Dual
(sym $co$_al5))
$coDual_alR)))
$coDual_alQ)))
$co$_al5))
b_akZ))
b_akZ)))
b_akZ))
b_akZ))
b_akZ)
@ (trans
(trans
(T2627.Dual b_akZ)
(trans
(trans
(T2627.Dual b_akZ)
(trans
(trans
(T2627.Dual b_akZ)
(trans
(T2627.Dual b_akZ)
(trans
(trans
(T2627.Dual b_akZ)
(trans
(right
(trans
(trans
(sym (a_akY T2627.:CoF:R1Dual b_akZ))
(trans
(T2627.Dual (sym $co$_al5))
$coDual_alR))
$co$_alf))
b_akX))
b_akX)))
b_akX))
b_akX))
b_akX)
(k_ag6
(a_ag8
`cast` (trans
(trans
a_akY
(trans
(trans
a_akY
(trans
(trans
a_akY
(trans
(trans
a_akY
(trans
(right
(left
(trans
(trans
(sym
(a_akY
T2627.:CoF:R1Dual b_akZ))
(trans
(T2627.Dual
(sym $co$_al5))
$coDual_alR))
$co$_alf)))
a_akW))
a_akW))
a_akW))
a_akW))
a_akW
:: a_akY ~ a_akW)))
r_aga
};
T2627.Wr @ a_all
@ b_alm
@ $co$_alI
a_agc [ALWAYS Just L]
r_age [ALWAYS Just S] ->
case ds_dmB of wild_Xq [ALWAYS Just A] {
__DEFAULT -> fail_sn8;
T2627.Rd @ a_aln @ b_alo @ $co$_alu k_agg [ALWAYS Just C(S)] ->
T2627.conn
@ b_alm
@ b_alo
@ (trans
(trans
(T2627.Dual b_alm)
(trans
(trans
(T2627.Dual b_alm)
(trans
(trans
(T2627.Dual b_alm)
(trans
(trans
(T2627.Dual
(right
(trans
(sym $co$_alI)
(trans
(trans
(sym $coDual_alR)
(T2627.Dual $co$_alu))
(a_aln T2627.:CoF:R2Dual b_alo)))))
(T2627.Dual (T2627.Dual b_alo)))
(trans
(trans
(T2627.Dual (T2627.Dual b_alo))
(trans
(right
(trans
(trans
(sym
(a_all
T2627.:CoF:R1Dual T2627.Dual
b_alo))
(trans
(T2627.Dual
(T2627.W
(right
(left
(trans
(sym $co$_alI)
(trans
(trans
(sym
$coDual_alR)
(T2627.Dual
$co$_alu))
(a_aln
T2627.:CoF:R2Dual b_alo)))))
(T2627.Dual b_alo)))
(trans
(T2627.Dual
(trans
(sym
(a_aln
T2627.:CoF:R2Dual b_alo))
(trans
(T2627.Dual
(sym $co$_alu))
$coDual_alR)))
$coDual_alQ)))
$co$_alu))
b_alo))
b_alo)))
b_alo))
b_alo))
b_alo)
@ (trans
(trans
(T2627.Dual b_alo)
(trans
(trans
(T2627.Dual b_alo)
(trans
(trans
(T2627.Dual b_alo)
(trans
(T2627.Dual b_alo)
(trans
(trans
(T2627.Dual b_alo)
(trans
(right
(trans
(trans
(sym (a_aln T2627.:CoF:R2Dual b_alo))
(trans
(T2627.Dual (sym $co$_alu))
$coDual_alR))
$co$_alI))
b_alm))
b_alm)))
b_alm))
b_alm))
b_alm)
r_age
(k_agg
(a_agc
`cast` (trans
(trans
a_all
(sym
(sym
(trans
(trans
a_all
(sym
(sym
(trans
(trans
a_all
(sym
(sym
(trans
(trans
a_all
(sym
(trans
(right
(left
(trans
(trans
(sym
(a_aln
T2627.:CoF:R2Dual b_alo))
(trans
(T2627.Dual
(sym
$co$_alu))
$coDual_alR))
$co$_alI)))
(sym a_all))))
a_aln))))
a_aln))))
a_aln))))
a_aln
:: a_all ~ a_aln)))
};
T2627.Fin @ $co$_akV x_ag2 [ALWAYS Just L] ->
case ds_dmB of wild_Xn [ALWAYS Just A] {
__DEFAULT -> fail_sn8;
T2627.Fin @ $co$_akU y_ag4 [ALWAYS Just L] -> (x_ag2, y_ag4)
}
})
@ a_afZ @ b_ag0 @ co_wild_B1 @ co_wild_B1 w_snv w_snw
of ww_snC { (ww_snD, ww_snE) ->
(# ww_snD, ww_snE #)
}
T2627.conn [ALWAYS LoopBreaker Nothing] :: forall a_afZ b_ag0.
(T2627.Dual a_afZ ~ b_ag0, T2627.Dual b_ag0 ~ a_afZ) =>
T2627.Comm a_afZ
-> T2627.Comm b_ag0
-> (GHC.Types.Int, GHC.Types.Int)
[Exported]
[Arity 2
Worker $wconn_snA
Str: DmdType SSm]
T2627.conn =
__inline_me (\ (@ a_afZ)
(@ b_ag0)
(@ co_wild_B1)
(@ co_wild_B1)
(w_snv [ALWAYS Just S] :: T2627.Comm a_afZ)
(w_snw [ALWAYS Just S] :: T2627.Comm b_ag0) ->
case $wconn_snA
@ a_afZ @ b_ag0 @ co_wild_B1 @ co_wild_B1 w_snv w_snw
of ww_snB { (# ww_snD, ww_snE #) ->
(ww_snD, ww_snE)
})
end Rec }
*** End of Offense ***
<no location info>:
Compilation had errors
*** unexpected failure for T2627(profasm)
Trac metadata
Trac field | Value |
---|---|
Version | 6.10.1 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |