[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 10 commits: driver: Ensure we actually clear the interactive context before reloading

Marge Bot (@marge-bot) gitlab at gitlab.haskell.org
Thu Dec 7 16:22:39 UTC 2023



Marge Bot pushed to branch wip/marge_bot_batch_merge_job at Glasgow Haskell Compiler / GHC


Commits:
3ced6cb9 by Zubin Duggal at 2023-12-07T11:22:27-05:00
driver: Ensure we actually clear the interactive context before reloading

Previously we called discardIC, but immediately after set the session
back to an old HscEnv that still contained the IC

Partially addresses #24107
Fixes #23405

- - - - -
373dff6b by Zubin Duggal at 2023-12-07T11:22:27-05:00
driver: Ensure we force the lookup of old build artifacts before returning the build plan

This prevents us from retaining all previous build artifacts in memory until a
recompile finishes, instead only retaining the exact artifacts we need.

Fixes #24118

- - - - -
cdc1ef62 by Zubin Duggal at 2023-12-07T11:22:27-05:00
testsuite: add test for #24118 and #24107

MultiLayerModulesDefsGhci was not able to catch the leak because it uses
:l which discards the previous environment.

Using :r catches both of these leaks

- - - - -
01734d67 by Zubin Duggal at 2023-12-07T11:22:27-05:00
compiler: Add some strictness annotations to ImportSpec and related constructors
This prevents us from retaining entire HscEnvs.

Force these ImportSpecs when forcing the GlobalRdrEltX

Adds an NFData instance for Bag

Fixes #24107

- - - - -
9d9b9287 by Zubin Duggal at 2023-12-07T11:22:27-05:00
compiler: Force IfGlobalRdrEnv in NFData instance.

- - - - -
c1af0cb0 by Simon Peyton Jones at 2023-12-07T11:22:28-05:00
Improve duplicate elimination in SpecConstr

This partially fixes #24229.

See the new Note [Pattern duplicate elimination] in SpecConstr

- - - - -
65fcc7b9 by Simon Peyton Jones at 2023-12-07T11:22:28-05:00
Make SpecConstr deal with casts better

This patch does two things, to fix #23209:

* It improves SpecConstr so that it no longer quantifies over
  coercion variables.  See Note [SpecConstr and casts]

* It improves the rule matcher to deal nicely with the case where
  the rule does not quantify over coercion variables, but the the
  template has a cast in it.  See Note [Casts in the template]

- - - - -
e7d9caaf by Zubin Duggal at 2023-12-07T11:22:28-05:00
driver: Don't lose track of nodes when we fail to resolve cycles

The nodes that take part in a cycle should include both hs-boot and hs files,
but when we fail to resolve a cycle, we were only counting the nodes from the
graph without boot files.

Fixes #24196

- - - - -
fca23e8f by Zubin Duggal at 2023-12-07T11:22:29-05:00
testsuite: Skip MultiLayerModulesTH_OneShot on darwin

See #24177

- - - - -
3fe66e5d by Wendao Lee at 2023-12-07T11:22:32-05:00
docs(Data.Char):Add more detailed descriptions for some functions

Related changed function's docs:

-GHC.Unicode.isAlpha
-GHC.Unicode.isPrint
-GHC.Unicode.isAlphaNum

Add more details for what the function will return.

Co-authored-by: Bodigrim <andrew.lelechenko at gmail.com>

- - - - -


30 changed files:

- compiler/GHC/Core/Opt/Simplify/Env.hs
- compiler/GHC/Core/Opt/SpecConstr.hs
- compiler/GHC/Core/Rules.hs
- compiler/GHC/Core/SimpleOpt.hs
- compiler/GHC/Core/Subst.hs
- compiler/GHC/Core/TyCo/Subst.hs
- compiler/GHC/Core/Type.hs
- compiler/GHC/Core/Unify.hs
- compiler/GHC/Data/Bag.hs
- compiler/GHC/Driver/Make.hs
- compiler/GHC/Tc/Utils/TcType.hs
- compiler/GHC/Types/Name/Reader.hs
- compiler/GHC/Unit/Module/ModIface.hs
- libraries/base/src/GHC/Unicode.hs
- + testsuite/tests/driver/T24196/T24196.stderr
- + testsuite/tests/driver/T24196/T24196A.hs
- + testsuite/tests/driver/T24196/T24196A.hs-boot
- + testsuite/tests/driver/T24196/T24196B.hs
- + testsuite/tests/driver/T24196/all.T
- + testsuite/tests/ghci/T23405/T23405.hs
- + testsuite/tests/ghci/T23405/T23405.script
- + testsuite/tests/ghci/T23405/all.T
- + testsuite/tests/perf/compiler/MultiLayerModulesDefsGhciReload.script
- testsuite/tests/perf/compiler/all.T
- + testsuite/tests/simplCore/should_compile/T23209.hs
- + testsuite/tests/simplCore/should_compile/T23209_Aux.hs
- + testsuite/tests/simplCore/should_compile/T24229a.hs
- + testsuite/tests/simplCore/should_compile/T24229a.stderr
- + testsuite/tests/simplCore/should_compile/T24229b.hs
- + testsuite/tests/simplCore/should_compile/T24229b.stderr


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/9af3df67346ad5e908a6104ef944b4bdaba4882d...3fe66e5dc8000ab388619bbec77a50aa34215d6e

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/9af3df67346ad5e908a6104ef944b4bdaba4882d...3fe66e5dc8000ab388619bbec77a50aa34215d6e
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20231207/7f227396/attachment.html>


More information about the ghc-commits mailing list