"README.md" did not exist on "sdoc"
PmCheck: Disattach COMPLETE pragma lookup from TyCons
By not attaching COMPLETE pragmas with a particular TyCon and instead assume that every COMPLETE pragma is applicable everywhere, we can drastically simplify the logic that tries to initialise available COMPLETE sets of a variable during the pattern-match checking process, as well as fixing a few bugs. Of course, we have to make sure not to report any of the ill-typed/unrelated COMPLETE sets, which came up in a few regression tests. In doing so, we fix #17207, #18277 and #14422. There was a metric decrease in #18478 by ~20%. Metric Decrease: T18478
Showing
- compiler/GHC/Driver/Types.hs 25 additions, 68 deletionscompiler/GHC/Driver/Types.hs
- compiler/GHC/HsToCore.hs 1 addition, 1 deletioncompiler/GHC/HsToCore.hs
- compiler/GHC/HsToCore/Monad.hs 13 additions, 20 deletionscompiler/GHC/HsToCore/Monad.hs
- compiler/GHC/HsToCore/PmCheck/Oracle.hs 109 additions, 124 deletionscompiler/GHC/HsToCore/PmCheck/Oracle.hs
- compiler/GHC/HsToCore/PmCheck/Types.hs 29 additions, 19 deletionscompiler/GHC/HsToCore/PmCheck/Types.hs
- compiler/GHC/Iface/Load.hs 6 additions, 9 deletionscompiler/GHC/Iface/Load.hs
- compiler/GHC/Iface/Make.hs 7 additions, 5 deletionscompiler/GHC/Iface/Make.hs
- compiler/GHC/Iface/Syntax.hs 6 additions, 6 deletionscompiler/GHC/Iface/Syntax.hs
- compiler/GHC/Iface/Tidy.hs 31 additions, 31 deletionscompiler/GHC/Iface/Tidy.hs
- compiler/GHC/IfaceToCore.hs 22 additions, 12 deletionscompiler/GHC/IfaceToCore.hs
- compiler/GHC/IfaceToCore.hs-boot 6 additions, 6 deletionscompiler/GHC/IfaceToCore.hs-boot
- compiler/GHC/Tc/Gen/Bind.hs 10 additions, 101 deletionscompiler/GHC/Tc/Gen/Bind.hs
- compiler/GHC/Tc/Types.hs 4 additions, 5 deletionscompiler/GHC/Tc/Types.hs
- compiler/GHC/Tc/Utils/Env.hs 2 additions, 2 deletionscompiler/GHC/Tc/Utils/Env.hs
- docs/users_guide/exts/pragmas.rst 0 additions, 23 deletionsdocs/users_guide/exts/pragmas.rst
- testsuite/tests/pmcheck/complete_sigs/T14422.hs 3 additions, 0 deletionstestsuite/tests/pmcheck/complete_sigs/T14422.hs
- testsuite/tests/pmcheck/complete_sigs/T18277.hs 13 additions, 0 deletionstestsuite/tests/pmcheck/complete_sigs/T18277.hs
- testsuite/tests/pmcheck/complete_sigs/all.T 3 additions, 2 deletionstestsuite/tests/pmcheck/complete_sigs/all.T
- testsuite/tests/pmcheck/complete_sigs/completesig04.hs 9 additions, 3 deletionstestsuite/tests/pmcheck/complete_sigs/completesig04.hs
- testsuite/tests/pmcheck/complete_sigs/completesig04.stderr 10 additions, 3 deletionstestsuite/tests/pmcheck/complete_sigs/completesig04.stderr
Loading
Please register or sign in to comment