summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2019-12-17 19:33:31 -0500
committerMarge Bot <ben+marge-bot@smart-cactus.org>2019-12-30 06:51:32 -0500
commit2528e6847d6ab11b452998e5511d60b26453f022 (patch)
tree28d2d2145f4870ee6a08b07245a4d46bb4bd9b4a
parentd03dec8ff7681423b9cafa2ce1b5b5f624e664c7 (diff)
downloadhaskell-2528e6847d6ab11b452998e5511d60b26453f022.tar.gz
driver: Include debug level in the recompilation check hash
Fixes #17586.
-rw-r--r--compiler/iface/FlagChecker.hs2
-rw-r--r--testsuite/tests/driver/T17586/Makefile9
-rw-r--r--testsuite/tests/driver/T17586/T17586.hs2
-rw-r--r--testsuite/tests/driver/T17586/T17586.stdout6
-rw-r--r--testsuite/tests/driver/T17586/all.T1
5 files changed, 19 insertions, 1 deletions
diff --git a/compiler/iface/FlagChecker.hs b/compiler/iface/FlagChecker.hs
index 92caee658b..aac2c24995 100644
--- a/compiler/iface/FlagChecker.hs
+++ b/compiler/iface/FlagChecker.hs
@@ -61,7 +61,7 @@ fingerprintDynFlags dflags@DynFlags{..} this_mod nameio =
ticky =
map (`gopt` dflags) [Opt_Ticky, Opt_Ticky_Allocd, Opt_Ticky_LNE, Opt_Ticky_Dyn_Thunk]
- flags = (mainis, safeHs, lang, cpp, paths, prof, ticky)
+ flags = ((mainis, safeHs, lang, cpp), (paths, prof, ticky, debugLevel))
in -- pprTrace "flags" (ppr flags) $
computeFingerprint nameio flags
diff --git a/testsuite/tests/driver/T17586/Makefile b/testsuite/tests/driver/T17586/Makefile
new file mode 100644
index 0000000000..ccca1f3c98
--- /dev/null
+++ b/testsuite/tests/driver/T17586/Makefile
@@ -0,0 +1,9 @@
+TOP=../..
+include $(TOP)/mk/boilerplate.mk
+include $(TOP)/mk/test.mk
+
+T17586:
+ "$(TEST_HC)" $(TEST_HC_OPTS) -o T17586 ./T17586.hs
+ ./T17586
+ "$(TEST_HC)" $(TEST_HC_OPTS) -o T17586 ./T17586.hs -g3
+ ./T17586
diff --git a/testsuite/tests/driver/T17586/T17586.hs b/testsuite/tests/driver/T17586/T17586.hs
new file mode 100644
index 0000000000..c81fb82437
--- /dev/null
+++ b/testsuite/tests/driver/T17586/T17586.hs
@@ -0,0 +1,2 @@
+main :: IO ()
+main = putStrLn "hello world"
diff --git a/testsuite/tests/driver/T17586/T17586.stdout b/testsuite/tests/driver/T17586/T17586.stdout
new file mode 100644
index 0000000000..8697277251
--- /dev/null
+++ b/testsuite/tests/driver/T17586/T17586.stdout
@@ -0,0 +1,6 @@
+[1 of 1] Compiling Main ( T17586.hs, T17586.o )
+Linking T17586 ...
+hello world
+[1 of 1] Compiling Main ( T17586.hs, T17586.o ) [flags changed]
+Linking T17586 ...
+hello world
diff --git a/testsuite/tests/driver/T17586/all.T b/testsuite/tests/driver/T17586/all.T
new file mode 100644
index 0000000000..2ec89b4d03
--- /dev/null
+++ b/testsuite/tests/driver/T17586/all.T
@@ -0,0 +1 @@
+test('T17586', normal, makefile_test, [])