Marge Bot pushed to branch master at Glasgow Haskell Compiler / GHC

Commits:

28 changed files:

Changes:

  • compiler/GHC/Tc/Instance/Typeable.hs
    ... ... @@ -53,6 +53,7 @@ The overall plan is this:
    53 53
     
    
    54 54
     1. Generate a binding for each module p:M
    
    55 55
        (done in GHC.Tc.Instance.Typeable by mkModIdBindings)
    
    56
    +       {-# NOINLINE M.$trModule #-}    -- See (GPT5) below
    
    56 57
            M.$trModule :: GHC.Unit.Module
    
    57 58
            M.$trModule = Module "p" "M"
    
    58 59
        ("tr" is short for "type representation"; see GHC.Types)
    
    ... ... @@ -63,6 +64,7 @@ The overall plan is this:
    63 64
        Record the Name M.$trModule in the tcg_tr_module field of TcGblEnv
    
    64 65
     
    
    65 66
     2. Generate a binding for every data type declaration T in module M,
    
    67
    +       {-# NOINLINE M.$tcT #-}    -- See (GPT5) below
    
    66 68
            M.$tcT :: GHC.Types.TyCon
    
    67 69
            M.$tcT = TyCon ...fingerprint info...
    
    68 70
                           $trModule
    
    ... ... @@ -96,48 +98,199 @@ The overall plan is this:
    96 98
     
    
    97 99
     There are many wrinkles:
    
    98 100
     
    
    99
    -* The timing of when we produce this bindings is rather important: they must be
    
    100
    -  defined after the rest of the module has been typechecked since we need to be
    
    101
    -  able to lookup Module and TyCon in the type environment and we may be
    
    102
    -  currently compiling GHC.Types (where they are defined).
    
    103
    -
    
    104
    -* GHC.Prim doesn't have any associated object code, so we need to put the
    
    105
    -  representations for types defined in this module elsewhere. We chose this
    
    106
    -  place to be GHC.Types. GHC.Tc.Instance.Typeable.mkPrimTypeableTodos is responsible for
    
    107
    -  injecting the bindings for the GHC.Prim representations when compiling
    
    108
    -  GHC.Types.
    
    109
    -
    
    110
    -* TyCon.tyConRepModOcc is responsible for determining where to find
    
    111
    -  the representation binding for a given type. This is where we handle
    
    112
    -  the special case for GHC.Prim.
    
    113
    -
    
    114
    -* To save space and reduce dependencies, we need use quite low-level
    
    115
    -  representations for TyCon and Module.  See GHC.Types
    
    116
    -  Note [Runtime representation of modules and tycons]
    
    117
    -
    
    118
    -* The KindReps can unfortunately get quite large. Moreover, the simplifier will
    
    119
    -  float out various pieces of them, resulting in numerous top-level bindings.
    
    120
    -  Consequently we mark the KindRep bindings as noinline, ensuring that the
    
    121
    -  float-outs don't make it into the interface file. This is important since
    
    122
    -  there is generally little benefit to inlining KindReps and they would
    
    123
    -  otherwise strongly affect compiler performance.
    
    124
    -
    
    125
    -* In general there are lots of things of kind *, * -> *, and * -> * -> *. To
    
    126
    -  reduce the number of bindings we need to produce, we generate their KindReps
    
    127
    -  once in GHC.Types. These are referred to as "built-in" KindReps below.
    
    128
    -
    
    129
    -* Even though KindReps aren't inlined, this scheme still has more of an effect on
    
    130
    -  compilation time than I'd like. This is especially true in the case of
    
    131
    -  families of type constructors (e.g. tuples and unboxed sums). The problem is
    
    132
    -  particularly bad in the case of sums, since each arity-N tycon brings with it
    
    133
    -  N promoted datacons, each with a KindRep whose size also scales with N.
    
    134
    -  Consequently we currently simply don't allow sums to be Typeable.
    
    135
    -
    
    136
    -  In general we might consider moving some or all of this generation logic back
    
    137
    -  to the solver since the performance hit we take in doing this at
    
    138
    -  type-definition time is non-trivial and Typeable isn't very widely used. This
    
    139
    -  is discussed in #13261.
    
    101
    +  (GPT1) The timing of when we produce this bindings is rather important: they
    
    102
    +         must be defined after the rest of the module has been typechecked
    
    103
    +         since we need to be able to lookup Module and TyCon in the type
    
    104
    +         environment and we may be currently compiling GHC.Types (where they
    
    105
    +         are defined).
    
    106
    +
    
    107
    +  (GPT2) GHC.Prim doesn't have any associated object code, so we need to put
    
    108
    +         the representations for types defined in this module elsewhere. We
    
    109
    +         chose this place to be GHC.Types.
    
    110
    +         GHC.Tc.Instance.Typeable.mkPrimTypeableTodos is responsible for
    
    111
    +         injecting the bindings for the GHC.Prim representations when compiling
    
    112
    +         GHC.Types.
    
    113
    +
    
    114
    +  (GPT3) TyCon.tyConRepModOcc is responsible for determining where to find the
    
    115
    +         representation binding for a given type. This is where we handle the
    
    116
    +         special case for GHC.Prim.
    
    117
    +
    
    118
    +  (GPT4) To save space and reduce dependencies, we need use quite low-level
    
    119
    +         representations for TyCon and Module.  See GHC.Types
    
    120
    +         Note [Runtime representation of modules and tycons]
    
    121
    +
    
    122
    +  (GPT5) The unfoldings can get quite big, so we use NOINLINE to control it.
    
    123
    +         See Note [NOINLINE on generated Typeable bindings].
    
    124
    +
    
    125
    +  (GPT6) In general there are lots of things of kind *, * -> *, and * -> * -> *.
    
    126
    +         To reduce the number of bindings we need to produce, we generate their
    
    127
    +         KindReps once in GHC.Types. These are referred to as "built-in"
    
    128
    +         KindReps below.
    
    129
    +
    
    130
    +  (GPT7) Even though KindReps aren't inlined, this scheme still has more of an
    
    131
    +         effect on compilation time than I'd like. This is especially true in
    
    132
    +         the case of families of type constructors (e.g. tuples and unboxed
    
    133
    +         sums). The problem is particularly bad in the case of sums, since each
    
    134
    +         arity-N tycon brings with it N promoted datacons, each with a KindRep
    
    135
    +         whose size also scales with N. Consequently we currently simply don't
    
    136
    +         allow sums to be Typeable.
    
    137
    +
    
    138
    +         In general we might consider moving some or all of this generation
    
    139
    +         logic back to the solver since the performance hit we take in doing
    
    140
    +         this at type-definition time is non-trivial and Typeable isn't very
    
    141
    +         widely used. This is discussed in #13261.
    
    142
    +-}
    
    143
    +
    
    144
    +{- Note [NOINLINE on generated Typeable bindings]
    
    145
    +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    146
    +
    
    147
    +The short story is that we annotate all the generated Typeable bindings with
    
    148
    +(the equivalent of) a NOINLINE pragma. This avoids an explosion of exported
    
    149
    +top-level exported bindings.
    
    150
    +
    
    151
    +For the long story, consider the following module "M" in a package "pkg":
    
    152
    +
    
    153
    +    module M (Foo(..), Bar(..)) where
    
    154
    +
    
    155
    +    data Bar = MkBar
    
    156
    +    data Foo (k :: Bar) = MkFoo
    
    157
    +
    
    158
    +For this module, the generated module name binding starts out (-ddump-ds-preopt)
    
    159
    +looking like this:
    
    140 160
     
    
    161
    +    M.$trModule :: GHC.Unit.Module
    
    162
    +    M.$trModule = GHC.Types.Module
    
    163
    +                    (GHC.Types.TrNameS "pkg"#)
    
    164
    +                    (GHC.Types.TrNameS "M"#)
    
    165
    +
    
    166
    +but after the simplifier runs (-ddump-simpl), it will look like this:
    
    167
    +
    
    168
    +    M.$trModule  = M.$trModule3 M.$trModule1
    
    169
    +    M.$trModule1 = GHC.Types.TrNameS M.$trModule2
    
    170
    +    M.$trModule2 = "M"#
    
    171
    +    M.$trModule3 = GHC.Types.TrNameS M.$trModule4
    
    172
    +    M.$trModule4 = "pkg"#
    
    173
    +
    
    174
    +While for the data types, there are a lot more bindings, and the explosion of
    
    175
    +them after the simplifier is even greater.
    
    176
    +
    
    177
    +For Bar, the generated TyCon binding starts out looking like:
    
    178
    +
    
    179
    +    M.$tcBar =
    
    180
    +      GHC.Types.TyCon
    
    181
    +        12132242703551041979#Word64
    
    182
    +        4299988877040426036#Word64
    
    183
    +        M.$trModule
    
    184
    +        (GHC.Types.TrNameS "Bar"#)
    
    185
    +        0#
    
    186
    +        GHC.Types.krep$*    -- reuse "built-in" kind rep from GHC.Types
    
    187
    +
    
    188
    +But we will *also* get a TcCon binding for the promoted type 'MkBar
    
    189
    +
    
    190
    +    M.$tc'MkBar =
    
    191
    +      GHC.Types.TyCon
    
    192
    +        10085502217043517326#Word64
    
    193
    +        15241743887701645856#Word64
    
    194
    +        M.$trModule
    
    195
    +        (GHC.Types.TrNameS "'MkBar"#)
    
    196
    +        0#
    
    197
    +        $krep_axs
    
    198
    +
    
    199
    +which needs a locally defined kind representation:
    
    200
    +
    
    201
    +    $krep_axs = GHC.Types.KindRepTyConApp M.$tcBar []
    
    202
    +
    
    203
    +For the data type with the more complex kind, the generated TyCon binding for
    
    204
    +Foo and the promoted 'MkFoo look like:
    
    205
    +
    
    206
    +    M.$tcFoo =
    
    207
    +      GHC.Types.TyCon
    
    208
    +        13551215831514624777#Word64
    
    209
    +        7693314462125512072#Word64
    
    210
    +        M.$trModule
    
    211
    +        (GHC.Types.TrNameS "Foo"#)
    
    212
    +        0#
    
    213
    +        $krep_axr
    
    214
    +
    
    215
    +    $krep_axr = GHC.Types.KindRepFun $krep_axs GHC.Types.krep$*
    
    216
    +
    
    217
    +    M.$tc'MkFoo =
    
    218
    +      GHC.Types.TyCon
    
    219
    +        16689947533794933931#Word64
    
    220
    +        14421717338642533175#Word64
    
    221
    +        M.$trModule
    
    222
    +        (GHC.Types.TrNameS "'MkFoo"#)
    
    223
    +        1#
    
    224
    +        $krep_axt
    
    225
    +
    
    226
    +    $krep_axt = GHC.Types.KindRepTyConApp M.$tcFoo [$krep_axu]
    
    227
    +    $krep_axu = GHC.Types.$WKindRepVar (GHC.Types.I# 0#)
    
    228
    +
    
    229
    +After the simplifier runs and floats everything out, we get a lot of bindings:
    
    230
    +
    
    231
    +M.$tcBar  = ...
    
    232
    +M.$tcBar1 = ...
    
    233
    +M.$tcBar2 = ...
    
    234
    +M.$tcBar3 = ...
    
    235
    +
    
    236
    +M.$tc'MkBar  = ...
    
    237
    +M.$tc'MkBar1 = ...
    
    238
    +M.$tc'MkBar2 = ...
    
    239
    +M.$tc'MkBar3 = ...
    
    240
    +
    
    241
    +M.$tcFoo  = ...
    
    242
    +M.$tcFoo1 = ...
    
    243
    +M.$tcFoo2 = ...
    
    244
    +M.$tcFoo3 = ...
    
    245
    +
    
    246
    +M.$tc'MkFoo  = ...
    
    247
    +M.$tc'MkFoo1 = ...
    
    248
    +M.$tc'MkFoo2 = ...
    
    249
    +M.$tc'MkFoo3 = ...
    
    250
    +
    
    251
    +M.$krep_rxB  = ...
    
    252
    +M.$krep1_rxC = ...
    
    253
    +
    
    254
    +The simplifier has floated everything out. This is good because it means we end
    
    255
    +up with fully static data and no code (which is compact and can be kept in the
    
    256
    +read-only section of object files). On the other hand, there are now a *lot* of
    
    257
    +top level names. Each one is fairly small, so the get chosen to have their
    
    258
    +unfoldings exposed. This means all the top level names must be exported from
    
    259
    +the module because they all get mentioned (transitively) in the unfoldings.
    
    260
    +
    
    261
    +Our original module with two data types and no functions ends up with 23
    
    262
    +exported names, and corresponding unfoldings! The benefit of exposing all these
    
    263
    +unfoldings is minimal: there is generally little benefit to inlining TyCons,
    
    264
    +KindReps, TrNames etc. The Typeable representations get used for comparisons,
    
    265
    +but this does not benefit greatly from inlining.
    
    266
    +
    
    267
    +On the other hand, the cost to the compiler is substantial. This is a lot of
    
    268
    +information to manage and put into the interface files. And if the unfoldings
    
    269
    +are used at call sites, this costs further compile time, for little runtime
    
    270
    +benefit.
    
    271
    +
    
    272
    +Furthermore, there is the number of linker symbols to consider. For example, in
    
    273
    +the ghc-internal package, exposing all the unfoldings results in over 10% more
    
    274
    +dynamic linker symbols being exported from the DSO (.so file). This has a time
    
    275
    +cost at static link time and dynamic link time (program startup), and a space
    
    276
    +cost. On Windows in particular, there is a hard limit of 64k on the number of
    
    277
    +symbols that can be exported from a DLL.
    
    278
    +
    
    279
    +The solution is simple: annotate all the generated Typeable bindings with
    
    280
    +(the equivalent of) a NOINLINE pragma. The simplifier still floats everything
    
    281
    +out to the top level so that we end up with fully static data, but only the
    
    282
    +original generated names get exported (without their unfoldings). For the
    
    283
    +example module M above, that is just the 5 original names, rather than 23. So
    
    284
    +only 5 entries in the interface files, and only 5 linker symbols. In the GHC
    
    285
    +compiler performance test suite this is enough in some tests to shave 10-20%
    
    286
    +off of bytes allocated and peak memory use, and enough to improve the geometric
    
    287
    +mean by several percent.
    
    288
    +
    
    289
    +We use neverInlinePragma, which is technically a {-# INLINE [~] #-} pragma.
    
    290
    +We use it in:
    
    291
    + * mkModIdBindings for the module name binding;
    
    292
    + * todoForTyCons for the TyCon bindings;
    
    293
    + * getKindRep for kind representation bindings.
    
    141 294
     -}
    
    142 295
     
    
    143 296
     -- | Generate the Typeable bindings for a module. This is the only
    
    ... ... @@ -191,6 +344,8 @@ mkModIdBindings
    191 344
            ; mod_nm        <- newGlobalBinder mod (mkVarOccFS (fsLit "$trModule")) loc
    
    192 345
            ; trModuleTyCon <- tcLookupTyCon trModuleTyConName
    
    193 346
            ; let mod_id = mkExportedVanillaId mod_nm (mkTyConApp trModuleTyCon [])
    
    347
    +                      `setInlinePragma` neverInlinePragma
    
    348
    +                   -- See Note [NOINLINE on generated Typeable bindings]
    
    194 349
            ; mod_bind      <- mkVarBind mod_id <$> mkModIdRHS mod
    
    195 350
     
    
    196 351
            ; tcg_env <- tcExtendGlobalValEnv [mod_id] getGblEnv
    
    ... ... @@ -241,6 +396,8 @@ todoForTyCons mod mod_id tycons = do
    241 396
         trTyConTy <- mkTyConTy <$> tcLookupTyCon trTyConTyConName
    
    242 397
         let mk_rep_id :: TyConRepName -> Id
    
    243 398
             mk_rep_id rep_name = mkExportedVanillaId rep_name trTyConTy
    
    399
    +                             `setInlinePragma` neverInlinePragma
    
    400
    +                          -- See Note [NOINLINE on generated Typeable bindings]
    
    244 401
     
    
    245 402
         let typeable_tycons :: [TypeableTyCon]
    
    246 403
             typeable_tycons =
    
    ... ... @@ -552,8 +709,7 @@ getKindRep stuff@(Stuff {..}) in_scope = go
    552 709
     
    
    553 710
             -- We need to construct a new KindRep binding
    
    554 711
           | otherwise
    
    555
    -      = do -- Place a NOINLINE pragma on KindReps since they tend to be quite
    
    556
    -           -- large and bloat interface files.
    
    712
    +      = do -- See Note [NOINLINE on generated Typeable bindings]
    
    557 713
                rep_bndr <- (`setInlinePragma` neverInlinePragma)
    
    558 714
                        <$> newSysLocalId (fsLit "$krep") ManyTy (mkTyConTy kindRepTyCon)
    
    559 715
     
    

  • testsuite/tests/deSugar/should_compile/T16615.stderr
    ... ... @@ -4,7 +4,7 @@ Result size of Desugar (after optimization)
    4 4
       = {terms: 36, types: 13, coercions: 0, joins: 0/0}
    
    5 5
     
    
    6 6
     -- RHS size: {terms: 5, types: 0, coercions: 0, joins: 0/0}
    
    7
    -T16615.$trModule :: GHC.Internal.Types.Module
    
    7
    +T16615.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    8 8
     [LclIdX,
    
    9 9
      Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    10 10
              Value=True, ConLike=True, WorkFree=True, Expandable=True,
    

  • testsuite/tests/deSugar/should_compile/T2431.stderr
    ... ... @@ -29,7 +29,7 @@ $trModule4 :: GHC.Internal.Types.TrName
    29 29
     $trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    30 30
     
    
    31 31
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    32
    -T2431.$trModule :: GHC.Internal.Types.Module
    
    32
    +T2431.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    33 33
     [GblId, Unf=OtherCon []]
    
    34 34
     T2431.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    35 35
     
    
    ... ... @@ -49,7 +49,7 @@ $tc:~:2 :: GHC.Internal.Types.TrName
    49 49
     $tc:~:2 = GHC.Internal.Types.TrNameS $tc:~:1
    
    50 50
     
    
    51 51
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    52
    -T2431.$tc:~: :: GHC.Internal.Types.TyCon
    
    52
    +T2431.$tc:~: [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    53 53
     [GblId, Unf=OtherCon []]
    
    54 54
     T2431.$tc:~:
    
    55 55
       = GHC.Internal.Types.TyCon
    
    ... ... @@ -91,7 +91,7 @@ $tc'Refl2 :: GHC.Internal.Types.TrName
    91 91
     $tc'Refl2 = GHC.Internal.Types.TrNameS $tc'Refl1
    
    92 92
     
    
    93 93
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    94
    -T2431.$tc'Refl :: GHC.Internal.Types.TyCon
    
    94
    +T2431.$tc'Refl [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    95 95
     [GblId, Unf=OtherCon []]
    
    96 96
     T2431.$tc'Refl
    
    97 97
       = GHC.Internal.Types.TyCon
    

  • testsuite/tests/dmdanal/should_compile/T16029.stdout
    1
    -T16029.$trModule4 :: GHC.Internal.Prim.Addr#
    
    2
    -T16029.$trModule3 :: GHC.Internal.Types.TrName
    
    3
    -T16029.$trModule2 :: GHC.Internal.Prim.Addr#
    
    4
    -T16029.$trModule1 :: GHC.Internal.Types.TrName
    
    5
    -T16029.$trModule :: GHC.Internal.Types.Module
    
    1
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    2
    +$trModule2 :: GHC.Internal.Types.TrName
    
    3
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    4
    +$trModule4 :: GHC.Internal.Types.TrName
    
    5
    +T16029.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    6 6
     $krep :: GHC.Internal.Types.KindRep
    
    7
    -T16029.$tcS2 :: GHC.Internal.Prim.Addr#
    
    8
    -T16029.$tcS1 :: GHC.Internal.Types.TrName
    
    9
    -T16029.$tcS :: GHC.Internal.Types.TyCon
    
    7
    +$tcS1 :: GHC.Internal.Prim.Addr#
    
    8
    +$tcS2 :: GHC.Internal.Types.TrName
    
    9
    +T16029.$tcS [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    10 10
     $krep1 :: GHC.Internal.Types.KindRep
    
    11 11
     $krep2 :: GHC.Internal.Types.KindRep
    
    12
    -T16029.$tc'MkS1 [InlPrag=[~]] :: GHC.Internal.Types.KindRep
    
    13
    -T16029.$tc'MkS3 :: GHC.Internal.Prim.Addr#
    
    14
    -T16029.$tc'MkS2 :: GHC.Internal.Types.TrName
    
    15
    -T16029.$tc'MkS :: GHC.Internal.Types.TyCon
    
    16
    -T16029.$tcT2 :: GHC.Internal.Prim.Addr#
    
    17
    -T16029.$tcT1 :: GHC.Internal.Types.TrName
    
    18
    -T16029.$tcT :: GHC.Internal.Types.TyCon
    
    19 12
     $krep3 :: GHC.Internal.Types.KindRep
    
    13
    +$tc'MkS1 :: GHC.Internal.Prim.Addr#
    
    14
    +$tc'MkS2 :: GHC.Internal.Types.TrName
    
    15
    +T16029.$tc'MkS [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    16
    +$tcT1 :: GHC.Internal.Prim.Addr#
    
    17
    +$tcT2 :: GHC.Internal.Types.TrName
    
    18
    +T16029.$tcT [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    20 19
     $krep4 :: GHC.Internal.Types.KindRep
    
    21
    -T16029.$tc'MkT1 [InlPrag=[~]] :: GHC.Internal.Types.KindRep
    
    22
    -T16029.$tc'MkT3 :: GHC.Internal.Prim.Addr#
    
    23
    -T16029.$tc'MkT2 :: GHC.Internal.Types.TrName
    
    24
    -T16029.$tc'MkT :: GHC.Internal.Types.TyCon
    
    20
    +$krep5 :: GHC.Internal.Types.KindRep
    
    21
    +$krep6 :: GHC.Internal.Types.KindRep
    
    22
    +$tc'MkT1 :: GHC.Internal.Prim.Addr#
    
    23
    +$tc'MkT2 :: GHC.Internal.Types.TrName
    
    24
    +T16029.$tc'MkT [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    25 25
       :: GHC.Internal.Prim.Int# -> GHC.Internal.Prim.Int#
    
    26 26
       = \ (ww :: GHC.Internal.Prim.Int#) ->
    
    27 27
     g2 [InlPrag=[2]] :: T -> Int -> Int
    

  • testsuite/tests/numeric/should_compile/T14170.stdout
    ... ... @@ -4,45 +4,29 @@ Result size of Tidy Core
    4 4
       = {terms: 17, types: 6, coercions: 0, joins: 0/0}
    
    5 5
     
    
    6 6
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    7
    -NatVal.$trModule4 :: GHC.Internal.Prim.Addr#
    
    8
    -[GblId,
    
    9
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    10
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    11
    -         Guidance=IF_ARGS [] 20 0}]
    
    12
    -NatVal.$trModule4 = "main"#
    
    7
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    8
    +[GblId, Unf=OtherCon []]
    
    9
    +$trModule1 = "main"#
    
    13 10
     
    
    14 11
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    15
    -NatVal.$trModule3 :: GHC.Internal.Types.TrName
    
    16
    -[GblId,
    
    17
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    18
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    19
    -         Guidance=IF_ARGS [] 10 10}]
    
    20
    -NatVal.$trModule3 = GHC.Internal.Types.TrNameS NatVal.$trModule4
    
    12
    +$trModule2 :: GHC.Internal.Types.TrName
    
    13
    +[GblId, Unf=OtherCon []]
    
    14
    +$trModule2 = GHC.Internal.Types.TrNameS $trModule1
    
    21 15
     
    
    22 16
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    23
    -NatVal.$trModule2 :: GHC.Internal.Prim.Addr#
    
    24
    -[GblId,
    
    25
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    26
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    27
    -         Guidance=IF_ARGS [] 30 0}]
    
    28
    -NatVal.$trModule2 = "NatVal"#
    
    17
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    18
    +[GblId, Unf=OtherCon []]
    
    19
    +$trModule3 = "NatVal"#
    
    29 20
     
    
    30 21
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    31
    -NatVal.$trModule1 :: GHC.Internal.Types.TrName
    
    32
    -[GblId,
    
    33
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    34
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    35
    -         Guidance=IF_ARGS [] 10 10}]
    
    36
    -NatVal.$trModule1 = GHC.Internal.Types.TrNameS NatVal.$trModule2
    
    22
    +$trModule4 :: GHC.Internal.Types.TrName
    
    23
    +[GblId, Unf=OtherCon []]
    
    24
    +$trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    37 25
     
    
    38 26
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    39
    -NatVal.$trModule :: GHC.Internal.Types.Module
    
    40
    -[GblId,
    
    41
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    42
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    43
    -         Guidance=IF_ARGS [] 10 10}]
    
    44
    -NatVal.$trModule
    
    45
    -  = GHC.Internal.Types.Module NatVal.$trModule3 NatVal.$trModule1
    
    27
    +NatVal.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    28
    +[GblId, Unf=OtherCon []]
    
    29
    +NatVal.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    46 30
     
    
    47 31
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    48 32
     foo :: Integer
    

  • testsuite/tests/numeric/should_compile/T14465.stdout
    ... ... @@ -12,44 +12,29 @@ ten :: Natural
    12 12
     ten = GHC.Internal.Bignum.Natural.NS 10##
    
    13 13
     
    
    14 14
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    15
    -M.$trModule4 :: GHC.Internal.Prim.Addr#
    
    16
    -[GblId,
    
    17
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    18
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    19
    -         Guidance=IF_ARGS [] 20 0}]
    
    20
    -M.$trModule4 = "main"#
    
    15
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    16
    +[GblId, Unf=OtherCon []]
    
    17
    +$trModule1 = "main"#
    
    21 18
     
    
    22 19
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    23
    -M.$trModule3 :: GHC.Internal.Types.TrName
    
    24
    -[GblId,
    
    25
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    26
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    27
    -         Guidance=IF_ARGS [] 10 10}]
    
    28
    -M.$trModule3 = GHC.Internal.Types.TrNameS M.$trModule4
    
    20
    +$trModule2 :: GHC.Internal.Types.TrName
    
    21
    +[GblId, Unf=OtherCon []]
    
    22
    +$trModule2 = GHC.Internal.Types.TrNameS $trModule1
    
    29 23
     
    
    30 24
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    31
    -M.$trModule2 :: GHC.Internal.Prim.Addr#
    
    32
    -[GblId,
    
    33
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    34
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    35
    -         Guidance=IF_ARGS [] 20 0}]
    
    36
    -M.$trModule2 = "M"#
    
    25
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    26
    +[GblId, Unf=OtherCon []]
    
    27
    +$trModule3 = "M"#
    
    37 28
     
    
    38 29
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    39
    -M.$trModule1 :: GHC.Internal.Types.TrName
    
    40
    -[GblId,
    
    41
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    42
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    43
    -         Guidance=IF_ARGS [] 10 10}]
    
    44
    -M.$trModule1 = GHC.Internal.Types.TrNameS M.$trModule2
    
    30
    +$trModule4 :: GHC.Internal.Types.TrName
    
    31
    +[GblId, Unf=OtherCon []]
    
    32
    +$trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    45 33
     
    
    46 34
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    47
    -M.$trModule :: GHC.Internal.Types.Module
    
    48
    -[GblId,
    
    49
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    50
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    51
    -         Guidance=IF_ARGS [] 10 10}]
    
    52
    -M.$trModule = GHC.Internal.Types.Module M.$trModule3 M.$trModule1
    
    35
    +M.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    36
    +[GblId, Unf=OtherCon []]
    
    37
    +M.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    53 38
     
    
    54 39
     -- RHS size: {terms: 1, types: 1, coercions: 0, joins: 0/0}
    
    55 40
     minusOne :: Natural
    

  • testsuite/tests/numeric/should_compile/T7116.stdout
    ... ... @@ -4,45 +4,29 @@ Result size of Tidy Core
    4 4
       = {terms: 36, types: 19, coercions: 0, joins: 0/0}
    
    5 5
     
    
    6 6
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    7
    -T7116.$trModule4 :: GHC.Internal.Prim.Addr#
    
    8
    -[GblId,
    
    9
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    10
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    11
    -         Guidance=IF_ARGS [] 20 0}]
    
    12
    -T7116.$trModule4 = "main"#
    
    7
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    8
    +[GblId, Unf=OtherCon []]
    
    9
    +$trModule1 = "main"#
    
    13 10
     
    
    14 11
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    15
    -T7116.$trModule3 :: GHC.Internal.Types.TrName
    
    16
    -[GblId,
    
    17
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    18
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    19
    -         Guidance=IF_ARGS [] 10 10}]
    
    20
    -T7116.$trModule3 = GHC.Internal.Types.TrNameS T7116.$trModule4
    
    12
    +$trModule2 :: GHC.Internal.Types.TrName
    
    13
    +[GblId, Unf=OtherCon []]
    
    14
    +$trModule2 = GHC.Internal.Types.TrNameS $trModule1
    
    21 15
     
    
    22 16
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    23
    -T7116.$trModule2 :: GHC.Internal.Prim.Addr#
    
    24
    -[GblId,
    
    25
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    26
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    27
    -         Guidance=IF_ARGS [] 30 0}]
    
    28
    -T7116.$trModule2 = "T7116"#
    
    17
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    18
    +[GblId, Unf=OtherCon []]
    
    19
    +$trModule3 = "T7116"#
    
    29 20
     
    
    30 21
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    31
    -T7116.$trModule1 :: GHC.Internal.Types.TrName
    
    32
    -[GblId,
    
    33
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    34
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    35
    -         Guidance=IF_ARGS [] 10 10}]
    
    36
    -T7116.$trModule1 = GHC.Internal.Types.TrNameS T7116.$trModule2
    
    22
    +$trModule4 :: GHC.Internal.Types.TrName
    
    23
    +[GblId, Unf=OtherCon []]
    
    24
    +$trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    37 25
     
    
    38 26
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    39
    -T7116.$trModule :: GHC.Internal.Types.Module
    
    40
    -[GblId,
    
    41
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    42
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    43
    -         Guidance=IF_ARGS [] 10 10}]
    
    44
    -T7116.$trModule
    
    45
    -  = GHC.Internal.Types.Module T7116.$trModule3 T7116.$trModule1
    
    27
    +T7116.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    28
    +[GblId, Unf=OtherCon []]
    
    29
    +T7116.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    46 30
     
    
    47 31
     -- RHS size: {terms: 8, types: 3, coercions: 0, joins: 0/0}
    
    48 32
     dr :: Double -> Double
    

  • testsuite/tests/roles/should_compile/Roles1.stderr
    ... ... @@ -20,65 +20,65 @@ DATA CONSTRUCTORS
    20 20
       K2 :: forall a. a -> T2 a
    
    21 21
       K1 :: forall a. a -> T1 a
    
    22 22
     Dependent modules: []
    
    23
    -Dependent packages: [(normal, base-4.21.0.0)]
    
    23
    +Dependent packages: [(normal, base-4.22.0.0)]
    
    24 24
     
    
    25 25
     ==================== Typechecker ====================
    
    26
    -Roles1.$tcT7
    
    26
    +Roles1.$tcT7 [InlPrag=[~]]
    
    27 27
       = GHC.Internal.Types.TyCon
    
    28 28
           178606230775360129#Word64 14564382578551945561#Word64
    
    29 29
           Roles1.$trModule (GHC.Internal.Types.TrNameS "T7"#) 1# $krep
    
    30
    -Roles1.$tc'K7
    
    30
    +Roles1.$tc'K7 [InlPrag=[~]]
    
    31 31
       = GHC.Internal.Types.TyCon
    
    32 32
           15901479081375327280#Word64 4842873210599704617#Word64
    
    33 33
           Roles1.$trModule (GHC.Internal.Types.TrNameS "'K7"#) 3# $krep
    
    34
    -Roles1.$tcT6
    
    34
    +Roles1.$tcT6 [InlPrag=[~]]
    
    35 35
       = GHC.Internal.Types.TyCon
    
    36 36
           7244893995195634045#Word64 6882827069359931041#Word64
    
    37 37
           Roles1.$trModule (GHC.Internal.Types.TrNameS "T6"#) 1# $krep
    
    38
    -Roles1.$tc'K6
    
    38
    +Roles1.$tc'K6 [InlPrag=[~]]
    
    39 39
       = GHC.Internal.Types.TyCon
    
    40 40
           13928703131159360198#Word64 9274401506945696896#Word64
    
    41 41
           Roles1.$trModule (GHC.Internal.Types.TrNameS "'K6"#) 2# $krep
    
    42
    -Roles1.$tcT5
    
    42
    +Roles1.$tcT5 [InlPrag=[~]]
    
    43 43
       = GHC.Internal.Types.TyCon
    
    44 44
           12033401645911719002#Word64 6369139038321702301#Word64
    
    45 45
           Roles1.$trModule (GHC.Internal.Types.TrNameS "T5"#) 0#
    
    46 46
           GHC.Internal.Types.krep$*Arr*
    
    47
    -Roles1.$tc'K5
    
    47
    +Roles1.$tc'K5 [InlPrag=[~]]
    
    48 48
       = GHC.Internal.Types.TyCon
    
    49 49
           5548842497263642061#Word64 18349261927117571882#Word64
    
    50 50
           Roles1.$trModule (GHC.Internal.Types.TrNameS "'K5"#) 1# $krep
    
    51
    -Roles1.$tcT4
    
    51
    +Roles1.$tcT4 [InlPrag=[~]]
    
    52 52
       = GHC.Internal.Types.TyCon
    
    53 53
           15834077582937152787#Word64 17059037094835388922#Word64
    
    54 54
           Roles1.$trModule (GHC.Internal.Types.TrNameS "T4"#) 0# $krep
    
    55
    -Roles1.$tc'K4
    
    55
    +Roles1.$tc'K4 [InlPrag=[~]]
    
    56 56
       = GHC.Internal.Types.TyCon
    
    57 57
           10188453925450404995#Word64 4762093850599364042#Word64
    
    58 58
           Roles1.$trModule (GHC.Internal.Types.TrNameS "'K4"#) 2# $krep
    
    59
    -Roles1.$tcT3
    
    59
    +Roles1.$tcT3 [InlPrag=[~]]
    
    60 60
       = GHC.Internal.Types.TyCon
    
    61 61
           13341737262627465733#Word64 14527452670364737316#Word64
    
    62 62
           Roles1.$trModule (GHC.Internal.Types.TrNameS "T3"#) 1# $krep
    
    63
    -Roles1.$tc'K3
    
    63
    +Roles1.$tc'K3 [InlPrag=[~]]
    
    64 64
       = GHC.Internal.Types.TyCon
    
    65 65
           14534968069054730342#Word64 6860808298964464185#Word64
    
    66 66
           Roles1.$trModule (GHC.Internal.Types.TrNameS "'K3"#) 2# $krep
    
    67
    -Roles1.$tcT2
    
    67
    +Roles1.$tcT2 [InlPrag=[~]]
    
    68 68
       = GHC.Internal.Types.TyCon
    
    69 69
           12900773996789723956#Word64 9313087549503346504#Word64
    
    70 70
           Roles1.$trModule (GHC.Internal.Types.TrNameS "T2"#) 0#
    
    71 71
           GHC.Internal.Types.krep$*Arr*
    
    72
    -Roles1.$tc'K2
    
    72
    +Roles1.$tc'K2 [InlPrag=[~]]
    
    73 73
       = GHC.Internal.Types.TyCon
    
    74 74
           11054915488163123841#Word64 10799789256744079155#Word64
    
    75 75
           Roles1.$trModule (GHC.Internal.Types.TrNameS "'K2"#) 1# $krep
    
    76
    -Roles1.$tcT1
    
    76
    +Roles1.$tcT1 [InlPrag=[~]]
    
    77 77
       = GHC.Internal.Types.TyCon
    
    78 78
           13228660854624297872#Word64 14494320157476678712#Word64
    
    79 79
           Roles1.$trModule (GHC.Internal.Types.TrNameS "T1"#) 0#
    
    80 80
           GHC.Internal.Types.krep$*Arr*
    
    81
    -Roles1.$tc'K1
    
    81
    +Roles1.$tc'K1 [InlPrag=[~]]
    
    82 82
       = GHC.Internal.Types.TyCon
    
    83 83
           1265606750138351672#Word64 7033043930969109074#Word64
    
    84 84
           Roles1.$trModule (GHC.Internal.Types.TrNameS "'K1"#) 1# $krep
    
    ... ... @@ -118,7 +118,7 @@ $krep [InlPrag=[~]]
    118 118
       = GHC.Internal.Types.KindRepTyConApp Roles1.$tcT2 ((:) $krep [])
    
    119 119
     $krep [InlPrag=[~]]
    
    120 120
       = GHC.Internal.Types.KindRepTyConApp Roles1.$tcT1 ((:) $krep [])
    
    121
    -Roles1.$trModule
    
    121
    +Roles1.$trModule [InlPrag=[~]]
    
    122 122
       = GHC.Internal.Types.Module
    
    123 123
           (GHC.Internal.Types.TrNameS "main"#)
    
    124 124
           (GHC.Internal.Types.TrNameS "Roles1"#)
    

  • testsuite/tests/roles/should_compile/Roles13.stderr
    ... ... @@ -37,7 +37,7 @@ $trModule4 :: GHC.Internal.Types.TrName
    37 37
     $trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    38 38
     
    
    39 39
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    40
    -Roles13.$trModule :: GHC.Internal.Types.Module
    
    40
    +Roles13.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    41 41
     [GblId, Unf=OtherCon []]
    
    42 42
     Roles13.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    43 43
     
    
    ... ... @@ -65,7 +65,7 @@ $tcAge2 :: GHC.Internal.Types.TrName
    65 65
     $tcAge2 = GHC.Internal.Types.TrNameS $tcAge1
    
    66 66
     
    
    67 67
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    68
    -Roles13.$tcAge :: GHC.Internal.Types.TyCon
    
    68
    +Roles13.$tcAge [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    69 69
     [GblId, Unf=OtherCon []]
    
    70 70
     Roles13.$tcAge
    
    71 71
       = GHC.Internal.Types.TyCon
    
    ... ... @@ -99,7 +99,7 @@ $tc'MkAge2 :: GHC.Internal.Types.TrName
    99 99
     $tc'MkAge2 = GHC.Internal.Types.TrNameS $tc'MkAge1
    
    100 100
     
    
    101 101
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    102
    -Roles13.$tc'MkAge :: GHC.Internal.Types.TyCon
    
    102
    +Roles13.$tc'MkAge [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    103 103
     [GblId, Unf=OtherCon []]
    
    104 104
     Roles13.$tc'MkAge
    
    105 105
       = GHC.Internal.Types.TyCon
    
    ... ... @@ -121,7 +121,7 @@ $tcWrap2 :: GHC.Internal.Types.TrName
    121 121
     $tcWrap2 = GHC.Internal.Types.TrNameS $tcWrap1
    
    122 122
     
    
    123 123
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    124
    -Roles13.$tcWrap :: GHC.Internal.Types.TyCon
    
    124
    +Roles13.$tcWrap [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    125 125
     [GblId, Unf=OtherCon []]
    
    126 126
     Roles13.$tcWrap
    
    127 127
       = GHC.Internal.Types.TyCon
    
    ... ... @@ -162,7 +162,7 @@ $tc'MkWrap2 :: GHC.Internal.Types.TrName
    162 162
     $tc'MkWrap2 = GHC.Internal.Types.TrNameS $tc'MkWrap1
    
    163 163
     
    
    164 164
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    165
    -Roles13.$tc'MkWrap :: GHC.Internal.Types.TyCon
    
    165
    +Roles13.$tc'MkWrap [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    166 166
     [GblId, Unf=OtherCon []]
    
    167 167
     Roles13.$tc'MkWrap
    
    168 168
       = GHC.Internal.Types.TyCon
    

  • testsuite/tests/roles/should_compile/Roles14.stderr
    ... ... @@ -4,14 +4,14 @@ TYPE CONSTRUCTORS
    4 4
       class C2{1} :: * -> Constraint
    
    5 5
         roles representational
    
    6 6
     Dependent modules: []
    
    7
    -Dependent packages: [(normal, base-4.21.0.0)]
    
    7
    +Dependent packages: [(normal, base-4.22.0.0)]
    
    8 8
     
    
    9 9
     ==================== Typechecker ====================
    
    10
    -Roles12.$tcC2
    
    10
    +Roles12.$tcC2 [InlPrag=[~]]
    
    11 11
       = GHC.Internal.Types.TyCon
    
    12 12
           7996680154108933333#Word64 9454227235464419996#Word64
    
    13 13
           Roles12.$trModule (GHC.Internal.Types.TrNameS "C2"#) 0# $krep
    
    14
    -Roles12.$tc'C:C2
    
    14
    +Roles12.$tc'C:C2 [InlPrag=[~]]
    
    15 15
       = GHC.Internal.Types.TyCon
    
    16 16
           7087988437584478859#Word64 11477953550142401435#Word64
    
    17 17
           Roles12.$trModule (GHC.Internal.Types.TrNameS "'C:C2"#) 1# $krep
    
    ... ... @@ -23,7 +23,7 @@ $krep [InlPrag=[~]] = GHC.Internal.Types.KindRepFun $krep $krep
    23 23
     $krep [InlPrag=[~]]
    
    24 24
       = GHC.Internal.Types.KindRepFun
    
    25 25
           GHC.Internal.Types.krep$* GHC.Internal.Types.krep$Constraint
    
    26
    -Roles12.$trModule
    
    26
    +Roles12.$trModule [InlPrag=[~]]
    
    27 27
       = GHC.Internal.Types.Module
    
    28 28
           (GHC.Internal.Types.TrNameS "main"#)
    
    29 29
           (GHC.Internal.Types.TrNameS "Roles12"#)
    

  • testsuite/tests/roles/should_compile/Roles2.stderr
    ... ... @@ -6,24 +6,24 @@ DATA CONSTRUCTORS
    6 6
       K2 :: forall a. FunPtr a -> T2 a
    
    7 7
       K1 :: forall a. IO a -> T1 a
    
    8 8
     Dependent modules: []
    
    9
    -Dependent packages: [(normal, base-4.21.0.0)]
    
    9
    +Dependent packages: [(normal, base-4.22.0.0)]
    
    10 10
     
    
    11 11
     ==================== Typechecker ====================
    
    12
    -Roles2.$tcT2
    
    12
    +Roles2.$tcT2 [InlPrag=[~]]
    
    13 13
       = GHC.Internal.Types.TyCon
    
    14 14
           9065817229114433861#Word64 13399581642971864140#Word64
    
    15 15
           Roles2.$trModule (GHC.Internal.Types.TrNameS "T2"#) 0#
    
    16 16
           GHC.Internal.Types.krep$*Arr*
    
    17
    -Roles2.$tc'K2
    
    17
    +Roles2.$tc'K2 [InlPrag=[~]]
    
    18 18
       = GHC.Internal.Types.TyCon
    
    19 19
           17395957229042313563#Word64 12263882107019815181#Word64
    
    20 20
           Roles2.$trModule (GHC.Internal.Types.TrNameS "'K2"#) 1# $krep
    
    21
    -Roles2.$tcT1
    
    21
    +Roles2.$tcT1 [InlPrag=[~]]
    
    22 22
       = GHC.Internal.Types.TyCon
    
    23 23
           10310640733256438505#Word64 9162099558816022096#Word64
    
    24 24
           Roles2.$trModule (GHC.Internal.Types.TrNameS "T1"#) 0#
    
    25 25
           GHC.Internal.Types.krep$*Arr*
    
    26
    -Roles2.$tc'K1
    
    26
    +Roles2.$tc'K1 [InlPrag=[~]]
    
    27 27
       = GHC.Internal.Types.TyCon
    
    28 28
           16530009231990968394#Word64 11761390951471299534#Word64
    
    29 29
           Roles2.$trModule (GHC.Internal.Types.TrNameS "'K1"#) 1# $krep
    
    ... ... @@ -40,7 +40,7 @@ $krep [InlPrag=[~]]
    40 40
           GHC.Internal.Types.$tcIO ((:) $krep [])
    
    41 41
     $krep [InlPrag=[~]]
    
    42 42
       = GHC.Internal.Types.KindRepTyConApp Roles2.$tcT1 ((:) $krep [])
    
    43
    -Roles2.$trModule
    
    43
    +Roles2.$trModule [InlPrag=[~]]
    
    44 44
       = GHC.Internal.Types.Module
    
    45 45
           (GHC.Internal.Types.TrNameS "main"#)
    
    46 46
           (GHC.Internal.Types.TrNameS "Roles2"#)
    

  • testsuite/tests/roles/should_compile/Roles3.stderr
    ... ... @@ -16,30 +16,30 @@ TYPE CONSTRUCTORS
    16 16
         roles nominal
    
    17 17
       type synonym Syn2{1} :: * -> *
    
    18 18
     Dependent modules: []
    
    19
    -Dependent packages: [(normal, base-4.21.0.0)]
    
    19
    +Dependent packages: [(normal, base-4.22.0.0)]
    
    20 20
     
    
    21 21
     ==================== Typechecker ====================
    
    22
    -Roles3.$tcC4
    
    22
    +Roles3.$tcC4 [InlPrag=[~]]
    
    23 23
       = GHC.Internal.Types.TyCon
    
    24 24
           6800596812149592130#Word64 15513203864133461281#Word64
    
    25 25
           Roles3.$trModule (GHC.Internal.Types.TrNameS "C4"#) 0# $krep
    
    26
    -Roles3.$tcC3
    
    26
    +Roles3.$tcC3 [InlPrag=[~]]
    
    27 27
       = GHC.Internal.Types.TyCon
    
    28 28
           5076086601454991970#Word64 10299714674904836194#Word64
    
    29 29
           Roles3.$trModule (GHC.Internal.Types.TrNameS "C3"#) 0# $krep
    
    30
    -Roles3.$tcC2
    
    30
    +Roles3.$tcC2 [InlPrag=[~]]
    
    31 31
       = GHC.Internal.Types.TyCon
    
    32 32
           7902873224172523979#Word64 11840994447152209031#Word64
    
    33 33
           Roles3.$trModule (GHC.Internal.Types.TrNameS "C2"#) 0# $krep
    
    34
    -Roles3.$tc'C:C2
    
    34
    +Roles3.$tc'C:C2 [InlPrag=[~]]
    
    35 35
       = GHC.Internal.Types.TyCon
    
    36 36
           11218882737915989529#Word64 9454910899374397367#Word64
    
    37 37
           Roles3.$trModule (GHC.Internal.Types.TrNameS "'C:C2"#) 2# $krep
    
    38
    -Roles3.$tcC1
    
    38
    +Roles3.$tcC1 [InlPrag=[~]]
    
    39 39
       = GHC.Internal.Types.TyCon
    
    40 40
           11013585501375994163#Word64 16371608655219610659#Word64
    
    41 41
           Roles3.$trModule (GHC.Internal.Types.TrNameS "C1"#) 0# $krep
    
    42
    -Roles3.$tc'C:C1
    
    42
    +Roles3.$tc'C:C1 [InlPrag=[~]]
    
    43 43
       = GHC.Internal.Types.TyCon
    
    44 44
           4508088879886988796#Word64 13962145553903222779#Word64
    
    45 45
           Roles3.$trModule (GHC.Internal.Types.TrNameS "'C:C1"#) 1# $krep
    
    ... ... @@ -64,7 +64,7 @@ $krep [InlPrag=[~]]
    64 64
       = GHC.Internal.Types.KindRepFun
    
    65 65
           GHC.Internal.Types.krep$* GHC.Internal.Types.krep$Constraint
    
    66 66
     $krep [InlPrag=[~]] = GHC.Internal.Types.KindRepFun $krep $krep
    
    67
    -Roles3.$trModule
    
    67
    +Roles3.$trModule [InlPrag=[~]]
    
    68 68
       = GHC.Internal.Types.Module
    
    69 69
           (GHC.Internal.Types.TrNameS "main"#)
    
    70 70
           (GHC.Internal.Types.TrNameS "Roles3"#)
    

  • testsuite/tests/roles/should_compile/Roles4.stderr
    ... ... @@ -6,22 +6,22 @@ TYPE CONSTRUCTORS
    6 6
       class C3{1} :: * -> Constraint
    
    7 7
       type synonym Syn1{1} :: * -> *
    
    8 8
     Dependent modules: []
    
    9
    -Dependent packages: [(normal, base-4.21.0.0)]
    
    9
    +Dependent packages: [(normal, base-4.22.0.0)]
    
    10 10
     
    
    11 11
     ==================== Typechecker ====================
    
    12
    -Roles4.$tcC3
    
    12
    +Roles4.$tcC3 [InlPrag=[~]]
    
    13 13
       = GHC.Internal.Types.TyCon
    
    14 14
           7508642517340826358#Word64 16938219270597865136#Word64
    
    15 15
           Roles4.$trModule (GHC.Internal.Types.TrNameS "C3"#) 0# $krep
    
    16
    -Roles4.$tc'C:C3
    
    16
    +Roles4.$tc'C:C3 [InlPrag=[~]]
    
    17 17
       = GHC.Internal.Types.TyCon
    
    18 18
           3133378316178104365#Word64 15809386433947157376#Word64
    
    19 19
           Roles4.$trModule (GHC.Internal.Types.TrNameS "'C:C3"#) 1# $krep
    
    20
    -Roles4.$tcC1
    
    20
    +Roles4.$tcC1 [InlPrag=[~]]
    
    21 21
       = GHC.Internal.Types.TyCon
    
    22 22
           13392243382482428602#Word64 1780037961948725012#Word64
    
    23 23
           Roles4.$trModule (GHC.Internal.Types.TrNameS "C1"#) 0# $krep
    
    24
    -Roles4.$tc'C:C1
    
    24
    +Roles4.$tc'C:C1 [InlPrag=[~]]
    
    25 25
       = GHC.Internal.Types.TyCon
    
    26 26
           3870707671502302648#Word64 10631907186261837450#Word64
    
    27 27
           Roles4.$trModule (GHC.Internal.Types.TrNameS "'C:C1"#) 1# $krep
    
    ... ... @@ -40,7 +40,7 @@ $krep [InlPrag=[~]]
    40 40
     $krep [InlPrag=[~]]
    
    41 41
       = GHC.Internal.Types.KindRepTyConApp
    
    42 42
           GHC.Internal.Types.$tcList ((:) $krep [])
    
    43
    -Roles4.$trModule
    
    43
    +Roles4.$trModule [InlPrag=[~]]
    
    44 44
       = GHC.Internal.Types.Module
    
    45 45
           (GHC.Internal.Types.TrNameS "main"#)
    
    46 46
           (GHC.Internal.Types.TrNameS "Roles4"#)
    

  • testsuite/tests/roles/should_compile/T8958.stderr
    ... ... @@ -18,33 +18,33 @@ CLASS INSTANCES
    18 18
       instance [incoherent] Representational a
    
    19 19
         -- Defined at T8958.hs:11:10
    
    20 20
     Dependent modules: []
    
    21
    -Dependent packages: [(normal, base-4.21.0.0)]
    
    21
    +Dependent packages: [(normal, base-4.22.0.0)]
    
    22 22
     
    
    23 23
     ==================== Typechecker ====================
    
    24
    -T8958.$tcMap
    
    24
    +T8958.$tcMap [InlPrag=[~]]
    
    25 25
       = GHC.Internal.Types.TyCon
    
    26 26
           16542473435673943392#Word64 5374201132143305512#Word64
    
    27 27
           T8958.$trModule (GHC.Internal.Types.TrNameS "Map"#) 0#
    
    28 28
           GHC.Internal.Types.krep$*->*->*
    
    29
    -T8958.$tc'MkMap
    
    29
    +T8958.$tc'MkMap [InlPrag=[~]]
    
    30 30
       = GHC.Internal.Types.TyCon
    
    31 31
           2942839876828444488#Word64 3989137838066763457#Word64
    
    32 32
           T8958.$trModule (GHC.Internal.Types.TrNameS "'MkMap"#) 2# $krep
    
    33
    -T8958.$tcRepresentational
    
    33
    +T8958.$tcRepresentational [InlPrag=[~]]
    
    34 34
       = GHC.Internal.Types.TyCon
    
    35 35
           12809567151893673426#Word64 12159693688248149156#Word64
    
    36 36
           T8958.$trModule (GHC.Internal.Types.TrNameS "Representational"#) 0#
    
    37 37
           $krep
    
    38
    -T8958.$tc'C:Representational
    
    38
    +T8958.$tc'C:Representational [InlPrag=[~]]
    
    39 39
       = GHC.Internal.Types.TyCon
    
    40 40
           2358772282532242424#Word64 5444038897914446879#Word64
    
    41 41
           T8958.$trModule (GHC.Internal.Types.TrNameS "'C:Representational"#)
    
    42 42
           1# $krep
    
    43
    -T8958.$tcNominal
    
    43
    +T8958.$tcNominal [InlPrag=[~]]
    
    44 44
       = GHC.Internal.Types.TyCon
    
    45 45
           12224997609886144634#Word64 9866011944332051160#Word64
    
    46 46
           T8958.$trModule (GHC.Internal.Types.TrNameS "Nominal"#) 0# $krep
    
    47
    -T8958.$tc'C:Nominal
    
    47
    +T8958.$tc'C:Nominal [InlPrag=[~]]
    
    48 48
       = GHC.Internal.Types.TyCon
    
    49 49
           10562260635335201742#Word64 1215478186250709459#Word64
    
    50 50
           T8958.$trModule (GHC.Internal.Types.TrNameS "'C:Nominal"#) 1# $krep
    
    ... ... @@ -83,7 +83,7 @@ $krep [InlPrag=[~]]
    83 83
           T8958.$tcNominal
    
    84 84
           ((:) @GHC.Internal.Types.KindRep
    
    85 85
              $krep [] @GHC.Internal.Types.KindRep)
    
    86
    -T8958.$trModule
    
    86
    +T8958.$trModule [InlPrag=[~]]
    
    87 87
       = GHC.Internal.Types.Module
    
    88 88
           (GHC.Internal.Types.TrNameS "main"#)
    
    89 89
           (GHC.Internal.Types.TrNameS "T8958"#)
    

  • testsuite/tests/simplCore/should_compile/OpaqueNoCastWW.stderr
    ... ... @@ -62,7 +62,7 @@ $trModule4 :: GHC.Internal.Types.TrName
    62 62
     $trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    63 63
     
    
    64 64
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    65
    -OpaqueNoCastWW.$trModule :: GHC.Internal.Types.Module
    
    65
    +OpaqueNoCastWW.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    66 66
     [GblId, Unf=OtherCon []]
    
    67 67
     OpaqueNoCastWW.$trModule
    
    68 68
       = GHC.Internal.Types.Module $trModule2 $trModule4
    
    ... ... @@ -105,7 +105,7 @@ $tcSigned2 :: GHC.Internal.Types.TrName
    105 105
     $tcSigned2 = GHC.Internal.Types.TrNameS $tcSigned1
    
    106 106
     
    
    107 107
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    108
    -OpaqueNoCastWW.$tcSigned :: GHC.Internal.Types.TyCon
    
    108
    +OpaqueNoCastWW.$tcSigned [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    109 109
     [GblId, Unf=OtherCon []]
    
    110 110
     OpaqueNoCastWW.$tcSigned
    
    111 111
       = GHC.Internal.Types.TyCon
    
    ... ... @@ -148,7 +148,7 @@ $tc'S2 :: GHC.Internal.Types.TrName
    148 148
     $tc'S2 = GHC.Internal.Types.TrNameS $tc'S1
    
    149 149
     
    
    150 150
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    151
    -OpaqueNoCastWW.$tc'S :: GHC.Internal.Types.TyCon
    
    151
    +OpaqueNoCastWW.$tc'S [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    152 152
     [GblId, Unf=OtherCon []]
    
    153 153
     OpaqueNoCastWW.$tc'S
    
    154 154
       = GHC.Internal.Types.TyCon
    

  • testsuite/tests/simplCore/should_compile/T3717.stderr
    ... ... @@ -4,45 +4,29 @@ Result size of Tidy Core
    4 4
       = {terms: 36, types: 15, coercions: 0, joins: 0/0}
    
    5 5
     
    
    6 6
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    7
    -T3717.$trModule4 :: GHC.Internal.Prim.Addr#
    
    8
    -[GblId,
    
    9
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    10
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    11
    -         Guidance=IF_ARGS [] 20 0}]
    
    12
    -T3717.$trModule4 = "main"#
    
    7
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    8
    +[GblId, Unf=OtherCon []]
    
    9
    +$trModule1 = "main"#
    
    13 10
     
    
    14 11
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    15
    -T3717.$trModule3 :: GHC.Internal.Types.TrName
    
    16
    -[GblId,
    
    17
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    18
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    19
    -         Guidance=IF_ARGS [] 10 10}]
    
    20
    -T3717.$trModule3 = GHC.Internal.Types.TrNameS T3717.$trModule4
    
    12
    +$trModule2 :: GHC.Internal.Types.TrName
    
    13
    +[GblId, Unf=OtherCon []]
    
    14
    +$trModule2 = GHC.Internal.Types.TrNameS $trModule1
    
    21 15
     
    
    22 16
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    23
    -T3717.$trModule2 :: GHC.Internal.Prim.Addr#
    
    24
    -[GblId,
    
    25
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    26
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    27
    -         Guidance=IF_ARGS [] 30 0}]
    
    28
    -T3717.$trModule2 = "T3717"#
    
    17
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    18
    +[GblId, Unf=OtherCon []]
    
    19
    +$trModule3 = "T3717"#
    
    29 20
     
    
    30 21
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    31
    -T3717.$trModule1 :: GHC.Internal.Types.TrName
    
    32
    -[GblId,
    
    33
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    34
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    35
    -         Guidance=IF_ARGS [] 10 10}]
    
    36
    -T3717.$trModule1 = GHC.Internal.Types.TrNameS T3717.$trModule2
    
    22
    +$trModule4 :: GHC.Internal.Types.TrName
    
    23
    +[GblId, Unf=OtherCon []]
    
    24
    +$trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    37 25
     
    
    38 26
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    39
    -T3717.$trModule :: GHC.Internal.Types.Module
    
    40
    -[GblId,
    
    41
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    42
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    43
    -         Guidance=IF_ARGS [] 10 10}]
    
    44
    -T3717.$trModule
    
    45
    -  = GHC.Internal.Types.Module T3717.$trModule3 T3717.$trModule1
    
    27
    +T3717.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    28
    +[GblId, Unf=OtherCon []]
    
    29
    +T3717.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    46 30
     
    
    47 31
     Rec {
    
    48 32
     -- RHS size: {terms: 10, types: 2, coercions: 0, joins: 0/0}
    

  • testsuite/tests/simplCore/should_compile/T3772.stdout
    ... ... @@ -4,45 +4,29 @@ Result size of Tidy Core
    4 4
       = {terms: 46, types: 19, coercions: 0, joins: 0/0}
    
    5 5
     
    
    6 6
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    7
    -T3772.$trModule4 :: GHC.Internal.Prim.Addr#
    
    8
    -[GblId,
    
    9
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    10
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    11
    -         Guidance=IF_ARGS [] 20 0}]
    
    12
    -T3772.$trModule4 = "main"#
    
    7
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    8
    +[GblId, Unf=OtherCon []]
    
    9
    +$trModule1 = "main"#
    
    13 10
     
    
    14 11
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    15
    -T3772.$trModule3 :: GHC.Internal.Types.TrName
    
    16
    -[GblId,
    
    17
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    18
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    19
    -         Guidance=IF_ARGS [] 10 10}]
    
    20
    -T3772.$trModule3 = GHC.Internal.Types.TrNameS T3772.$trModule4
    
    12
    +$trModule2 :: GHC.Internal.Types.TrName
    
    13
    +[GblId, Unf=OtherCon []]
    
    14
    +$trModule2 = GHC.Internal.Types.TrNameS $trModule1
    
    21 15
     
    
    22 16
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    23
    -T3772.$trModule2 :: GHC.Internal.Prim.Addr#
    
    24
    -[GblId,
    
    25
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    26
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    27
    -         Guidance=IF_ARGS [] 30 0}]
    
    28
    -T3772.$trModule2 = "T3772"#
    
    17
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    18
    +[GblId, Unf=OtherCon []]
    
    19
    +$trModule3 = "T3772"#
    
    29 20
     
    
    30 21
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    31
    -T3772.$trModule1 :: GHC.Internal.Types.TrName
    
    32
    -[GblId,
    
    33
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    34
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    35
    -         Guidance=IF_ARGS [] 10 10}]
    
    36
    -T3772.$trModule1 = GHC.Internal.Types.TrNameS T3772.$trModule2
    
    22
    +$trModule4 :: GHC.Internal.Types.TrName
    
    23
    +[GblId, Unf=OtherCon []]
    
    24
    +$trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    37 25
     
    
    38 26
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    39
    -T3772.$trModule :: GHC.Internal.Types.Module
    
    40
    -[GblId,
    
    41
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    42
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    43
    -         Guidance=IF_ARGS [] 10 10}]
    
    44
    -T3772.$trModule
    
    45
    -  = GHC.Internal.Types.Module T3772.$trModule3 T3772.$trModule1
    
    27
    +T3772.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    28
    +[GblId, Unf=OtherCon []]
    
    29
    +T3772.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    46 30
     
    
    47 31
     Rec {
    
    48 32
     -- RHS size: {terms: 10, types: 2, coercions: 0, joins: 0/0}
    

  • testsuite/tests/simplCore/should_compile/T4908.stderr
    ... ... @@ -4,45 +4,29 @@ Result size of Tidy Core
    4 4
       = {terms: 65, types: 35, coercions: 0, joins: 0/0}
    
    5 5
     
    
    6 6
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    7
    -T4908.$trModule4 :: Addr#
    
    8
    -[GblId,
    
    9
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    10
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    11
    -         Guidance=IF_ARGS [] 20 0}]
    
    12
    -T4908.$trModule4 = "main"#
    
    7
    +$trModule1 :: Addr#
    
    8
    +[GblId, Unf=OtherCon []]
    
    9
    +$trModule1 = "main"#
    
    13 10
     
    
    14 11
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    15
    -T4908.$trModule3 :: TrName
    
    16
    -[GblId,
    
    17
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    18
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    19
    -         Guidance=IF_ARGS [] 10 10}]
    
    20
    -T4908.$trModule3 = GHC.Internal.Types.TrNameS T4908.$trModule4
    
    12
    +$trModule2 :: TrName
    
    13
    +[GblId, Unf=OtherCon []]
    
    14
    +$trModule2 = GHC.Internal.Types.TrNameS $trModule1
    
    21 15
     
    
    22 16
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    23
    -T4908.$trModule2 :: Addr#
    
    24
    -[GblId,
    
    25
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    26
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    27
    -         Guidance=IF_ARGS [] 30 0}]
    
    28
    -T4908.$trModule2 = "T4908"#
    
    17
    +$trModule3 :: Addr#
    
    18
    +[GblId, Unf=OtherCon []]
    
    19
    +$trModule3 = "T4908"#
    
    29 20
     
    
    30 21
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    31
    -T4908.$trModule1 :: TrName
    
    32
    -[GblId,
    
    33
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    34
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    35
    -         Guidance=IF_ARGS [] 10 10}]
    
    36
    -T4908.$trModule1 = GHC.Internal.Types.TrNameS T4908.$trModule2
    
    22
    +$trModule4 :: TrName
    
    23
    +[GblId, Unf=OtherCon []]
    
    24
    +$trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    37 25
     
    
    38 26
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    39
    -T4908.$trModule :: Module
    
    40
    -[GblId,
    
    41
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    42
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    43
    -         Guidance=IF_ARGS [] 10 10}]
    
    44
    -T4908.$trModule
    
    45
    -  = GHC.Internal.Types.Module T4908.$trModule3 T4908.$trModule1
    
    27
    +T4908.$trModule [InlPrag=[~]] :: Module
    
    28
    +[GblId, Unf=OtherCon []]
    
    29
    +T4908.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    46 30
     
    
    47 31
     Rec {
    
    48 32
     -- RHS size: {terms: 19, types: 5, coercions: 0, joins: 0/0}
    

  • testsuite/tests/simplCore/should_compile/T4930.stderr
    ... ... @@ -4,45 +4,29 @@ Result size of Tidy Core
    4 4
       = {terms: 43, types: 16, coercions: 0, joins: 0/0}
    
    5 5
     
    
    6 6
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    7
    -T4930.$trModule4 :: GHC.Internal.Prim.Addr#
    
    8
    -[GblId,
    
    9
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    10
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    11
    -         Guidance=IF_ARGS [] 20 0}]
    
    12
    -T4930.$trModule4 = "main"#
    
    7
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    8
    +[GblId, Unf=OtherCon []]
    
    9
    +$trModule1 = "main"#
    
    13 10
     
    
    14 11
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    15
    -T4930.$trModule3 :: GHC.Internal.Types.TrName
    
    16
    -[GblId,
    
    17
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    18
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    19
    -         Guidance=IF_ARGS [] 10 10}]
    
    20
    -T4930.$trModule3 = GHC.Internal.Types.TrNameS T4930.$trModule4
    
    12
    +$trModule2 :: GHC.Internal.Types.TrName
    
    13
    +[GblId, Unf=OtherCon []]
    
    14
    +$trModule2 = GHC.Internal.Types.TrNameS $trModule1
    
    21 15
     
    
    22 16
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    23
    -T4930.$trModule2 :: GHC.Internal.Prim.Addr#
    
    24
    -[GblId,
    
    25
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    26
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    27
    -         Guidance=IF_ARGS [] 30 0}]
    
    28
    -T4930.$trModule2 = "T4930"#
    
    17
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    18
    +[GblId, Unf=OtherCon []]
    
    19
    +$trModule3 = "T4930"#
    
    29 20
     
    
    30 21
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    31
    -T4930.$trModule1 :: GHC.Internal.Types.TrName
    
    32
    -[GblId,
    
    33
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    34
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    35
    -         Guidance=IF_ARGS [] 10 10}]
    
    36
    -T4930.$trModule1 = GHC.Internal.Types.TrNameS T4930.$trModule2
    
    22
    +$trModule4 :: GHC.Internal.Types.TrName
    
    23
    +[GblId, Unf=OtherCon []]
    
    24
    +$trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    37 25
     
    
    38 26
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    39
    -T4930.$trModule :: GHC.Internal.Types.Module
    
    40
    -[GblId,
    
    41
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    42
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    43
    -         Guidance=IF_ARGS [] 10 10}]
    
    44
    -T4930.$trModule
    
    45
    -  = GHC.Internal.Types.Module T4930.$trModule3 T4930.$trModule1
    
    27
    +T4930.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    28
    +[GblId, Unf=OtherCon []]
    
    29
    +T4930.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    46 30
     
    
    47 31
     Rec {
    
    48 32
     -- RHS size: {terms: 17, types: 3, coercions: 0, joins: 0/0}
    

  • testsuite/tests/simplCore/should_compile/T7360.stderr
    ... ... @@ -63,45 +63,29 @@ fun2
    63 63
            })
    
    64 64
     
    
    65 65
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    66
    -T7360.$trModule4 :: GHC.Internal.Prim.Addr#
    
    67
    -[GblId,
    
    68
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    69
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    70
    -         Guidance=IF_ARGS [] 20 0}]
    
    71
    -T7360.$trModule4 = "main"#
    
    66
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    67
    +[GblId, Unf=OtherCon []]
    
    68
    +$trModule1 = "main"#
    
    72 69
     
    
    73 70
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    74
    -T7360.$trModule3 :: GHC.Internal.Types.TrName
    
    75
    -[GblId,
    
    76
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    77
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    78
    -         Guidance=IF_ARGS [] 10 10}]
    
    79
    -T7360.$trModule3 = GHC.Internal.Types.TrNameS T7360.$trModule4
    
    71
    +$trModule2 :: GHC.Internal.Types.TrName
    
    72
    +[GblId, Unf=OtherCon []]
    
    73
    +$trModule2 = GHC.Internal.Types.TrNameS $trModule1
    
    80 74
     
    
    81 75
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    82
    -T7360.$trModule2 :: GHC.Internal.Prim.Addr#
    
    83
    -[GblId,
    
    84
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    85
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    86
    -         Guidance=IF_ARGS [] 30 0}]
    
    87
    -T7360.$trModule2 = "T7360"#
    
    76
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    77
    +[GblId, Unf=OtherCon []]
    
    78
    +$trModule3 = "T7360"#
    
    88 79
     
    
    89 80
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    90
    -T7360.$trModule1 :: GHC.Internal.Types.TrName
    
    91
    -[GblId,
    
    92
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    93
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    94
    -         Guidance=IF_ARGS [] 10 10}]
    
    95
    -T7360.$trModule1 = GHC.Internal.Types.TrNameS T7360.$trModule2
    
    81
    +$trModule4 :: GHC.Internal.Types.TrName
    
    82
    +[GblId, Unf=OtherCon []]
    
    83
    +$trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    96 84
     
    
    97 85
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    98
    -T7360.$trModule :: GHC.Internal.Types.Module
    
    99
    -[GblId,
    
    100
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    101
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    102
    -         Guidance=IF_ARGS [] 10 10}]
    
    103
    -T7360.$trModule
    
    104
    -  = GHC.Internal.Types.Module T7360.$trModule3 T7360.$trModule1
    
    86
    +T7360.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    87
    +[GblId, Unf=OtherCon []]
    
    88
    +T7360.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    105 89
     
    
    106 90
     -- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0}
    
    107 91
     $krep :: GHC.Internal.Types.KindRep
    
    ... ... @@ -112,140 +96,104 @@ $krep
    112 96
           (GHC.Internal.Types.[] @GHC.Internal.Types.KindRep)
    
    113 97
     
    
    114 98
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    115
    -T7360.$tcFoo2 :: GHC.Internal.Prim.Addr#
    
    116
    -[GblId,
    
    117
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    118
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    119
    -         Guidance=IF_ARGS [] 20 0}]
    
    120
    -T7360.$tcFoo2 = "Foo"#
    
    99
    +$tcFoo1 :: GHC.Internal.Prim.Addr#
    
    100
    +[GblId, Unf=OtherCon []]
    
    101
    +$tcFoo1 = "Foo"#
    
    121 102
     
    
    122 103
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    123
    -T7360.$tcFoo1 :: GHC.Internal.Types.TrName
    
    124
    -[GblId,
    
    125
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    126
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    127
    -         Guidance=IF_ARGS [] 10 10}]
    
    128
    -T7360.$tcFoo1 = GHC.Internal.Types.TrNameS T7360.$tcFoo2
    
    104
    +$tcFoo2 :: GHC.Internal.Types.TrName
    
    105
    +[GblId, Unf=OtherCon []]
    
    106
    +$tcFoo2 = GHC.Internal.Types.TrNameS $tcFoo1
    
    129 107
     
    
    130 108
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    131
    -T7360.$tcFoo :: GHC.Internal.Types.TyCon
    
    132
    -[GblId,
    
    133
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    134
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    135
    -         Guidance=IF_ARGS [] 10 10}]
    
    109
    +T7360.$tcFoo [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    110
    +[GblId, Unf=OtherCon []]
    
    136 111
     T7360.$tcFoo
    
    137 112
       = GHC.Internal.Types.TyCon
    
    138 113
           1581370841583180512#Word64
    
    139 114
           13291578023368289311#Word64
    
    140 115
           T7360.$trModule
    
    141
    -      T7360.$tcFoo1
    
    116
    +      $tcFoo2
    
    142 117
           0#
    
    143 118
           GHC.Internal.Types.krep$*
    
    144 119
     
    
    145 120
     -- RHS size: {terms: 3, types: 1, coercions: 0, joins: 0/0}
    
    146
    -T7360.$tc'Foo4 [InlPrag=[~]] :: GHC.Internal.Types.KindRep
    
    121
    +$krep1 :: GHC.Internal.Types.KindRep
    
    147 122
     [GblId, Unf=OtherCon []]
    
    148
    -T7360.$tc'Foo4
    
    123
    +$krep1
    
    149 124
       = GHC.Internal.Types.KindRepTyConApp
    
    150 125
           T7360.$tcFoo (GHC.Internal.Types.[] @GHC.Internal.Types.KindRep)
    
    151 126
     
    
    152 127
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    153
    -T7360.$tc'Foo6 :: GHC.Internal.Prim.Addr#
    
    154
    -[GblId,
    
    155
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    156
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    157
    -         Guidance=IF_ARGS [] 30 0}]
    
    158
    -T7360.$tc'Foo6 = "'Foo1"#
    
    128
    +$tc'Foo4 :: GHC.Internal.Prim.Addr#
    
    129
    +[GblId, Unf=OtherCon []]
    
    130
    +$tc'Foo4 = "'Foo1"#
    
    159 131
     
    
    160 132
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    161
    -T7360.$tc'Foo5 :: GHC.Internal.Types.TrName
    
    162
    -[GblId,
    
    163
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    164
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    165
    -         Guidance=IF_ARGS [] 10 10}]
    
    166
    -T7360.$tc'Foo5 = GHC.Internal.Types.TrNameS T7360.$tc'Foo6
    
    133
    +$tc'Foo5 :: GHC.Internal.Types.TrName
    
    134
    +[GblId, Unf=OtherCon []]
    
    135
    +$tc'Foo5 = GHC.Internal.Types.TrNameS $tc'Foo4
    
    167 136
     
    
    168 137
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    169
    -T7360.$tc'Foo1 :: GHC.Internal.Types.TyCon
    
    170
    -[GblId,
    
    171
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    172
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    173
    -         Guidance=IF_ARGS [] 10 10}]
    
    138
    +T7360.$tc'Foo1 [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    139
    +[GblId, Unf=OtherCon []]
    
    174 140
     T7360.$tc'Foo1
    
    175 141
       = GHC.Internal.Types.TyCon
    
    176 142
           3986951253261644518#Word64
    
    177 143
           2515097940992351150#Word64
    
    178 144
           T7360.$trModule
    
    179
    -      T7360.$tc'Foo5
    
    145
    +      $tc'Foo5
    
    180 146
           0#
    
    181
    -      T7360.$tc'Foo4
    
    147
    +      $krep1
    
    182 148
     
    
    183 149
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    184
    -T7360.$tc'Foo8 :: GHC.Internal.Prim.Addr#
    
    185
    -[GblId,
    
    186
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    187
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    188
    -         Guidance=IF_ARGS [] 30 0}]
    
    189
    -T7360.$tc'Foo8 = "'Foo2"#
    
    150
    +$tc'Foo6 :: GHC.Internal.Prim.Addr#
    
    151
    +[GblId, Unf=OtherCon []]
    
    152
    +$tc'Foo6 = "'Foo2"#
    
    190 153
     
    
    191 154
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    192
    -T7360.$tc'Foo7 :: GHC.Internal.Types.TrName
    
    193
    -[GblId,
    
    194
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    195
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    196
    -         Guidance=IF_ARGS [] 10 10}]
    
    197
    -T7360.$tc'Foo7 = GHC.Internal.Types.TrNameS T7360.$tc'Foo8
    
    155
    +$tc'Foo7 :: GHC.Internal.Types.TrName
    
    156
    +[GblId, Unf=OtherCon []]
    
    157
    +$tc'Foo7 = GHC.Internal.Types.TrNameS $tc'Foo6
    
    198 158
     
    
    199 159
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    200
    -T7360.$tc'Foo2 :: GHC.Internal.Types.TyCon
    
    201
    -[GblId,
    
    202
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    203
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    204
    -         Guidance=IF_ARGS [] 10 10}]
    
    160
    +T7360.$tc'Foo2 [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    161
    +[GblId, Unf=OtherCon []]
    
    205 162
     T7360.$tc'Foo2
    
    206 163
       = GHC.Internal.Types.TyCon
    
    207 164
           17325079864060690428#Word64
    
    208 165
           2969742457748208427#Word64
    
    209 166
           T7360.$trModule
    
    210
    -      T7360.$tc'Foo7
    
    167
    +      $tc'Foo7
    
    211 168
           0#
    
    212
    -      T7360.$tc'Foo4
    
    169
    +      $krep1
    
    213 170
     
    
    214 171
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    215
    -T7360.$tc'Foo9 [InlPrag=[~]] :: GHC.Internal.Types.KindRep
    
    172
    +$krep2 :: GHC.Internal.Types.KindRep
    
    216 173
     [GblId, Unf=OtherCon []]
    
    217
    -T7360.$tc'Foo9 = GHC.Internal.Types.KindRepFun $krep T7360.$tc'Foo4
    
    174
    +$krep2 = GHC.Internal.Types.KindRepFun $krep $krep1
    
    218 175
     
    
    219 176
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    220
    -T7360.$tc'Foo11 :: GHC.Internal.Prim.Addr#
    
    221
    -[GblId,
    
    222
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    223
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    224
    -         Guidance=IF_ARGS [] 30 0}]
    
    225
    -T7360.$tc'Foo11 = "'Foo3"#
    
    177
    +$tc'Foo8 :: GHC.Internal.Prim.Addr#
    
    178
    +[GblId, Unf=OtherCon []]
    
    179
    +$tc'Foo8 = "'Foo3"#
    
    226 180
     
    
    227 181
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    228
    -T7360.$tc'Foo10 :: GHC.Internal.Types.TrName
    
    229
    -[GblId,
    
    230
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    231
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    232
    -         Guidance=IF_ARGS [] 10 10}]
    
    233
    -T7360.$tc'Foo10 = GHC.Internal.Types.TrNameS T7360.$tc'Foo11
    
    182
    +$tc'Foo9 :: GHC.Internal.Types.TrName
    
    183
    +[GblId, Unf=OtherCon []]
    
    184
    +$tc'Foo9 = GHC.Internal.Types.TrNameS $tc'Foo8
    
    234 185
     
    
    235 186
     -- RHS size: {terms: 7, types: 0, coercions: 0, joins: 0/0}
    
    236
    -T7360.$tc'Foo3 :: GHC.Internal.Types.TyCon
    
    237
    -[GblId,
    
    238
    - Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    239
    -         Value=True, ConLike=True, WorkFree=True, Expandable=True,
    
    240
    -         Guidance=IF_ARGS [] 10 10}]
    
    187
    +T7360.$tc'Foo3 [InlPrag=[~]] :: GHC.Internal.Types.TyCon
    
    188
    +[GblId, Unf=OtherCon []]
    
    241 189
     T7360.$tc'Foo3
    
    242 190
       = GHC.Internal.Types.TyCon
    
    243 191
           3674231676522181654#Word64
    
    244 192
           2694749919371021431#Word64
    
    245 193
           T7360.$trModule
    
    246
    -      T7360.$tc'Foo10
    
    194
    +      $tc'Foo9
    
    247 195
           0#
    
    248
    -      T7360.$tc'Foo9
    
    196
    +      $krep2
    
    249 197
     
    
    250 198
     
    
    251 199
     

  • testsuite/tests/simplCore/should_compile/T8274.stdout
    1 1
     p = T8274.Positives 42# 4.23# 4.23## '4'# 4##
    
    2 2
     n = T8274.Negatives -4# -4.0# -4.0##
    
    3
    -T8274.$trModule4 :: Addr#
    
    4
    -T8274.$trModule4 = "main"#
    
    5
    -T8274.$trModule2 :: Addr#
    
    6
    -T8274.$trModule2 = "T8274"#
    
    3
    +$trModule1 :: Addr#
    
    4
    +$trModule1 = "main"#
    
    5
    +$trModule3 :: Addr#
    
    6
    +$trModule3 = "T8274"#
    
    7 7
     $krep = GHC.Internal.Types.KindRepTyConApp GHC.Internal.Types.$tcWord# (GHC.Internal.Types.[] @GHC.Internal.Types.KindRep)
    
    8 8
     $krep1 = GHC.Internal.Types.KindRepTyConApp GHC.Internal.Types.$tcChar# (GHC.Internal.Types.[] @GHC.Internal.Types.KindRep)
    
    9 9
     $krep2 = GHC.Internal.Types.KindRepTyConApp GHC.Internal.Types.$tcDouble# (GHC.Internal.Types.[] @GHC.Internal.Types.KindRep)
    
    10 10
     $krep3 = GHC.Internal.Types.KindRepTyConApp GHC.Internal.Types.$tcFloat# (GHC.Internal.Types.[] @GHC.Internal.Types.KindRep)
    
    11 11
     $krep4 = GHC.Internal.Types.KindRepTyConApp GHC.Internal.Types.$tcInt# (GHC.Internal.Types.[] @GHC.Internal.Types.KindRep)
    
    12
    -T8274.$tcP2 :: Addr#
    
    13
    -T8274.$tcP2 = "P"#
    
    14
    -T8274.$tcP = GHC.Internal.Types.TyCon 7483823267324216774#Word64 12197132127820124256#Word64 T8274.$trModule T8274.$tcP1 0# GHC.Internal.Types.krep$*
    
    15
    -T8274.$tc'Positives3 :: Addr#
    
    16
    -T8274.$tc'Positives3 = "'Positives"#
    
    17
    -T8274.$tc'Positives = GHC.Internal.Types.TyCon 14886798270706315033#Word64 15735393004803600911#Word64 T8274.$trModule T8274.$tc'Positives2 0# T8274.$tc'Positives1
    
    18
    -T8274.$tcN2 :: Addr#
    
    19
    -T8274.$tcN2 = "N"#
    
    20
    -T8274.$tcN = GHC.Internal.Types.TyCon 17387464673997143412#Word64 16681536026493340311#Word64 T8274.$trModule T8274.$tcN1 0# GHC.Internal.Types.krep$*
    
    21
    -T8274.$tc'Negatives3 :: Addr#
    
    22
    -T8274.$tc'Negatives3 = "'Negatives"#
    
    23
    -T8274.$tc'Negatives = GHC.Internal.Types.TyCon 14330047746189143983#Word64 12207513731214201811#Word64 T8274.$trModule T8274.$tc'Negatives2 0# T8274.$tc'Negatives1
    12
    +$tcP1 :: Addr#
    
    13
    +$tcP1 = "P"#
    
    14
    +T8274.$tcP = GHC.Internal.Types.TyCon 7483823267324216774#Word64 12197132127820124256#Word64 T8274.$trModule $tcP2 0# GHC.Internal.Types.krep$*
    
    15
    +$tc'Positives1 :: Addr#
    
    16
    +$tc'Positives1 = "'Positives"#
    
    17
    +T8274.$tc'Positives = GHC.Internal.Types.TyCon 14886798270706315033#Word64 15735393004803600911#Word64 T8274.$trModule $tc'Positives2 0# $krep10
    
    18
    +$tcN1 :: Addr#
    
    19
    +$tcN1 = "N"#
    
    20
    +T8274.$tcN = GHC.Internal.Types.TyCon 17387464673997143412#Word64 16681536026493340311#Word64 T8274.$trModule $tcN2 0# GHC.Internal.Types.krep$*
    
    21
    +$tc'Negatives1 :: Addr#
    
    22
    +$tc'Negatives1 = "'Negatives"#
    
    23
    +T8274.$tc'Negatives = GHC.Internal.Types.TyCon 14330047746189143983#Word64 12207513731214201811#Word64 T8274.$trModule $tc'Negatives2 0# $krep14

  • testsuite/tests/simplCore/should_compile/T9400.stderr
    ... ... @@ -32,7 +32,7 @@ $trModule4 :: TrName
    32 32
     $trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    33 33
     
    
    34 34
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    35
    -T9400.$trModule :: Module
    
    35
    +T9400.$trModule [InlPrag=[~]] :: Module
    
    36 36
     [GblId, Unf=OtherCon []]
    
    37 37
     T9400.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    38 38
     
    

  • testsuite/tests/simplCore/should_compile/noinline01.stderr
    ... ... @@ -9,25 +9,24 @@ Noinline01.g :: GHC.Internal.Types.Bool
    9 9
     [GblId] =
    
    10 10
         \u [] Noinline01.f GHC.Internal.Types.False;
    
    11 11
     
    
    12
    -Noinline01.$trModule4 :: GHC.Internal.Prim.Addr#
    
    12
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    13 13
     [GblId, Unf=OtherCon []] =
    
    14 14
         "main"#;
    
    15 15
     
    
    16
    -Noinline01.$trModule3 :: GHC.Internal.Types.TrName
    
    16
    +$trModule2 :: GHC.Internal.Types.TrName
    
    17 17
     [GblId, Unf=OtherCon []] =
    
    18
    -    GHC.Internal.Types.TrNameS! [Noinline01.$trModule4];
    
    18
    +    GHC.Internal.Types.TrNameS! [$trModule1];
    
    19 19
     
    
    20
    -Noinline01.$trModule2 :: GHC.Internal.Prim.Addr#
    
    20
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    21 21
     [GblId, Unf=OtherCon []] =
    
    22 22
         "Noinline01"#;
    
    23 23
     
    
    24
    -Noinline01.$trModule1 :: GHC.Internal.Types.TrName
    
    24
    +$trModule4 :: GHC.Internal.Types.TrName
    
    25 25
     [GblId, Unf=OtherCon []] =
    
    26
    -    GHC.Internal.Types.TrNameS! [Noinline01.$trModule2];
    
    26
    +    GHC.Internal.Types.TrNameS! [$trModule3];
    
    27 27
     
    
    28
    -Noinline01.$trModule :: GHC.Internal.Types.Module
    
    28
    +Noinline01.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    29 29
     [GblId, Unf=OtherCon []] =
    
    30
    -    GHC.Internal.Types.Module! [Noinline01.$trModule3
    
    31
    -                                Noinline01.$trModule1];
    
    30
    +    GHC.Internal.Types.Module! [$trModule2 $trModule4];
    
    32 31
     
    
    33 32
     

  • testsuite/tests/simplCore/should_compile/par01.stderr
    ... ... @@ -17,30 +17,29 @@ Par01.depth
    17 17
     end Rec }
    
    18 18
     
    
    19 19
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    20
    -Par01.$trModule4 :: GHC.Internal.Prim.Addr#
    
    20
    +$trModule1 :: GHC.Internal.Prim.Addr#
    
    21 21
     [GblId, Unf=OtherCon []]
    
    22
    -Par01.$trModule4 = "main"#
    
    22
    +$trModule1 = "main"#
    
    23 23
     
    
    24 24
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    25
    -Par01.$trModule3 :: GHC.Internal.Types.TrName
    
    25
    +$trModule2 :: GHC.Internal.Types.TrName
    
    26 26
     [GblId, Unf=OtherCon []]
    
    27
    -Par01.$trModule3 = GHC.Internal.Types.TrNameS Par01.$trModule4
    
    27
    +$trModule2 = GHC.Internal.Types.TrNameS $trModule1
    
    28 28
     
    
    29 29
     -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
    
    30
    -Par01.$trModule2 :: GHC.Internal.Prim.Addr#
    
    30
    +$trModule3 :: GHC.Internal.Prim.Addr#
    
    31 31
     [GblId, Unf=OtherCon []]
    
    32
    -Par01.$trModule2 = "Par01"#
    
    32
    +$trModule3 = "Par01"#
    
    33 33
     
    
    34 34
     -- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
    
    35
    -Par01.$trModule1 :: GHC.Internal.Types.TrName
    
    35
    +$trModule4 :: GHC.Internal.Types.TrName
    
    36 36
     [GblId, Unf=OtherCon []]
    
    37
    -Par01.$trModule1 = GHC.Internal.Types.TrNameS Par01.$trModule2
    
    37
    +$trModule4 = GHC.Internal.Types.TrNameS $trModule3
    
    38 38
     
    
    39 39
     -- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
    
    40
    -Par01.$trModule :: GHC.Internal.Types.Module
    
    40
    +Par01.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    41 41
     [GblId, Unf=OtherCon []]
    
    42
    -Par01.$trModule
    
    43
    -  = GHC.Internal.Types.Module Par01.$trModule3 Par01.$trModule1
    
    42
    +Par01.$trModule = GHC.Internal.Types.Module $trModule2 $trModule4
    
    44 43
     
    
    45 44
     
    
    46 45
     

  • testsuite/tests/th/TH_Roles2.stderr
    ... ... @@ -2,18 +2,18 @@ TYPE CONSTRUCTORS
    2 2
       data type T{2} :: forall k. k -> *
    
    3 3
         roles nominal representational
    
    4 4
     Dependent modules: []
    
    5
    -Dependent packages: [(normal, base-4.21.0.0),
    
    6
    -                     (normal, template-haskell-2.23.0.0)]
    
    5
    +Dependent packages: [(normal, base-4.22.0.0),
    
    6
    +                     (normal, template-haskell-2.24.0.0)]
    
    7 7
     
    
    8 8
     ==================== Typechecker ====================
    
    9
    -TH_Roles2.$tcT
    
    9
    +TH_Roles2.$tcT [InlPrag=[~]]
    
    10 10
       = GHC.Internal.Types.TyCon
    
    11 11
           11651627537942629178#Word64 11503899791410937231#Word64
    
    12 12
           TH_Roles2.$trModule (GHC.Internal.Types.TrNameS "T"#) 1# $krep
    
    13 13
     $krep [InlPrag=[~]] = GHC.Internal.Types.KindRepVar 0
    
    14 14
     $krep [InlPrag=[~]]
    
    15 15
       = GHC.Internal.Types.KindRepFun $krep GHC.Internal.Types.krep$*
    
    16
    -TH_Roles2.$trModule
    
    16
    +TH_Roles2.$trModule [InlPrag=[~]]
    
    17 17
       = GHC.Internal.Types.Module
    
    18 18
           (GHC.Internal.Types.TrNameS "main"#)
    
    19 19
           (GHC.Internal.Types.TrNameS "TH_Roles2"#)
    

  • testsuite/tests/typecheck/should_compile/T13032.stderr
    ... ... @@ -13,7 +13,7 @@ f = \ (@a) (@b) _ [Occ=Dead] _ [Occ=Dead] _ [Occ=Dead] ->
    13 13
           GHC.Internal.Types.True
    
    14 14
     
    
    15 15
     -- RHS size: {terms: 5, types: 0, coercions: 0, joins: 0/0}
    
    16
    -T13032.$trModule :: GHC.Internal.Types.Module
    
    16
    +T13032.$trModule [InlPrag=[~]] :: GHC.Internal.Types.Module
    
    17 17
     [LclIdX,
    
    18 18
      Unf=Unf{Src=<vanilla>, TopLvl=True,
    
    19 19
              Value=True, ConLike=True, WorkFree=True, Expandable=True,
    

  • testsuite/tests/typecheck/should_compile/T18406b.stderr
    ... ... @@ -4,14 +4,14 @@ TYPE SIGNATURES
    4 4
     TYPE CONSTRUCTORS
    
    5 5
       class C{2} :: * -> * -> Constraint
    
    6 6
     Dependent modules: []
    
    7
    -Dependent packages: [(normal, base-4.21.0.0)]
    
    7
    +Dependent packages: [(normal, base-4.22.0.0)]
    
    8 8
     
    
    9 9
     ==================== Typechecker ====================
    
    10
    -Bug.$tcC
    
    10
    +Bug.$tcC [InlPrag=[~]]
    
    11 11
       = GHC.Internal.Types.TyCon
    
    12 12
           12754692886077552850#Word64 18375870125396612007#Word64
    
    13 13
           Bug.$trModule (GHC.Internal.Types.TrNameS "C"#) 0# $krep
    
    14
    -Bug.$tc'C:C
    
    14
    +Bug.$tc'C:C [InlPrag=[~]]
    
    15 15
       = GHC.Internal.Types.TyCon
    
    16 16
           302756782745842909#Word64 14248103394115774781#Word64 Bug.$trModule
    
    17 17
           (GHC.Internal.Types.TrNameS "'C:C"#) 2# $krep
    
    ... ... @@ -31,7 +31,7 @@ $krep [InlPrag=[~]]
    31 31
     $krep [InlPrag=[~]]
    
    32 32
       = GHC.Internal.Types.KindRepFun
    
    33 33
           GHC.Internal.Types.krep$* GHC.Internal.Types.krep$Constraint
    
    34
    -Bug.$trModule
    
    34
    +Bug.$trModule [InlPrag=[~]]
    
    35 35
       = GHC.Internal.Types.Module
    
    36 36
           (GHC.Internal.Types.TrNameS "main"#)
    
    37 37
           (GHC.Internal.Types.TrNameS "Bug"#)
    

  • testsuite/tests/typecheck/should_compile/T18529.stderr
    ... ... @@ -4,14 +4,14 @@ TYPE SIGNATURES
    4 4
     TYPE CONSTRUCTORS
    
    5 5
       class C{2} :: * -> * -> Constraint
    
    6 6
     Dependent modules: []
    
    7
    -Dependent packages: [(normal, base-4.21.0.0)]
    
    7
    +Dependent packages: [(normal, base-4.22.0.0)]
    
    8 8
     
    
    9 9
     ==================== Typechecker ====================
    
    10
    -Bug.$tcC
    
    10
    +Bug.$tcC [InlPrag=[~]]
    
    11 11
       = GHC.Internal.Types.TyCon
    
    12 12
           12754692886077552850#Word64 18375870125396612007#Word64
    
    13 13
           Bug.$trModule (GHC.Internal.Types.TrNameS "C"#) 0# $krep
    
    14
    -Bug.$tc'C:C
    
    14
    +Bug.$tc'C:C [InlPrag=[~]]
    
    15 15
       = GHC.Internal.Types.TyCon
    
    16 16
           302756782745842909#Word64 14248103394115774781#Word64 Bug.$trModule
    
    17 17
           (GHC.Internal.Types.TrNameS "'C:C"#) 2# $krep
    
    ... ... @@ -35,7 +35,7 @@ $krep [InlPrag=[~]]
    35 35
     $krep [InlPrag=[~]]
    
    36 36
       = GHC.Internal.Types.KindRepTyConApp
    
    37 37
           GHC.Internal.Tuple.$tcUnit [] @GHC.Internal.Types.KindRep
    
    38
    -Bug.$trModule
    
    38
    +Bug.$trModule [InlPrag=[~]]
    
    39 39
       = GHC.Internal.Types.Module
    
    40 40
           (GHC.Internal.Types.TrNameS "main"#)
    
    41 41
           (GHC.Internal.Types.TrNameS "Bug"#)