Generate Typeable info at definition sites
[ghc.git] / testsuite / tests / simplCore / should_compile / T4908.stderr
1
2 ==================== Tidy Core ====================
3 Result size of Tidy Core = {terms: 64, types: 41, coercions: 0}
4
5 -- RHS size: {terms: 2, types: 0, coercions: 0}
6 T4908.$trModule2 :: TrName
7 [GblId,
8  Caf=NoCafRefs,
9  Str=DmdType m1,
10  Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
11          WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 30 20}]
12 T4908.$trModule2 = TrNameS "main"#
13
14 -- RHS size: {terms: 2, types: 0, coercions: 0}
15 T4908.$trModule1 :: TrName
16 [GblId,
17  Caf=NoCafRefs,
18  Str=DmdType m1,
19  Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
20          WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 40 20}]
21 T4908.$trModule1 = TrNameS "T4908"#
22
23 -- RHS size: {terms: 3, types: 0, coercions: 0}
24 T4908.$trModule :: Module
25 [GblId[ReflectionId],
26  Caf=NoCafRefs,
27  Str=DmdType m,
28  Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
29          WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
30 T4908.$trModule = Module T4908.$trModule2 T4908.$trModule1
31
32 Rec {
33 -- RHS size: {terms: 19, types: 5, coercions: 0}
34 T4908.f_$s$wf [Occ=LoopBreaker] :: Int# -> Int -> Int# -> Bool
35 [GblId, Arity=3, Caf=NoCafRefs, Str=DmdType <S,1*U><L,A><L,U>]
36 T4908.f_$s$wf =
37   \ (sc :: Int#) (sc1 :: Int) (sc2 :: Int#) ->
38     case sc of ds {
39       __DEFAULT ->
40         case sc2 of ds1 {
41           __DEFAULT -> T4908.f_$s$wf (-# ds 1#) sc1 ds1;
42           0# -> True
43         };
44       0# -> True
45     }
46 end Rec }
47
48 -- RHS size: {terms: 24, types: 13, coercions: 0}
49 T4908.$wf [InlPrag=[0]] :: Int# -> (Int, Int) -> Bool
50 [GblId,
51  Arity=2,
52  Caf=NoCafRefs,
53  Str=DmdType <S,1*U><L,1*U(A,U(U))>,
54  Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
55          WorkFree=True, Expandable=True, Guidance=IF_ARGS [30 20] 101 20}]
56 T4908.$wf =
57   \ (ww :: Int#) (w :: (Int, Int)) ->
58     case ww of ds {
59       __DEFAULT ->
60         case w of _ [Occ=Dead] { (a, b) ->
61         case b of _ [Occ=Dead] { I# ds1 ->
62         case ds1 of ds2 {
63           __DEFAULT -> T4908.f_$s$wf (-# ds 1#) a ds2;
64           0# -> True
65         }
66         }
67         };
68       0# -> True
69     }
70
71 -- RHS size: {terms: 8, types: 6, coercions: 0}
72 f [InlPrag=INLINE[0]] :: Int -> (Int, Int) -> Bool
73 [GblId,
74  Arity=2,
75  Caf=NoCafRefs,
76  Str=DmdType <S(S),1*U(1*U)><L,1*U(A,U(U))>,
77  Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True,
78          WorkFree=True, Expandable=True,
79          Guidance=ALWAYS_IF(arity=2,unsat_ok=True,boring_ok=False)
80          Tmpl= \ (w [Occ=Once!] :: Int) (w1 [Occ=Once] :: (Int, Int)) ->
81                  case w of _ [Occ=Dead] { I# ww1 [Occ=Once] -> T4908.$wf ww1 w1 }}]
82 f =
83   \ (w :: Int) (w1 :: (Int, Int)) ->
84     case w of _ [Occ=Dead] { I# ww1 -> T4908.$wf ww1 w1 }
85
86
87 ------ Local rules for imported ids --------
88 "SC:$wf0" [0]
89     forall (sc :: Int#) (sc1 :: Int) (sc2 :: Int#).
90       T4908.$wf sc (sc1, I# sc2)
91       = T4908.f_$s$wf sc sc1 sc2
92
93