[GHC] #14188: On windows, trace prints out lines without proper line endings

GHC ghc-devs at haskell.org
Mon Sep 25 19:22:08 UTC 2017


#14188: On windows, trace prints out lines without proper line endings
---------------------------------+----------------------------------------
        Reporter:  simonpj       |                Owner:  (none)
            Type:  bug           |               Status:  patch
        Priority:  normal        |            Milestone:  8.4.1
       Component:  Compiler      |              Version:  8.2.1
      Resolution:                |             Keywords:
Operating System:  Windows       |         Architecture:  Unknown/Multiple
 Type of failure:  None/Unknown  |            Test Case:
      Blocked By:                |             Blocking:
 Related Tickets:                |  Differential Rev(s):  Phab:D4018
       Wiki Page:                |
---------------------------------+----------------------------------------

Comment (by Tamar Christina <tamar@…>):

 In [changeset:"2b2595e03d328f8c49afe55f765635c03dc81865/ghc"
 2b2595e0/ghc]:
 {{{
 #!CommitTicketReference repository="ghc"
 revision="2b2595e03d328f8c49afe55f765635c03dc81865"
 Ensure text mode when calling debug functions

 Summary:
 Something seems to be changing stderr into binary mode,
 so when the `traceIO` is called, the C code that ultimately
 calls `vfprintf` is using a binary mode handle.

 This causes newlines not to be encoded properly.

 The patch ensures we're in text mode when writing the debug
 messages (% interleaving as it's not thread safe at all) and restores
 the previous mode when done.

 I'm slightly concerned about the performance implications of writing
 large dumps out in text mode, but I think the current behavior is not
 intended as I cannot see any of the printing code setting the mode of
 the std handles.

 Test Plan: ./validate

 Reviewers: austin, bgamari, erikd, simonmar

 Reviewed By: bgamari

 Subscribers: rwbarton, thomie

 GHC Trac Issues: #14188

 Differential Revision: https://phabricator.haskell.org/D4018
 }}}

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14188#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list