David Eichmann pushed to branch wip/davide/windows-dlls at Glasgow Haskell Compiler / GHC Commits: e6bc007e by David Eichmann at 2026-07-01T09:35:53+01:00 rts/include: annotate all public symbols with RTS_EXPORT Add RTS_EXPORT macro (expands to __attribute__((dllexport)) on mingw32, empty elsewhere) to all public function and global data declarations across every header under rts/include/. The macro is defined in Stg.h. Each header that uses it also carries a fallback #ifndef RTS_EXPORT guard so it can be analysed in isolation. Declarations inside #if IN_STG_CODE blocks (raw StgWord/W_ types for Cmm/STG code), INLINE_HEADER/EXTERN_INLINE inline definitions, and RTS_PRIVATE symbols are intentionally left unannotated. AI-generated by Claude Sonnet 4.6 per prompt: "annotate all global data/functions under rts/include with __attribute__((dllexport)) unless explicitly marked as private" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> - - - - - 51 changed files: - rts/include/HsFFI.h - rts/include/Rts.h - rts/include/RtsAPI.h - rts/include/Stg.h - rts/include/rts/Adjustor.h - rts/include/rts/BlockSignals.h - rts/include/rts/EventLogWriter.h - rts/include/rts/ExecPage.h - rts/include/rts/FileLock.h - rts/include/rts/Flags.h - rts/include/rts/ForeignExports.h - rts/include/rts/GetTime.h - rts/include/rts/Globals.h - rts/include/rts/Hpc.h - rts/include/rts/IOInterface.h - rts/include/rts/IPE.h - rts/include/rts/Libdw.h - rts/include/rts/LibdwPool.h - rts/include/rts/Linker.h - rts/include/rts/Messages.h - rts/include/rts/NonMoving.h - rts/include/rts/OSThreads.h - rts/include/rts/Parallel.h - rts/include/rts/PrimFloat.h - rts/include/rts/Profiling.h - rts/include/rts/RtsToHsIface.h - rts/include/rts/SpinLock.h - rts/include/rts/StableName.h - rts/include/rts/StablePtr.h - rts/include/rts/StaticPtrTable.h - rts/include/rts/TSANUtils.h - rts/include/rts/TTY.h - rts/include/rts/Threads.h - rts/include/rts/Ticky.h - rts/include/rts/Time.h - rts/include/rts/Timer.h - rts/include/rts/Utils.h - rts/include/rts/prof/CCS.h - rts/include/rts/prof/Heap.h - rts/include/rts/storage/Block.h - rts/include/rts/storage/ClosureMacros.h - rts/include/rts/storage/GC.h - rts/include/rts/storage/Heap.h - rts/include/rts/storage/HeapAlloc.h - rts/include/rts/storage/InfoTables.h - rts/include/rts/storage/MBlock.h - rts/include/rts/storage/TSO.h - rts/include/stg/MiscClosures.h - rts/include/stg/Prim.h - rts/include/stg/SMP.h - rts/include/stg/Ticky.h The diff was not included because it is too large. View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/e6bc007eb624a7b029a4aaa0172f2d3c... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/e6bc007eb624a7b029a4aaa0172f2d3c... You're receiving this email because of your account on gitlab.haskell.org.
participants (1)
-
David Eichmann (@DavidEichmann)