Skip to content

Bisection wiki, blocked unhappy with HappyWrap205

Summary

I've been adding to the bisection wiki article so that a GHC newcomer and git weakling like myself can do a bisection, either the scripted way or manually and possibly with both make build or hadrian build.

I'm writing up the bisect experience as I go while trying to find which GHC commit knocked over the uom-plugin. The test case for that would be:

function run_test() {
    tree=$HOME/trees/uom-plugin
    cd $tree 
    # The units test-suite failing to build is the test case.
    # WARNING: First edit uom-plugin/uom-plugin.cabal removing the following lines
    # or setting buildable to True.
    # if impl(ghc > 8.2.2)
    #   buildable: False
    do_it "test-case" cabal new-build uom-plugin:units --enable-tests --with-compiler=$ghc

    # The test has succeeded if the rule fired 
    if [ "x$?" = "x124" ]; then
        log "Commit $rev: failed"
        commit_bad
    else
        log "Commit $rev: passed"
        commit_good
    fi
}

Proposed improvements or changes

I'm stuck on the following generated file error:

# have set BuildFlavour=quick in mk/build.mk
> ./boot
> ./configure
> make clean
> make -j4
...
compiler/stage1/build/Parser.hs:1445:48: error:
    Not in scope: type variable ‘a’
     |
1445 | newtype HappyWrap205 = HappyWrap205 (([Located a],Bool))
     |

Can someone please help unblock me on this?

Environment

  • GHC version used (if appropriate):
> ./configure
...
Configure completed successfully.

   Building GHC version  : 8.4.1
          Git commit id  : f31c40efdc918bc9da8a325327ba5a472bd6ea9e

   Build platform        : x86_64-apple-darwin
   Host platform         : x86_64-apple-darwin
   Target platform       : x86_64-apple-darwin

   Bootstrapping using   : /Users/pdejoux/.ghcup/bin/ghc
      which is version   : 8.4.1

   Using (for bootstrapping) : gcc
   Using clang               : gcc
      which is version       : 10.0.0
   Building a cross compiler : NO
   Unregisterised            : NO
   hs-cpp       : gcc
   hs-cpp-flags : -E -undef -traditional -Wno-invalid-pp-token -Wno-unicode -Wno-trigraphs
   ar           : ar
   ld           : ld
   nm           : nm
   libtool      : libtool
   objdump      :
   ranlib       : ranlib
   windres      :
   dllwrap      :
   genlib       :
   Happy        : /Users/pdejoux/.cabal/bin/happy (1.19.12)
   Alex         : /Users/pdejoux/.cabal/bin/alex (3.2.5)
   Perl         : /usr/bin/perl
   sphinx-build : /Library/Frameworks/Python.framework/Versions/3.6/bin/sphinx-build
   xelatex      : /Library/TeX/texbin/xelatex

   Using LLVM tools
      clang : clang
      llc   :
      opt   :

   HsColour was not found; documentation will not contain source links

   Tools to build Sphinx HTML documentation available: YES
   Tools to build Sphinx PDF documentation available: YES
Edited by Phil de Joux
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information