summaryrefslogtreecommitdiff
path: root/testsuite/tests/simplCore/should_compile/T7360.stderr
blob: f7979075ac9705645a2ec712da1de4016e5386fc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67

==================== Tidy Core ====================
Result size of Tidy Core = {terms: 36, types: 29, coercions: 0}

-- RHS size: {terms: 6, types: 3, coercions: 0}
T7360.$WFoo3 [InlPrag=INLINE] :: Int -> Foo
[GblId[DataConWrapper],
 Arity=1,
 Caf=NoCafRefs,
 Str=DmdType <S,U>m3,
 Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True,
         WorkFree=True, Expandable=True,
         Guidance=ALWAYS_IF(arity=1,unsat_ok=False,boring_ok=False)
         Tmpl= \ (dt [Occ=Once!] :: Int) ->
                 case dt of _ [Occ=Dead] { I# dt [Occ=Once] -> T7360.Foo3 dt }}]
T7360.$WFoo3 =
  \ (dt [Occ=Once!] :: Int) ->
    case dt of _ [Occ=Dead] { I# dt [Occ=Once] -> T7360.Foo3 dt }

-- RHS size: {terms: 5, types: 2, coercions: 0}
fun1 [InlPrag=NOINLINE] :: Foo -> ()
[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType <S,1*U>]
fun1 = \ (x :: Foo) -> case x of _ [Occ=Dead] { __DEFAULT -> () }

-- RHS size: {terms: 2, types: 0, coercions: 0}
T7360.fun5 :: ()
[GblId,
 Str=DmdType,
 Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False,
         WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 20 0}]
T7360.fun5 = fun1 T7360.Foo1

-- RHS size: {terms: 2, types: 0, coercions: 0}
T7360.fun4 :: Int
[GblId,
 Caf=NoCafRefs,
 Str=DmdType m,
 Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
         WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 20}]
T7360.fun4 = I# 0#

-- RHS size: {terms: 16, types: 12, coercions: 0}
fun2 :: forall a. [a] -> ((), Int)
[GblId,
 Arity=1,
 Str=DmdType <L,1*U>m,
 Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True,
         WorkFree=True, Expandable=True,
         Guidance=ALWAYS_IF(arity=1,unsat_ok=True,boring_ok=False)
         Tmpl= \ (@ a) (x [Occ=Once!] :: [a]) ->
                 (T7360.fun5,
                  case x of wild {
                    [] -> T7360.fun4;
                    : _ [Occ=Dead] _ [Occ=Dead] ->
                      case GHC.List.$wlenAcc @ a wild 0# of ww2 { __DEFAULT -> I# ww2 }
                  })}]
fun2 =
  \ (@ a) (x :: [a]) ->
    (T7360.fun5,
     case x of wild {
       [] -> T7360.fun4;
       : ds ds1 ->
         case GHC.List.$wlenAcc @ a wild 0# of ww2 { __DEFAULT -> I# ww2 }
     })