IntersectMBO / IntersectMBO/plutus

Investigate Marlowe validator compilation failure with GHC 9.6.2

Open
#6,172 0 comments 0 reactions 0 assignees View on GitHub
Internal status: triaged
Dominant language
Haskell
Stars
1.6k
Forks
508
Avg merge
3d 10h
Merged PRs (30d)
22

Description

With GHC 9.6.2, this happens in the plutus repository

```
$ cabal test plutus-benchmark-marlowe-tests
...
Test suite plutus-benchmark-marlowe-tests: RUNNING...
plutus-benchmark-marlowe-tests: Error: Reference to a name which is not a local, a builtin, or an external INLINABLE function: Variable PlutusLedgerApi.V1.Value.$fAdditiveGroupValue_go
No unfolding
Context: Compiling definition of: PlutusBenchmark.Marlowe.Scripts.Semantics.mkMarloweValidator
Context: Compiling expr at "plutus-benchmark-0.1.0.0-inplace-marlowe-internal:PlutusBenchmark.Marlowe.Scripts.Semantics:(448,9)-(448,53)"
Test suite plutus-benchmark-marlowe-tests: FAIL
```

The same thing happens with cabal bench marlowe. This doesn’t happen with GHC 9.2.6.

The problem can be fixed by adding

```
{-# OPTIONS_GHC -fexpose-all-unfoldings #-}
```

to PlutusLedgerApi.V1.Value. However, that may not be entirely desirable, so we should try to understand what’s going on and see if there’s any other way to fix it.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.