Skip to content

hs-boot file generation test. #197

@wavewave

Description

@wavewave

Right now, the type signatures from hs file and hs-boot file are different, and GHC 9.4 results in build error while GHC 9.2 was okay.

[ 66 of 129] Compiling OGDF.NodeElement.Interface ( src/OGDF/NodeElement/Interface.hs, dist/build/OGDF/NodeElement>

src/OGDF/NodeElement/Interface.hs-boot:3:1: error:
    Class ‘INodeElement’ has conflicting definitions in the module
    and its hs-boot file
    Main module: type INodeElement :: * -> Constraint
                 class IDeletable a => INodeElement a
    Boot file:   type INodeElement :: * -> Constraint
                 class INodeElement a
    The class constraints do not match
  |
3 | class () => INodeElement a where
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

This was discovered by a downstream library (hs-ogdf) as the above, but should have been captured in tests here. We should make a test with hs-boot.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions