Marge Bot pushed to branch master at Glasgow Haskell Compiler / GHC
Commits:
-
e659610c
by Duncan Coutts at 2026-03-09T12:08:35-04:00
-
67df5161
by Duncan Coutts at 2026-03-09T12:08:35-04:00
-
c4ad6167
by Duncan Coutts at 2026-03-09T12:08:35-04:00
28 changed files:
- compiler/GHC/Tc/Instance/Typeable.hs
- testsuite/tests/deSugar/should_compile/T16615.stderr
- testsuite/tests/deSugar/should_compile/T2431.stderr
- testsuite/tests/dmdanal/should_compile/T16029.stdout
- testsuite/tests/numeric/should_compile/T14170.stdout
- testsuite/tests/numeric/should_compile/T14465.stdout
- testsuite/tests/numeric/should_compile/T7116.stdout
- testsuite/tests/roles/should_compile/Roles1.stderr
- testsuite/tests/roles/should_compile/Roles13.stderr
- testsuite/tests/roles/should_compile/Roles14.stderr
- testsuite/tests/roles/should_compile/Roles2.stderr
- testsuite/tests/roles/should_compile/Roles3.stderr
- testsuite/tests/roles/should_compile/Roles4.stderr
- testsuite/tests/roles/should_compile/T8958.stderr
- testsuite/tests/simplCore/should_compile/OpaqueNoCastWW.stderr
- testsuite/tests/simplCore/should_compile/T3717.stderr
- testsuite/tests/simplCore/should_compile/T3772.stdout
- testsuite/tests/simplCore/should_compile/T4908.stderr
- testsuite/tests/simplCore/should_compile/T4930.stderr
- testsuite/tests/simplCore/should_compile/T7360.stderr
- testsuite/tests/simplCore/should_compile/T8274.stdout
- testsuite/tests/simplCore/should_compile/T9400.stderr
- testsuite/tests/simplCore/should_compile/noinline01.stderr
- testsuite/tests/simplCore/should_compile/par01.stderr
- testsuite/tests/th/TH_Roles2.stderr
- testsuite/tests/typecheck/should_compile/T13032.stderr
- testsuite/tests/typecheck/should_compile/T18406b.stderr
- testsuite/tests/typecheck/should_compile/T18529.stderr
Changes:
| ... | ... | @@ -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 |
| ... | ... | @@ -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,
|
| ... | ... | @@ -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
|
| 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
|
| ... | ... | @@ -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
|
| ... | ... | @@ -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
|
| ... | ... | @@ -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
|
| ... | ... | @@ -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"#)
|
| ... | ... | @@ -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
|
| ... | ... | @@ -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"#)
|
| ... | ... | @@ -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"#)
|
| ... | ... | @@ -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"#)
|
| ... | ... | @@ -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"#)
|
| ... | ... | @@ -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"#)
|
| ... | ... | @@ -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
|
| ... | ... | @@ -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}
|
| ... | ... | @@ -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}
|
| ... | ... | @@ -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}
|
| ... | ... | @@ -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}
|
| ... | ... | @@ -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 |
| 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 |
| ... | ... | @@ -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 |
| ... | ... | @@ -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 |
| ... | ... | @@ -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 |
| ... | ... | @@ -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"#)
|
| ... | ... | @@ -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,
|
| ... | ... | @@ -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"#)
|
| ... | ... | @@ -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"#)
|