summaryrefslogtreecommitdiff
path: root/rts/LinkerInternals.h
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2022-02-05 23:12:07 -0500
committerMarge Bot <ben+marge-bot@smart-cactus.org>2022-04-06 13:01:28 -0400
commit400666c81af024b6d16100aba88c2e8e78e8eef8 (patch)
tree08324c14136e7fd92fa20769f9e25c280a0eeb35 /rts/LinkerInternals.h
parent410c76eea7370f2d1143cf79aa524fcdec184f89 (diff)
downloadhaskell-400666c81af024b6d16100aba88c2e8e78e8eef8.tar.gz
rts/linker: Catch archives masquerading as object files
Check the file's header to catch static archive bearing the `.o` extension, as may happen on Windows after the Clang refactoring. See #21068
Diffstat (limited to 'rts/LinkerInternals.h')
-rw-r--r--rts/LinkerInternals.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/rts/LinkerInternals.h b/rts/LinkerInternals.h
index 158f90990e..eb76a979bc 100644
--- a/rts/LinkerInternals.h
+++ b/rts/LinkerInternals.h
@@ -406,6 +406,10 @@ pathchar*
resolveSymbolAddr (pathchar* buffer, int size,
SymbolAddr* symbol, uintptr_t* top);
+/* defined in LoadArchive.c */
+bool isArchive (pathchar *path);
+HsInt loadArchive_ (pathchar *path);
+
/*************************************************
* Various bits of configuration
*************************************************/