Generate Typeable info at definition sites
[ghc.git] / testsuite / tests / simplCore / should_compile / T3717.stderr
1
2 ==================== Tidy Core ====================
3 Result size of Tidy Core = {terms: 32, types: 13, coercions: 0}
4
5 -- RHS size: {terms: 2, types: 0, coercions: 0}
6 T3717.$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 T3717.$trModule2 = TrNameS "main"#
13
14 -- RHS size: {terms: 2, types: 0, coercions: 0}
15 T3717.$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 T3717.$trModule1 = TrNameS "T3717"#
22
23 -- RHS size: {terms: 3, types: 0, coercions: 0}
24 T3717.$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 T3717.$trModule = Module T3717.$trModule2 T3717.$trModule1
31
32 Rec {
33 -- RHS size: {terms: 10, types: 2, coercions: 0}
34 T3717.$wfoo [InlPrag=[0], Occ=LoopBreaker] :: Int# -> Int#
35 [GblId, Arity=1, Caf=NoCafRefs, Str=DmdType <S,1*U>]
36 T3717.$wfoo =
37   \ (ww :: Int#) ->
38     case ww of ds {
39       __DEFAULT -> T3717.$wfoo (-# ds 1#);
40       0# -> 0#
41     }
42 end Rec }
43
44 -- RHS size: {terms: 10, types: 4, coercions: 0}
45 foo [InlPrag=INLINE[0]] :: Int -> Int
46 [GblId,
47  Arity=1,
48  Caf=NoCafRefs,
49  Str=DmdType <S(S),1*U(1*U)>m,
50  Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True,
51          WorkFree=True, Expandable=True,
52          Guidance=ALWAYS_IF(arity=1,unsat_ok=True,boring_ok=False)
53          Tmpl= \ (w [Occ=Once!] :: Int) ->
54                  case w of _ [Occ=Dead] { I# ww1 [Occ=Once] ->
55                  case T3717.$wfoo ww1 of ww2 { __DEFAULT -> I# ww2 }
56                  }}]
57 foo =
58   \ (w :: Int) ->
59     case w of _ [Occ=Dead] { I# ww1 ->
60     case T3717.$wfoo ww1 of ww2 { __DEFAULT -> I# ww2 }
61     }
62
63
64