Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master
http://hackage.haskell.org/trac/ghc/changeset/58803d7288a1a49f79406bdb8b8d748c9fd32ea1 >--------------------------------------------------------------- commit 58803d7288a1a49f79406bdb8b8d748c9fd32ea1 Author: Simon Marlow <[email protected]> Date: Fri Nov 11 10:49:40 2011 +0000 Normalise FilePaths before hashing (fixes base01) >--------------------------------------------------------------- compiler/iface/FlagChecker.hs | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/compiler/iface/FlagChecker.hs b/compiler/iface/FlagChecker.hs index ddc99cf..f670437 100644 --- a/compiler/iface/FlagChecker.hs +++ b/compiler/iface/FlagChecker.hs @@ -12,8 +12,10 @@ import DynFlags import HscTypes import Name import Fingerprint +-- import Outputable import Data.List (sort) +import System.FilePath (normalise) -- | Produce a fingerprint of a @DynFlags@ value. We only base -- the finger print on important fields in @DynFlags@ so that @@ -32,12 +34,14 @@ fingerprintDynFlags DynFlags{..} nameio = sort $ map fromEnum $ extensionFlags) -- -I, -D and -U flags affect CPP - cpp = (includePaths, sOpt_P settings) + cpp = (map normalise includePaths, sOpt_P settings) + -- normalise: eliminate spurious differences due to "./foo" vs "foo" -- -i, -osuf, -hcsuf, -hisuf, -odir, -hidir, -stubdir, -o, -ohi - paths = (importPaths, + paths = (map normalise importPaths, [ objectSuf, hcSuf, hiSuf ], [ objectDir, hiDir, stubDir, outputFile, outputHi ]) - in computeFingerprint nameio (mainis, safeHs, lang, cpp, paths) + in -- pprTrace "flags" (ppr (mainis, safeHs, lang, cpp, paths)) $ + computeFingerprint nameio (mainis, safeHs, lang, cpp, paths) _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
