[GHC] #9963: GHCi panic with --print-libdir flag

GHC ghc-devs at haskell.org
Mon Mar 16 17:39:28 UTC 2015


#9963: GHCi panic with --print-libdir flag
-------------------------------------+-------------------------------------
        Reporter:  jstolarek         |                   Owner:  thomie
            Type:  bug               |                  Status:  patch
        Priority:  high              |               Milestone:  7.10.1
       Component:  Driver            |                 Version:  7.9
      Resolution:                    |                Keywords:
Operating System:  Unknown/Multiple  |            Architecture:
 Type of failure:  GHCi crash        |  Unknown/Multiple
      Blocked By:                    |               Test Case:
 Related Tickets:                    |  driver/T9963
                                     |                Blocking:
                                     |  Differential Revisions:  Phab:D730
-------------------------------------+-------------------------------------

Comment (by Thomas Miedema <thomasmiedema@…>):

 In [changeset:"5166ee94e439375a4e6acb80f88ec6ee65476bbd/ghc"]:
 {{{
 #!CommitTicketReference repository="ghc"
 revision="5166ee94e439375a4e6acb80f88ec6ee65476bbd"
 Dont call unsafeGlobalDynFlags if it is not set

 Parsing of static and mode flags happens before any session is started,
 i.e., before the first call to 'GHC.withGhc'. Therefore, to report
 errors for invalid usage of these two types of flags, we can not call
 any function that needs DynFlags, as there are no DynFlags available yet
 (unsafeGlobalDynFlags is not set either). So we always print "on the
 commandline" as the location, which is true except for Api users, which
 is probably ok.

 When reporting errors for invalid usage of dynamic flags we /can/ make
 use of DynFlags, and we do so explicitly in
 DynFlags.parseDynamicFlagsFull.

 Before, we called unsafeGlobalDynFlags when an invalid (combination of)
 flag(s) was given on the commandline, resulting in panics (#9963). This
 regression was introduced in 1d6124de.

 Also rename showSDocSimple to showSDocUnsafe, to hopefully prevent this
 from happening again.

 Reviewed By: austin

 Differential Revision: https://phabricator.haskell.org/D730

 GHC Trac Issues: #9963
 }}}

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


More information about the ghc-tickets mailing list