[GHC] #10600: -fwarn-incomplete-patterns doesn't work with -fno-code

GHC ghc-devs at haskell.org
Tue Oct 6 02:16:13 UTC 2015


#10600: -fwarn-incomplete-patterns doesn't work with -fno-code
-------------------------------------+-------------------------------------
        Reporter:  akio              |                Owner:  ezyang
            Type:  bug               |               Status:  patch
        Priority:  normal            |            Milestone:  8.0.1
       Component:  Compiler          |              Version:  7.10.1
      Resolution:                    |             Keywords:  newcomer
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Incorrect         |  Unknown/Multiple
  warning at compile-time            |            Test Case:  driver/T8101b
      Blocked By:                    |             Blocking:
 Related Tickets:  #8101             |  Differential Rev(s):  Phab:D1278
-------------------------------------+-------------------------------------

Comment (by Edward Z. Yang <ezyang@…>):

 In [changeset:"427f8a15c385de486d479989ecfbb6f82699f405/ghc"
 427f8a15/ghc]:
 {{{
 #!CommitTicketReference repository="ghc"
 revision="427f8a15c385de486d479989ecfbb6f82699f405"
 Deduplicate one-shot/make compile paths.

 Summary:
 We had a duplicate copy of the code for --make and for -c
 which was a pain.  The call graph looked something like this:

     compileOne -> genericHscCompileGetFrontendResult -> genericHscFrontend
                                    hscCompileOneShot ---^

 with genericHscCompileGetFrontendResult and hscCompileOneShot
 duplicating logic for deciding whether or not recompilation
 was needed.

 This patchset fixes it, so now everything goes through this call-chain:

     compileOne (--make entry point)
         Calls hscIncrementCompile, invokes the pipeline to do codegen
         and sets up linkables.
     hscIncrementalCompile (-c entry point)
         Calls hscIncrementalFrontend, and then simplifying,
         desugaring, and writing out the interface.
     hscIncrementalFrontend
         Performs recompilation avoidance, if recompilation needed,
         does parses typechecking.

 I also cleaned up some of the MergeBoot nonsense by introducing
 a FrontendResult type.

 NB: this BREAKS #8101 again, because I can't unconditionally desugar
 due to Haddock barfing on lint, see #10600

 Signed-off-by: Edward Z. Yang <ezyang at cs.stanford.edu>

 Test Plan: validate

 Reviewers: simonpj, bgamari, simonmar, austin

 Subscribers: thomie

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

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


More information about the ghc-tickets mailing list