Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • GHC GHC
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 4,866
    • Issues 4,866
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 456
    • Merge requests 456
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Glasgow Haskell Compiler
  • GHCGHC
  • Issues
  • #20593
Closed
Open
Created Nov 01, 2021 by Douglas Wilson@duogDeveloper

Hadrian does not properly track dependencies of _build/stage0/lib/DerivedConstants.h

DerivedConstants.h is generated by the program utils/deriveConstants. Part of what it does is generate a bunch of constants from the rts headers. For example the line

#define REP_bdescr_blocks b32

derives from the line

    StgWord32 blocks;          // [READ ONLY] no. of blocks in a group

in rts/include/rts/storage/Block.h

However, modifying this line in Block.h to StgWord16 blocks and running hadrian _build/stage0/lib/DerivedConstants.h does not propagate the change as one would expect. (one would expect to see #define REP_bdescr_blocks b16).

I believe this is because hadrian does not know that there is a dependency into the rts headers.

Edited Nov 01, 2021 by Douglas Wilson
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking