Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Effectfully/inline fix #6842

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Merge branch 'effectfully/optimization/make-Z-inlinable' into effectf…

06994f4
Select commit
Loading
Failed to load commit list.
Open

Effectfully/inline fix #6842

Merge branch 'effectfully/optimization/make-Z-inlinable' into effectf…
06994f4
Select commit
Loading
Failed to load commit list.
IOG Hydra / ci/hydra-build:x86_64-linux.ghc98:checks:plutus-core:test:plutus-ir-test failed Feb 13, 2025 in 4s

Build failed

1 failed steps

Details

Failed Steps

Step 1

Derivation

/nix/store/rvs964587ivvsrny2jpy8vrghmxch38b-plutus-core-test-plutus-ir-test-1.40.0.0-check.drv

Log

Running phase: unpackPhase
unpacking source archive /nix/store/qaw4213m18cfr4akdmywl73hrwbw3mmg-source-plutus-core-test-plutus-ir-test-root
source root is source-plutus-core-test-plutus-ir-test-root
Running phase: patchPhase
Running phase: buildPhase
/nix/store/a63msxy07illacpghz1hhhysx1dngd3l-plutus-core-test-plutus-ir-test-1.40.0.0/bin:
patching script interpreter paths in /build/tmp.pMI2qvQbUM/bin
plutus-ir/test/Driver.hs
  PlutusCore.Generators.QuickCheck
    BuiltinsTests
      genData:                                                                        OK (0.93s)
        +++ OK, passed 800 tests.
    SubstitutionTests
      unify:                                                                          OK (0.40s)
        +++ OK, passed 500 tests; 3315 discarded.
        
        sizes (500 in total):
        80.0% 1
        16.4% 0
         3.0% 2
         0.6% 3
      unifyRename:                                                                    OK
        +++ OK, passed 100 tests.
      substType:                                                                      OK (0.32s)
        +++ OK, passed 1000 tests.
    TypesTests
      genKindCorrect:                                                                 OK (0.04s)
        +++ OK, passed 1000 tests.
      shrinkTypeSound:                                                                OK (0.28s)
        +++ OK, passed 500 tests.
      shrinkTypeSmallerKind:                                                          OK (0.18s)
        +++ OK, passed 3000 tests.
      shrinkKindSmaller:                                                              OK (0.05s)
        +++ OK, passed 30000 tests.
      fixKind:                                                                        OK (0.20s)
        +++ OK, passed 10000 tests.
      normalizedTypeIsNormal:                                                         OK (0.04s)
        +++ OK, passed 1000 tests.
  PlutusIR
    Analysis.RetainedSize.Tests
      RetainedSize
        typeLet:                                                                      OK
        termLet:                                                                      OK
        strictLet:                                                                    OK
        nonstrictLet:                                                                 OK
        datatypeLiveType:                                                             OK
        datatypeLiveConstr:                                                           OK
        datatypeLiveDestr:                                                            OK
        datatypeDead:                                                                 OK
        singleBinding:                                                                OK
        builtinBinding:                                                               OK
        etaBuiltinBinding:                                                            OK
        etaBuiltinBindingUsed:                                                        OK
        nestedBindings:                                                               OK
        nestedBindingsIndirect:                                                       OK
        recBindingSimple:                                                             OK
        recBindingComplex:                                                            OK
    Check.Uniques.Tests
      shadowed:                                                                       OK
      multiplyDefined:                                                                OK
      shadowedInLet:                                                                  OK
    Compiler
      Datatype.Tests
        Datatype
          maybe:                                                                      OK (0.02s)
          listMatch:                                                                  OK (0.03s)
          idleAll:                                                                    OK
          some:                                                                       OK
          listMatchEval:                                                              OK (0.05s)
          dataEscape:                                                                 OK (0.01s)
          scott
            maybe:                                                                    OK (0.02s)
            listMatch:                                                                OK (0.05s)
      Error.Tests
        Error
          mutuallyRecursiveTypes:                                                     OK (0.01s)
          recursiveTypeBind:                                                          OK
      Let.Tests
        Let
          letInLet:                                                                   OK
          letDep:                                                                     OK
        lets:                                                                         IGNORED
      Recursion.Tests
        Recursion
          factorial:                                                                  OK (0.04s)
          even3:                                                                      OK (0.15s)
          even3Eval:                                                                  OK (0.13s)
          stupidZero:                                                                 OK (0.05s)
          mutuallyRecursiveValues:                                                    OK (0.11s)
          errorBinding:                                                               OK
    Contexts.Tests
      Applying extractTyArgs to an
        empty AppContext evaluates to an empty list of ty args:                       OK
        AppContext without type applications evaluates to Nothing:                    OK
        AppContext with a mix of term and type applications evaluates to Nothing:     OK
        AppContext with type applications only evaluates to Just (list of ty vars):   OK
    Core.Tests
      prettyprinting
        basic:                                                                        OK
        maybe:                                                                        OK
      prettyprintingReadable
        basic:                                                                        OK
        maybe:                                                                        OK
        letInLet:                                                                     OK
        letDep:                                                                       OK
        listMatch:                                                                    OK (0.01s)
        idleAll:                                                                      OK
        some:                                                                         OK
        even3:                                                                        OK
        stupidZero:                                                                   OK
        mutuallyRecursiveValues:                                                      OK
        errorBinding:                                                                 OK
        some:                                                                         OK
        stupidZero:                                                                   OK
        recursiveTypeBind:                                                            OK
      serialization
        serializeBasic:                                                               OK
        serializeMaybePirTerm:                                                        OK
        serializeEvenOdd:                                                             OK (0.01s)
        serializeListMatch:                                                           OK (0.02s)
    Generators.QuickCheck.Tests
      genTypeCorrect:                                                                 OK (0.98s)
        +++ OK, passed 200 tests.
      genWellTypedFullyApplied:                                                       OK (0.97s)
        +++ OK, passed 50 tests.
      shrinkTermSound:                                                                OK
        +++ OK, passed 1 test.
      findInstantiation:                                                              OK (0.16s)
        +++ OK, passed 1000 tests.
      stats leaves:                                                                   OK
        +++ OK, passed 10 tests.
        
        leaves (8 in total):
        50% builtin
        25% error
        25% x
      stats numShrink:                                                                OK
        +++ OK, passed 1 test.
        
        distribution | duplicates (1 in total):
        100%          | 0%
      inhabited:                                                                      OK (0.21s)
        +++ OK, passed 50 tests.
      noTermShrinkLoops:                                                              OK
        +++ OK, passed 1 test.
      noStructuralErrors:                                                             OK (3.75s)
        +++ OK, passed 99 tests.
      yesStructuralErrors:                                                            OK
        +++ OK, failed as expected. (after 1 test):
        Exception:
          An error has occurred:
          Attempted to apply a non-function.
          Caused by: True
    Parser.Tests
      parsing
        parser round-trip:                                                            OK (0.38s)
            ✓ propRoundTrip passed 99 tests.
        parser ignores whitespace:                                                    OK (0.21s)
            ✓ propIgnores whitespace passed 50 tests.
        parser ignores comments:                                                      OK (0.53s)
            ✓ propIgnores comments passed 30 tests.
        parser captures ending positions correctly:                                   OK (0.42s)
            ✓ propTermSrcSpan passed 99 tests.
    Purity.Tests
      Purity
        letFun:                                                                       OK
        builtinAppUnsaturated:                                                        OK
        builtinAppSaturated:                                                          OK
        pureLet:                                                                      OK
        nestedLets1:                                                                  OK
        evalOrderLazy:                                                                OK
    Scoping.Tests
      names
        beta-reduction does not break scoping and global uniqueness:                  OK (0.55s)
            ✓ test_scopingGood passed 200 tests.
        case-of-known-constructor does not break scoping and global uniqueness:       OK (0.53s)
            ✓ test_scopingGood passed 200 tests.
        commuteFnWithConst does not break scoping and global uniqueness:              OK (0.53s)
            ✓ test_scopingGood passed 200 tests.
        dead code elimination does not break scoping and global uniqueness:           OK (0.59s)
            ✓ test_scopingGood passed 200 tests.
        constant folding does not break scoping and global uniqueness:                OK (0.56s)
            ✓ test_scopingGood passed 200 tests.
        inlining breaks scoping or global uniqueness:                                 OK (0.07s)
        match-against-known-constructor does not break scoping and global uniqueness: OK (0.56s)
            ✓ test_scopingGood passed 200 tests.
        floating bindings inwards does not break scoping and global uniqueness:       OK (0.58s)
            ✓ test_scopingGood passed 200 tests.
        merging lets does not break scoping and global uniqueness:                    OK (0.58s)
            ✓ test_scopingGood passed 200 tests.
        compilation of non-strict bindings breaks scoping or global uniqueness:       OK (0.04s)
        match-against-known-constructor does not break scoping and global uniqueness: OK (0.53s)
            ✓ test_scopingGood passed 200 tests.
        renaming does not break scoping and global uniqueness:                        OK (0.52s)
            ✓ test_scopingGood passed 200 tests.
        bad renaming
          wrong renaming breaks scoping or global uniqueness:                         OK
          no renaming breaks scoping or global uniqueness:                            OK
          renaming with no marking breaks scoping or global uniqueness:               OK
        thunking recursions breaks scoping or global uniqueness:                      OK (0.07s)
        unwrap-wrap cancelling does not break scoping and global uniqueness:          OK (0.40s)
            ✓ test_scopingGood passed 200 tests.
    Transform
      Beta.Tests
        Beta
          lamapp:                                                                     OK (0.01s)
          lamapp2:                                                                    OK (0.02s)
          absapp:                                                                     OK (0.01s)
          multiapp:                                                                   OK (0.03s)
          multilet:                                                                   OK (0.01s)
        beta:                                                                         OK (1.11s)
          +++ OK, passed 99 tests.
      CaseOfCase.Tests
        CaseOfCase
          basic:                                                                      OK (0.01s)
          builtinBool:                                                                OK (0.01s)
          largeExpr:                                                                  OK (0.02s)
          exponential:                                                                OK (0.02s)
          twoTyArgs:                                                                  OK (0.03s)
        caseOfCase:                                                                   OK (1.28s)
          +++ OK, passed 99 tests.
      CaseReduce.Tests
        caseReduce:                                                                   OK (0.87s)
          +++ OK, passed 99 tests.
      DeadCode.Tests
        DeadCode
          typeLet:                                                                    OK (0.01s)
          termLet:                                                                    OK (0.03s)
          strictLet:                                                                  OK (0.02s)
          nonstrictLet:                                                               OK (0.02s)
          datatypeLiveType:                                                           OK (0.02s)
          datatypeLiveConstr:                                                         OK (0.03s)
          datatypeLiveDestr:                                                          OK (0.02s)
          datatypeDead:                                                               OK
          singleBinding:                                                              OK (0.02s)
          builtinBinding:                                                             OK (0.03s)
          etaBuiltinBinding:                                                          OK (0.02s)
          nestedBindings:                                                             OK (0.02s)
          nestedBindingsIndirect:                                                     OK (0.02s)
          recBindingSimple:                                                           OK (0.02s)
          recBindingComplex:                                                          OK (0.01s)
          pruneDatatype:                                                              OK (0.02s)
        deadCode:                                                                     IGNORED
      EvaluateBuiltins.Tests
        EvaluateBuiltins
          addInteger:                                                                 OK (0.02s)
          ifThenElse:                                                                 OK (0.01s)
          traceConservative:                                                          OK (0.02s)
          failingBuiltin:                                                             OK (0.02s)
          nonConstantArg:                                                             OK (0.01s)
          overApplication:                                                            OK (0.01s)
          underApplication:                                                           OK
          uncompressBlsConservative:                                                  OK
          traceNonConservative:                                                       OK
          uncompressBlsNonConservative:                                               OK (0.01s)
          uncompressAndEqualBlsNonConservative:                                       OK
        evaluateBuiltins:                                                             OK (0.93s)
          +++ OK, passed 99 tests.
      Inline.Tests
        Inline
          var:                                                                        OK (0.02s)
          builtin:                                                                    OK (0.01s)
          callsite-non-trivial-body:                                                  OK (0.02s)
          constant:                                                                   OK
          transitive:                                                                 OK (0.02s)
          tyvar:                                                                      OK (0.01s)
          single:                                                                     OK (0.04s)
          immediateVar:                                                               OK (0.01s)
          immediateApp:                                                               OK (0.02s)
          firstEffectfulTerm1:                                                        OK (0.01s)
          firstEffectfulTerm2:                                                        OK (0.01s)
          letFunConstInt:                                                             OK (0.01s)
          letFunConstBool:                                                            OK (0.03s)
          letFunConstMulti:                                                           OK (0.01s)
          letFunInFun:                                                                OK (0.02s)
          letFunInFunMulti:                                                           OK (0.02s)
          letTypeAppMulti:                                                            OK (0.02s)
          letTypeApp:                                                                 OK (0.02s)
          letTypeApp2:                                                                OK (0.02s)
          letTypeAppMultiSat:                                                         OK (0.02s)
          letTypeAppMultiNotSat:                                                      OK (0.02s)
          letApp:                                                                     OK (0.03s)
          letAppMultiNotAcceptable:                                                   OK (0.03s)
          letOverApp:                                                                 OK (0.02s)
          letOverAppMulti:                                                            OK (0.02s)
          letOverAppType:                                                             OK (0.03s)
          letNonPure:                                                                 OK (0.02s)
          letNonPureMulti:                                                            OK (0.02s)
          letNonPureMultiStrict:                                                      OK (0.03s)
          multilet:                                                                   OK (0.01s)
          rhs-modified:                                                               OK (0.02s)
          partiallyApp:                                                               OK (0.02s)
          effectfulBuiltinArg:                                                        OK (0.01s)
          nameCapture:                                                                OK (0.01s)
          inlineConstantsOn:                                                          OK (0.02s)
          inlineConstantsOff:                                                         OK (0.02s)
        inline:                                                                       OK (1.19s)
          +++ OK, passed 99 tests.
      KnownCon.Tests
        KnownCon
          applicative:                                                                OK (0.04s)
          bool:                                                                       OK
          list:                                                                       OK (0.02s)
          maybe-just:                                                                 OK (0.02s)
          maybe-just-unsaturated:                                                     OK (0.01s)
          maybe-nothing:                                                              OK (0.01s)
          pair:                                                                       OK (0.01s)
        knownCon:                                                                     OK (0.97s)
          +++ OK, passed 99 tests.
      LetFloatIn.Tests
        conservative
          avoid-floating-into-lam:                                                    OK (0.01s)
          avoid-floating-into-tyabs:                                                  OK (0.02s)
        relaxed
          avoid-floating-into-RHS:                                                    OK (0.01s)
          avoid-moving-strict-nonvalue-bindings:                                      OK (0.01s)
          cannot-float-into-app:                                                      OK (0.01s)
          datatype1:                                                                  OK (0.02s)
          datatype2:                                                                  OK (0.02s)
          float-into-fun-and-arg-1:                                                   OK (0.01s)
          float-into-fun-and-arg-2:                                                   OK (0.02s)
          float-into-lam1:                                                            OK (0.02s)
          float-into-lam2:                                                            OK (0.04s)
          float-into-RHS:                                                             OK (0.02s)
          float-into-tyabs1:                                                          OK (0.03s)
          float-into-tyabs2:                                                          OK (0.02s)
          float-into-constr:                                                          OK (0.02s)
          float-into-case-arg:                                                        OK (0.03s)
          float-into-case-branch:                                                     OK (0.03s)
          type:                                                                       OK (0.03s)
        floatIn:                                                                      OK (1.28s)
          +++ OK, passed 99 tests.
      LetFloatOut.Tests
        LetFloatOut
          letInLet:                                                                   OK (0.02s)
          listMatch:                                                                  OK (0.04s)
          maybe:                                                                      OK (0.03s)
          ifError:                                                                    OK (0.04s)
          mutuallyRecursiveTypes:                                                     OK (0.02s)
          mutuallyRecursiveValues:                                                    OK (0.01s)
          nonrec1:                                                                    OK (0.02s)
          nonrec2:                                                                    OK (0.02s)
          nonrec3:                                                                    OK (0.02s)
          nonrec4:                                                                    OK (0.03s)
          nonrec6:                                                                    OK (0.02s)
          nonrec7:                                                                    OK (0.01s)
          nonrec8:                                                                    OK (0.02s)
          nonrec9:                                                                    OK (0.01s)
          rec1:                                                                       OK (0.01s)
          rec2:                                                                       OK (0.02s)
          rec3:                                                                       OK
          rec4:                                                                       OK (0.01s)
          nonrecToRec:                                                                OK (0.01s)
          nonrecToNonrec:                                                             OK (0.02s)
          oldLength:                                                                  OK
          strictValue:                                                                OK
          strictNonValue:                                                             OK (0.02s)
          strictNonValue2:                                                            OK (0.02s)
          strictNonValue3:                                                            OK (0.01s)
          strictValueNonValue:                                                        OK (0.01s)
          strictValueValue:                                                           OK (0.01s)
          even3Eval:                                                                  OK (0.03s)
          strictNonValueDeep:                                                         OK (0.01s)
          oldFloatBug:                                                                OK (0.03s)
          outRhs:                                                                     OK (0.02s)
          outLam:                                                                     OK (0.01s)
          inLam:                                                                      OK (0.01s)
          rhsSqueezeVsNest:                                                           OK (0.03s)
        floatOut:                                                                     OK (1.14s)
          +++ OK, passed 99 tests.
      NonStrict.Tests
        NonStrict
          nonStrict1:                                                                 OK (0.03s)
        nonStrict:                                                                    OK (1.30s)
          +++ OK, passed 99 tests.
      RecSplit.Tests
        RecSplit
          truenonrec:                                                                 OK (0.01s)
          mutuallyRecursiveTypes:                                                     OK (0.02s)
          mutuallyRecursiveValues:                                                    OK (0.01s)
          selfrecursive:                                                              OK (0.01s)
          small:                                                                      OK
          big:                                                                        OK (0.02s)
        recSplit:                                                                     OK (0.64s)
          +++ OK, passed 99 tests.
      Rename.Tests
        Rename
          allShadowedDataNonRec:                                                      OK (0.01s)
          allShadowedDataRec:                                                         OK (0.01s)
          paramShadowedDataNonRec:                                                    OK (0.01s)
          paramShadowedDataRec:                                                       OK
        rename:                                                                       OK (0.70s)
          +++ OK, passed 99 tests.
      RewriteRules.Tests
        RewriteRules
          equalsInt.pir:                                                              OK (0.02s)
          divideInt.pir:                                                              OK (0.01s)
          multiplyInt.pir:                                                            OK (0.02s)
          let.pir:                                                                    OK (0.02s)
          unConstrConstrDataFst.pir:                                                  OK (0.02s)
          unConstrConstrDataSnd.pir:                                                  OK (0.02s)
          unConstrConstrDataFst.pir.eval:                                             OK (0.05s)
        rewriteRules:                                                                 OK (1.17s)
          +++ OK, passed 99 tests.
      StrictLetRec.Tests
        Transform
          StrictLetRec
            strictLetRec:                                                             OK (0.05s)
            traces:                                                                   FAIL (0.05s)
              plutus-ir/test/PlutusIR/Transform/StrictLetRec/Tests.hs:58:
              expected: ["hello"]
               but got: []
              Use -p '/traces/' to rerun this test only.
      StrictifyBindings.Tests
        StrictifyBindings
          pure1:                                                                      OK
          impure1:                                                                    OK (0.01s)
          unused:                                                                     OK (0.02s)
          conapp:                                                                     OK (0.01s)
        strictifyBindings:                                                            OK (0.81s)
          +++ OK, passed 99 tests.
      ThunkRecursions.Tests
        ThunkRecursions
          listFold:                                                                   OK (0.02s)
          listFoldTrace:                                                              OK (0.04s)
          monoMap:                                                                    OK
          errorBinding:                                                               OK
          mutuallyRecursiveValues:                                                    OK (0.01s)
          preserveEffectOrder:                                                        OK
          preserveStrictness:                                                         OK
        thunkRecursions:                                                              OK (0.75s)
          +++ OK, passed 99 tests.
      Unwrap.Tests
        Unwrap
          unwrapWrap:                                                                 OK (0.01s)
        unwrap:                                                                       OK (0.46s)
          +++ OK, passed 99 tests.
    TypeCheck.Tests
      TypeCheck
        letInLet:                                                                     OK (0.02s)
        listMatch:                                                                    OK
        maybe:                                                                        OK (0.03s)
        ifError:                                                                      OK
        mutuallyRecursiveTypes:                                                       OK (0.01s)
        mutuallyRecursiveValues:                                                      OK
        nonrec1:                                                                      OK
        nonrec2:                                                                      OK (0.01s)
        nonrec3:                                                                      OK
        nonrec4:                                                                      OK (0.01s)
        nonrec6:                                                                      OK
        nonrec7:                                                                      OK
        nonrec8:                                                                      OK (0.01s)
        rec1:                                                                         OK
        rec2:                                                                         OK (0.02s)
        rec3:                                                                         OK
        rec4:                                                                         OK
        nonrecToRec:                                                                  OK (0.01s)
        nonrecToNonrec:                                                               OK
        oldLength:                                                                    OK
        strictValue:                                                                  OK
        strictNonValue:                                                               OK (0.02s)
        strictNonValue2:                                                              OK (0.01s)
        strictNonValue3:                                                              OK (0.02s)
        strictValueNonValue:                                                          OK (0.02s)
        strictValueValue:                                                             OK (0.01s)
        strictNonValueDeep:                                                           OK (0.01s)
        even3Eval:                                                                    OK
        sameNameDifferentEnv:                                                         OK (0.01s)
        typeLet:                                                                      OK (0.01s)
        typeLetRec:                                                                   OK (0.01s)
        wrongDataConstrReturnType:                                                    OK (0.02s)
        nonSelfRecursive:                                                             OK
        typeLetWrong:                                                                 OK

1 out of 323 tests failed (3.83s)