summaryrefslogtreecommitdiff
path: root/docs/users_guide/flags.py
diff options
context:
space:
mode:
authorSebastian Graf <sebastian.graf@kit.edu>2020-09-28 17:59:58 +0200
committerMarge Bot <ben+marge-bot@smart-cactus.org>2020-10-01 18:36:47 -0400
commite3655f810b4eba1fb7d81a3227a08dae8b85dfc4 (patch)
tree82322572074b4659b5a265c44f93151aaefc913a /docs/users_guide/flags.py
parent93d5de165a81dfb335bf1646c2e29956f5ab55ea (diff)
downloadhaskell-e3655f810b4eba1fb7d81a3227a08dae8b85dfc4.tar.gz
Don't attach CPR signatures to NOINLINE data structures (#18154)
Because the generated `KindRep`s don't have an unfolding, !3230 did not actually stop to compute, attach and serialise unnecessary CPR signatures for them. As already said in `Note [CPR for data structures]`, that leads to bloated interface files which is ultimately quadratic for Nested CPR. So we don't attach any CPR signature to bindings that * Are not thunks (because thunks are not in WHNF) * Have arity 0 (which means the top-level constructor is not a lambda) If the data structure has an unfolding, we continue to look through it. If not (as is the case for `KindRep`s), we look at the unchanged CPR signature and see `topCprType`, as expected.
Diffstat (limited to 'docs/users_guide/flags.py')
0 files changed, 0 insertions, 0 deletions