From 463de5fd0a6408c416378f62c94dd0f6db10427f Mon Sep 17 00:00:00 2001 From: Ben Lippmeier Date: Fri, 10 Dec 2010 06:01:54 +0000 Subject: [PATCH] Default the value of -dppr-cols when the static flags aren't initialised yet If GHC's command line options are bad then the options parser uses the pretty printer before the -dppr-cols flag has been read. --- compiler/main/StaticFlags.hs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/compiler/main/StaticFlags.hs b/compiler/main/StaticFlags.hs index e03d681..96f8b4b 100644 --- a/compiler/main/StaticFlags.hs +++ b/compiler/main/StaticFlags.hs @@ -237,8 +237,17 @@ opt_PprCaseAsLet :: Bool opt_PprCaseAsLet = lookUp (fsLit "-dppr-case-as-let") -- | Set the maximum width of the dumps +-- If GHC's command line options are bad then the options parser uses the +-- pretty printer display the error message. In this case the staticFlags +-- won't be initialized yet, so we must check for this case explicitly +-- and return the default value. opt_PprCols :: Int -opt_PprCols = lookup_def_int "-dppr-cols" 100 +opt_PprCols + = unsafePerformIO + $ do ready <- readIORef v_opt_C_ready + if (not ready) + then return 100 + else return $ lookup_def_int "-dppr-cols" 100 opt_PprStyle_Debug :: Bool -- 1.7.10.4