Allow unregisterised ghc-8.6 to build newer GHC
authorDebian Haskell Group <pkg-haskell-maintainers@lists.alioth.debian.org>
Sun, 3 Oct 2021 11:27:00 +0000 (12:27 +0100)
committerIlias Tsitsimpis <iliastsi@debian.org>
Sun, 3 Oct 2021 11:27:00 +0000 (12:27 +0100)
Commit af9b744bbf1 introduced a regression stopping existing unregisterised
compilers from being able to compile newer versions of GHC. The problem is
that the bootstrap compiler uses the newer `includes/stg/MiscClosures.h` file
where some defines have been renamed, resulting in the following error:
.
 error: ‘stg_atomicModifyMutVarzh’ undeclared (first use in this function); did you mean ‘stg_atomicModifyMutVar2zh’?
.
 For more information, see https://gitlab.haskell.org/ghc/ghc/issues/17111.
.
 This patch can be removed, once ghc-8.6 is no longer the bootstrap compiler.
Author: Ilias Tsitsimpis <iliastsi@debian.org>
Bug: https://gitlab.haskell.org/ghc/ghc/issues/17111

Gbp-Pq: Name fix-build-using-unregisterised-v8.6

includes/stg/MiscClosures.h

index 8c4cb9fc8cb2f85d284e6b76ed7245f1ede52a42..b4bdffe4a33e309da5a3af41e88a328e73d49ea7 100644 (file)
@@ -390,8 +390,12 @@ RTS_FUN_DECL(stg_copySmallMutableArrayzh);
 RTS_FUN_DECL(stg_casSmallArrayzh);
 
 RTS_FUN_DECL(stg_newMutVarzh);
+#if __GLASGOW_HASKELL__ < 808
+RTS_FUN_DECL(stg_atomicModifyMutVarzh);
+#else
 RTS_FUN_DECL(stg_atomicModifyMutVar2zh);
 RTS_FUN_DECL(stg_atomicModifyMutVarzuzh);
+#endif
 RTS_FUN_DECL(stg_casMutVarzh);
 
 RTS_FUN_DECL(stg_isEmptyMVarzh);