[commit: ghc] ghc-8.0: Added support for deprecated POSIX functions on Windows. (714779c)
git at git.haskell.org
git at git.haskell.org
Mon Sep 5 21:27:23 UTC 2016
Repository : ssh://git@git.haskell.org/ghc
On branch : ghc-8.0
Link : http://ghc.haskell.org/trac/ghc/changeset/714779c7d175203b95e6442f01a4164bedf52e90/ghc
>---------------------------------------------------------------
commit 714779c7d175203b95e6442f01a4164bedf52e90
Author: Tamar Christina <tamar at zhox.com>
Date: Thu Sep 1 21:30:07 2016 +0100
Added support for deprecated POSIX functions on Windows.
Summary:
With the introduction of 8.0.1 We've stopped supporting in GHCi
the use of POSIX functions under their deprecated names on Windows.
This to be compatible with object and libraries from the most
popular compilers on the platform (Microsoft and Intel compilers).
However this brings a confusing disparity between the compiled and
interpreted behavior since MingW-W64 does support the deprecated names.
Also It seems clear that package writers won't update their packages to
properly support Windows. As such I have added redirects in the RTS
for the deprecated functions as listed on
https://msdn.microsoft.com/en-us/library/ms235384.aspx.
This won't export the functions (as in, they won't be in the symbol table
of compiled code for the RTS.) but we inject them into the symbol table
of the dynamic linker at startup.
Test Plan:
./validate
and
make test TEST="ffi017 ffi021"
Reviewers: thomie, simonmar, RyanGlScott, bgamari, austin, hvr, erikd
Reviewed By: simonmar, bgamari
Subscribers: RyanGlScott, #ghc_windows_task_force
Differential Revision: https://phabricator.haskell.org/D2500
GHC Trac Issues: #12209, #12497, #12496
(cherry picked from commit e5ecb2010514405ac1b9b1285a8a65c00a5fd4e0)
>---------------------------------------------------------------
714779c7d175203b95e6442f01a4164bedf52e90
docs/users_guide/8.0.2-notes.rst | 10 +++
libraries/base/System/Posix/Internals.hs | 63 +++++-----------
rts/Linker.c | 14 +++-
rts/RtsSymbols.c | 121 +++++++++++++++++++++++++++++++
rts/RtsSymbols.h | 3 +-
testsuite/tests/rts/Makefile | 4 +
testsuite/tests/rts/T12497.hs | 24 ++++++
testsuite/tests/rts/T12497.stdout | 2 +
testsuite/tests/rts/all.T | 4 +
9 files changed, 196 insertions(+), 49 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 714779c7d175203b95e6442f01a4164bedf52e90
More information about the ghc-commits
mailing list