Commits on Source (6)
-
71a62400
-
086cc59d
-
These are useful helpers for implementing the internal-NUL code unit check needed to fix #13660.
ef809217 -
0368b069
-
POSIX filepaths may not contain the NUL octet but previously we did not reject such paths. This could be exploited by untrusted input to cause discrepancies between various `FilePath` queries and the opened filename. For instance, `readFile "hello.so\x00.txt"` would open the file `"hello.so"` yet `takeFileExtension` would return `".txt"`. The same argument applies to Windows FilePaths Fixes #13660.
78968ec9 -
Addresses #23398. The demand analyser usually does not unpack class dictionaries: see Note [Do not unbox class dictionaries] in GHC.Core.Opt.DmdAnal. This patch makes an exception for tuple dictionaries and equality dictionaries, for reasons explained in wrinkles (DNB1) and (DNB2) of the above Note. Compile times fall by 0.1% for some reason (max 0.7% on T18698b).
be74f934
Showing
- compiler/GHC/Core/Opt/DmdAnal.hs 101 additions, 63 deletionscompiler/GHC/Core/Opt/DmdAnal.hs
- compiler/GHC/Core/Predicate.hs 15 additions, 6 deletionscompiler/GHC/Core/Predicate.hs
- libraries/base/GHC/Foreign.hs 6 additions, 296 deletionslibraries/base/GHC/Foreign.hs
- libraries/base/GHC/Foreign/Internal.hs 357 additions, 0 deletionslibraries/base/GHC/Foreign/Internal.hs
- libraries/base/System/Posix/Internals.hs 47 additions, 5 deletionslibraries/base/System/Posix/Internals.hs
- libraries/base/base.cabal 1 addition, 0 deletionslibraries/base/base.cabal
- libraries/base/tests/T13660.hs 11 additions, 0 deletionslibraries/base/tests/T13660.hs
- libraries/base/tests/T13660.stdout 0 additions, 0 deletionslibraries/base/tests/T13660.stdout
- libraries/base/tests/all.T 1 addition, 0 deletionslibraries/base/tests/all.T
- testsuite/tests/indexed-types/should_compile/T7837.stderr 1 addition, 0 deletionstestsuite/tests/indexed-types/should_compile/T7837.stderr
- testsuite/tests/stranal/should_compile/T23398.hs 15 additions, 0 deletionstestsuite/tests/stranal/should_compile/T23398.hs
- testsuite/tests/stranal/should_compile/T23398.stderr 109 additions, 0 deletionstestsuite/tests/stranal/should_compile/T23398.stderr
- testsuite/tests/stranal/should_compile/all.T 1 addition, 0 deletionstestsuite/tests/stranal/should_compile/all.T
libraries/base/GHC/Foreign/Internal.hs
0 → 100644
libraries/base/tests/T13660.hs
0 → 100644
libraries/base/tests/T13660.stdout
0 → 100644
File added