[GHC] #14291: Tests tend to fail in the ext-interp when testing a tree built with a source distribution

GHC ghc-devs at haskell.org
Wed Sep 27 17:30:41 UTC 2017


#14291: Tests tend to fail in the ext-interp when testing a tree built with a
source distribution
-------------------------------------+-------------------------------------
        Reporter:  bgamari           |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:  8.4.1
       Component:  Compiler          |              Version:  8.2.1
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:  13716
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by bgamari):

 Well, unsurprisingly, the culprit is actually not the fact that the
 compiler was built from a source tarball. Doing the build on the git tree
 gives the same result. I suspect the problem is rather that the `validate`
 build flavour isn't being used since I didn't provide a `build.mk`. Here
 are some relevant settings from the two configurations,

 No `build.mk`:
 {{{
 DYNAMIC_BY_DEFAULT="NO"
 DYNAMIC_GHC_PROGRAMS="YES"
 GhcLibHcOpts="-O2"
 GhcRtsCcOpts="-O2 -fomit-frame-pointer -g"
 GhcRtsHcOpts="-O2 -Wcpp-undef"
 GhcStage1HcOpts=" -Wcpp-undef"
 GhcStage2HcOpts="-O2 -Wcpp-undef"
 SplitObjs="NO"
 SplitSections="YES"
 SRC_HC_OPTS="-H32m -O -Wall"
 SRC_HC_OPTS_STAGE1=" "
 }}}

 Validate:
 {{{
 DYNAMIC_BY_DEFAULT="NO"
 DYNAMIC_GHC_PROGRAMS="YES"
 GhcLibHcOpts="-O -dcore-lint -dno-debug-output"
 GhcRtsCcOpts="-O2 -fomit-frame-pointer -g"
 GhcRtsHcOpts="-O2"
 GhcStage1HcOpts="-O -DDEBUG"
 GhcStage2HcOpts="-O -dcore-lint -dno-debug-output"
 SplitObjs="NO"
 SplitSections="NO"
 SRC_HC_OPTS="-O0 -H64m -Wall"
 SRC_HC_OPTS_STAGE1="-fllvm-fill-undef-with-garbage    -Werror"
 }}}

 These differ as follows,
 {{{#!diff
 --- good        2017-09-27 13:27:52.809897224 -0400
 +++ bad 2017-09-27 13:28:01.425893705 -0400
 @@ -1,11 +1,11 @@
  DYNAMIC_BY_DEFAULT="NO"
  DYNAMIC_GHC_PROGRAMS="YES"
 -GhcLibHcOpts="-O -dcore-lint -dno-debug-output"
 +GhcLibHcOpts="-O2"
  GhcRtsCcOpts="-O2 -fomit-frame-pointer -g"
 -GhcRtsHcOpts="-O2"
 -GhcStage1HcOpts="-O -DDEBUG"
 -GhcStage2HcOpts="-O -dcore-lint -dno-debug-output"
 +GhcRtsHcOpts="-O2 -Wcpp-undef"
 +GhcStage1HcOpts=" -Wcpp-undef"
 +GhcStage2HcOpts="-O2 -Wcpp-undef"
  SplitObjs="NO"
 -SplitSections="NO"
 -SRC_HC_OPTS="-O0 -H64m -Wall"
 -SRC_HC_OPTS_STAGE1="-fllvm-fill-undef-with-garbage    -Werror"
 +SplitSections="YES"
 +SRC_HC_OPTS="-H32m -O -Wall"
 +SRC_HC_OPTS_STAGE1=" "
 }}}

 There are a number of differences here. However, what catches my eye most
 is `SplitSections` since this sort of crash is often due to linker issues.

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


More information about the ghc-tickets mailing list