Skip to content

Test "termination" doesn't pass with reversed uniques

It fails with (full trace https://phabricator.haskell.org/P80):

*** Core Lint errors : in result of Tidy Core ***
<no location info>: warning:
    In the expression: ReplaceApply
                         @ k_a18o1Q
                         @ (Apply t1_X18o1T t2_X18o1O)
                         @ n_a18o1O
                         @ (Apply r1_X18o1Q r2_X18o1M)
                         @ r2_X18o1M
                         @ t2_X18o1O
                         @ r1_X18o1Q
                         @ t1_X18o1T
                         @~ (<Apply t1_X18o1T t2_X18o1O>_N
                             :: Apply t1_X18o1T t2_X18o1O ~# Apply t1_X18o1T t2_X18o1O)
                         @~ (<Apply r1_X18o1Q r2_X18o1M>_N
                             :: Apply r1_X18o1Q r2_X18o1M ~# Apply r1_X18o1Q r2_X18o1M)
                         dt_a18nR6
                         dt_a18nR5
    Argument value doesn't match argument type:
    Fun type:
        (Apply r1_X18o1Q t2_X18o1O ~# Apply t1_X18o1T t2_X18o1O,
         Apply r1_X18o1Q r2_X18o1M ~# Apply r1_X18o1Q r2_X18o1M) =>
        Replace k_a18o1Q t1_X18o1T n_a18o1O r1_X18o1Q
        -> Replace k_a18o1Q t2_X18o1O n_a18o1O r2_X18o1M
        -> Replace
             k_a18o1Q
             (Apply r1_X18o1Q t2_X18o1O)
             n_a18o1O
             (Apply r1_X18o1Q r2_X18o1M)
    Arg type: Apply t1_X18o1T t2_X18o1O ~# Apply t1_X18o1T t2_X18o1O
    Arg: CO: <Apply t1_X18o1T t2_X18o1O>_N

Steps to reproduce:

  1. Add line

TEST_HC_OPTS += -dinitial-unique=16777000 -dunique-increment=-1

after line

TEST_HC_OPTS = -fforce-recomp -dcore-lint -dcmm-lint -dno-debug-output -no-user-$(GhcPackageDbFlag) -rtsopts $(EXTRA_HC_OPTS)

in mk/test.mk

  1. make TESTS=termination

I suspect this is the same problem I'm running at https://mail.haskell.org/pipermail/ghc-devs/2016-January/010902.html, since the same change to substTyWith makes the test pass for me.

Trac metadata
Trac field Value
Version 8.1
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler
Test case
Differential revisions
BlockedBy
Related
Blocking
CC goldfire, simonmar, simonpj
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information