diff options
author | Matthew Pickering <matthewtpickering@gmail.com> | 2021-09-27 16:49:33 +0100 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2021-10-19 03:30:16 -0400 |
commit | 3035d1a2f28fcd26e85f22fb17ca2c9f30f8920a (patch) | |
tree | 0a25c67636467942994e347376b31fca9a77354b /compiler | |
parent | 19d1237e1db9eb49320cfc222b5efe7bfb8f89de (diff) | |
download | haskell-3035d1a2f28fcd26e85f22fb17ca2c9f30f8920a.tar.gz |
tests: Remove $(CABAL_MINIMAL_CONFIGURATION) from T16219
There is a latent issue in T16219 where -dynamic-too is enabled
when compiling a signature file which causes us to enter the DT_Failed
state because library-a-impl doesn't generate dyn_o files. Somehow this
used to work in 8.10 (that also entered the DT_Failed state)
We don't need dynamic object files when compiling a signature file but
the code loads interfaces, and if dynamic-too is enabled then it will
also try to load the dyn_hi file and check the two are consistent.
There is another hack to do with this in `GHC.Iface.Recomp`.
The fix for this test is to remove CABAL_MINIMAL_CONFIGURATION, which
stops cabal building shared libraries by default.
I'm of the opinion that the DT_Failed state indicates an error somewhere
so we should hard fail rather than this confusing (broken) rerun logic.
Whether this captures the original intent of #16219 is debateable, but
it's not clear how it was supposed to work in the first place if the
libraries didn't build dynamic object files. Module C imports module A,
which is from a library where shared objects are not built so the test
would never have worked anyway (if anything from A was used in a TH
splice).
Diffstat (limited to 'compiler')
0 files changed, 0 insertions, 0 deletions