[commit: ghc] master: Added support for deprecated POSIX functions on Windows. (e5ecb20)

git at git.haskell.org git at git.haskell.org
Thu Sep 1 20:32:01 UTC 2016


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/e5ecb2010514405ac1b9b1285a8a65c00a5fd4e0/ghc

>---------------------------------------------------------------

commit e5ecb2010514405ac1b9b1285a8a65c00a5fd4e0
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


>---------------------------------------------------------------

e5ecb2010514405ac1b9b1285a8a65c00a5fd4e0
 docs/users_guide/8.0.2-notes.rst         |  10 +++
 libraries/base/System/Posix/Internals.hs |  63 +++++-----------
 rts/Linker.c                             |  13 ++++
 rts/RtsSymbols.c                         | 121 +++++++++++++++++++++++++++++++
 rts/RtsSymbols.h                         |   3 +-
 testsuite/tests/ffi/should_run/all.T     |   6 +-
 testsuite/tests/rts/Makefile             |   4 +
 testsuite/tests/rts/T12497.hs            |  24 ++++++
 testsuite/tests/rts/T12497.stdout        |   2 +
 testsuite/tests/rts/all.T                |   5 ++
 10 files changed, 199 insertions(+), 52 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 e5ecb2010514405ac1b9b1285a8a65c00a5fd4e0


More information about the ghc-commits mailing list