summaryrefslogtreecommitdiff
path: root/testsuite/tests/simplCore/should_compile/T13873.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/simplCore/should_compile/T13873.stderr')
-rw-r--r--testsuite/tests/simplCore/should_compile/T13873.stderr366
1 files changed, 361 insertions, 5 deletions
diff --git a/testsuite/tests/simplCore/should_compile/T13873.stderr b/testsuite/tests/simplCore/should_compile/T13873.stderr
index 202f39eeb9..bd145fce19 100644
--- a/testsuite/tests/simplCore/should_compile/T13873.stderr
+++ b/testsuite/tests/simplCore/should_compile/T13873.stderr
@@ -1,8 +1,364 @@
-==================== Tidy Core rules ====================
-"SPEC wimwam @(ST s)"
- forall (@k) (@(s :: k)) ($dM :: M (ST s)).
- wimwam @(ST s) $dM
- = f_$swimwam @k @s
+==================== Specialise ====================
+Result size of Specialise
+ = {terms: 171, types: 109, coercions: 31, joins: 0/0}
+
+-- RHS size: {terms: 5, types: 5, coercions: 0, joins: 0/0}
+$cfoo_aza :: forall k (s :: k). ST s -> Int
+[LclId,
+ Arity=1,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True,
+ Guidance=ALWAYS_IF(arity=1,unsat_ok=True,boring_ok=True)}]
+$cfoo_aza
+ = \ (@k_az7) (@(s_az8 :: k_az7)) _ [Occ=Dead] -> GHC.Types.I# 3#
+
+-- RHS size: {terms: 1, types: 0, coercions: 9, joins: 0/0}
+T13873.$fMST [InlPrag=INLINE (sat-args=0)]
+ :: forall k (s :: k). M (ST s)
+[LclIdX[DFunId(nt)],
+ Arity=1,
+ Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True,
+ Guidance=ALWAYS_IF(arity=0,unsat_ok=False,boring_ok=True)
+ Tmpl= $cfoo_aza
+ `cast` (forall (k :: <*>_N) (s :: <k>_N).
+ Sym (T13873.N:M[0] <ST s>_N)
+ :: (forall {k} {s :: k}. ST s -> Int)
+ ~R# (forall {k} {s :: k}. M (ST s)))}]
+T13873.$fMST
+ = $cfoo_aza
+ `cast` (forall (k :: <*>_N) (s :: <k>_N).
+ Sym (T13873.N:M[0] <ST s>_N)
+ :: (forall {k} {s :: k}. ST s -> Int)
+ ~R# (forall {k} {s :: k}. M (ST s)))
+
+Rec {
+-- RHS size: {terms: 14, types: 14, coercions: 15, joins: 0/0}
+$swimwam_sAc :: forall {k} {s :: k}. Bool -> ST s -> Int
+[LclId, Arity=2]
+$swimwam_sAc
+ = \ (@k_ayV)
+ (@(s_ayW :: k_ayV))
+ (ds_dzJ :: Bool)
+ (x_auo :: ST s_ayW) ->
+ case ds_dzJ of {
+ False ->
+ (($cfoo_aza @k_ayV @s_ayW)
+ `cast` (Sym (T13873.N:M[0] <ST s_ayW>_N)
+ ; T13873.N:M[0] <ST s_ayW>_N
+ :: (ST s_ayW -> Int) ~R# (ST s_ayW -> Int)))
+ x_auo;
+ True ->
+ wimwam
+ @(ST s_ayW)
+ (($cfoo_aza @k_ayV @s_ayW)
+ `cast` (Sym (T13873.N:M[0] <ST s_ayW>_N)
+ :: (ST s_ayW -> Int) ~R# M (ST s_ayW)))
+ GHC.Types.False
+ x_auo
+ }
+
+-- RHS size: {terms: 14, types: 7, coercions: 2, joins: 0/0}
+wimwam [Occ=LoopBreaker] :: forall a. M a => Bool -> a -> Int
+[LclIdX,
+ Arity=3,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [60 50 0] 80 0},
+ RULES: "SPEC wimwam @(ST s)"
+ forall (@k_ayV) (@(s_ayW :: k_ayV)) ($dM_sAb :: M (ST s_ayW)).
+ wimwam @(ST s_ayW) $dM_sAb
+ = $swimwam_sAc @k_ayV @s_ayW]
+wimwam
+ = \ (@a_ayN)
+ ($dM_ayO :: M a_ayN)
+ (ds_dzJ :: Bool)
+ (x_auo :: a_ayN) ->
+ case ds_dzJ of {
+ False ->
+ ($dM_ayO
+ `cast` (T13873.N:M[0] <a_ayN>_N :: M a_ayN ~R# (a_ayN -> Int)))
+ x_auo;
+ True -> wimwam @a_ayN $dM_ayO GHC.Types.False x_auo
+ }
+end Rec }
+
+-- RHS size: {terms: 10, types: 10, coercions: 5, joins: 0/0}
+f :: forall {k} (s :: k). ST s -> Int
+[LclIdX,
+ Arity=1,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [0] 80 0}]
+f = \ (@k_ayV) (@(s_ayW :: k_ayV)) (x_auq :: ST s_ayW) ->
+ GHC.Num.$fNumInt_$c+
+ (wimwam
+ @(ST s_ayW)
+ (($cfoo_aza @k_ayV @s_ayW)
+ `cast` (Sym (T13873.N:M[0] <ST s_ayW>_N)
+ :: (ST s_ayW -> Int) ~R# M (ST s_ayW)))
+ GHC.Types.True
+ x_auq)
+ (GHC.Types.I# 1#)
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+$trModule_szU :: GHC.Prim.Addr#
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 20 0}]
+$trModule_szU = "main"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$trModule_szV :: GHC.Types.TrName
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$trModule_szV = GHC.Types.TrNameS $trModule_szU
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+$trModule_szW :: GHC.Prim.Addr#
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 30 0}]
+$trModule_szW = "T13873"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$trModule_szX :: GHC.Types.TrName
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$trModule_szX = GHC.Types.TrNameS $trModule_szW
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+T13873.$trModule :: GHC.Types.Module
+[LclIdX,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+T13873.$trModule = GHC.Types.Module $trModule_szV $trModule_szX
+
+-- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0}
+$krep_azC [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_azC
+ = GHC.Types.KindRepTyConApp
+ GHC.Types.$tcInt (GHC.Types.[] @GHC.Types.KindRep)
+
+-- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0}
+$krep_azy [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_azy
+ = GHC.Types.KindRepTyConApp
+ GHC.Types.$tcConstraint (GHC.Types.[] @GHC.Types.KindRep)
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+$krep_azx [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_azx = GHC.Types.KindRepFun GHC.Types.krep$* $krep_azy
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$krep_szY :: Int
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_szY = GHC.Types.I# 0#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$krep_azB [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=True,
+ WorkFree=False, Expandable=True, Guidance=IF_ARGS [] 20 0}]
+$krep_azB = GHC.Types.$WKindRepVar $krep_szY
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+$krep_azE [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_azE = GHC.Types.KindRepFun $krep_azB GHC.Types.krep$*
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+$krep_azA [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_azA = GHC.Types.KindRepFun $krep_azB $krep_azC
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$krep_szZ :: Int
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_szZ = GHC.Types.I# 1#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$krep_azG [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=True,
+ WorkFree=False, Expandable=True, Guidance=IF_ARGS [] 20 0}]
+$krep_azG = GHC.Types.$WKindRepVar $krep_szZ
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+$tcST_sA0 :: GHC.Prim.Addr#
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 20 0}]
+$tcST_sA0 = "ST"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$tcST_sA1 :: GHC.Types.TrName
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$tcST_sA1 = GHC.Types.TrNameS $tcST_sA0
+
+-- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
+T13873.$tcST :: GHC.Types.TyCon
+[LclIdX,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+T13873.$tcST
+ = GHC.Types.TyCon
+ 6963553042891150327##
+ 14763503896158265939##
+ T13873.$trModule
+ $tcST_sA1
+ 1#
+ $krep_azE
+
+-- RHS size: {terms: 3, types: 2, coercions: 0, joins: 0/0}
+$krep_sA2 :: [GHC.Types.KindRep]
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_sA2
+ = GHC.Types.:
+ @GHC.Types.KindRep $krep_azG (GHC.Types.[] @GHC.Types.KindRep)
+
+-- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0}
+$krep_sA3 :: [GHC.Types.KindRep]
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_sA3 = GHC.Types.: @GHC.Types.KindRep $krep_azB $krep_sA2
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+$krep_azF [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_azF = GHC.Types.KindRepTyConApp T13873.$tcST $krep_sA3
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+$tc'MkST_sA4 :: GHC.Prim.Addr#
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 30 0}]
+$tc'MkST_sA4 = "'MkST"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$tc'MkST_sA5 :: GHC.Types.TrName
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$tc'MkST_sA5 = GHC.Types.TrNameS $tc'MkST_sA4
+
+-- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
+T13873.$tc'MkST :: GHC.Types.TyCon
+[LclIdX,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+T13873.$tc'MkST
+ = GHC.Types.TyCon
+ 5475864918367802453##
+ 15766652073234575104##
+ T13873.$trModule
+ $tc'MkST_sA5
+ 2#
+ $krep_azF
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+$tcM_sA6 :: GHC.Prim.Addr#
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 20 0}]
+$tcM_sA6 = "M"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$tcM_sA7 :: GHC.Types.TrName
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$tcM_sA7 = GHC.Types.TrNameS $tcM_sA6
+
+-- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
+T13873.$tcM :: GHC.Types.TyCon
+[LclIdX,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+T13873.$tcM
+ = GHC.Types.TyCon
+ 4197309254282137524##
+ 18334626332448053007##
+ T13873.$trModule
+ $tcM_sA7
+ 0#
+ $krep_azx
+
+-- RHS size: {terms: 3, types: 2, coercions: 0, joins: 0/0}
+$krep_sA8 :: [GHC.Types.KindRep]
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_sA8
+ = GHC.Types.:
+ @GHC.Types.KindRep $krep_azB (GHC.Types.[] @GHC.Types.KindRep)
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+$krep_azD [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_azD = GHC.Types.KindRepTyConApp T13873.$tcM $krep_sA8
+
+-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
+$krep_azz [InlPrag=[~]] :: GHC.Types.KindRep
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$krep_azz = GHC.Types.KindRepFun $krep_azA $krep_azD
+
+-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
+$tc'C:M_sA9 :: GHC.Prim.Addr#
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 20 0}]
+$tc'C:M_sA9 = "'C:M"#
+
+-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
+$tc'C:M_sAa :: GHC.Types.TrName
+[LclId,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+$tc'C:M_sAa = GHC.Types.TrNameS $tc'C:M_sA9
+
+-- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
+T13873.$tc'C:M :: GHC.Types.TyCon
+[LclIdX,
+ Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
+ WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
+T13873.$tc'C:M
+ = GHC.Types.TyCon
+ 9142679081805245693##
+ 11450648793545401166##
+ T13873.$trModule
+ $tc'C:M_sAa
+ 1#
+ $krep_azz
+