diff options
author | Herbert Valerio Riedel <hvr@gnu.org> | 2016-02-27 17:34:14 +0100 |
---|---|---|
committer | Herbert Valerio Riedel <hvr@gnu.org> | 2016-02-27 17:34:14 +0100 |
commit | 869d9c62d8329022f9f5504a92d2d74efec4f2e8 (patch) | |
tree | d0a0f668c423ffff8a5c92235052c5bc565428f3 | |
parent | b9c697eefd34fcba3ab9c1f831baf7f651ad7503 (diff) | |
download | haskell-869d9c62d8329022f9f5504a92d2d74efec4f2e8.tar.gz |
Print which flag controls emitted lexer warnings
This is extends bb5afd3c274011c5ea302210b4c290ec1f83209c to cover
warnings emitted during lexing.
This implements another part of #10752
-rw-r--r-- | compiler/parser/Lexer.x | 6 | ||||
-rw-r--r-- | testsuite/tests/driver/recomp005/recomp005.stderr | 4 | ||||
-rw-r--r-- | testsuite/tests/driver/werror.stderr | 2 | ||||
-rw-r--r-- | testsuite/tests/ghci/should_run/T7253.stderr | 11 | ||||
-rw-r--r-- | testsuite/tests/layout/layout001.stdout | 4 | ||||
-rw-r--r-- | testsuite/tests/layout/layout003.stdout | 4 | ||||
-rw-r--r-- | testsuite/tests/layout/layout006.stdout | 4 | ||||
-rw-r--r-- | testsuite/tests/parser/should_compile/T9723a.stderr | 2 | ||||
-rw-r--r-- | testsuite/tests/parser/should_compile/T9723b.stderr | 2 | ||||
-rw-r--r-- | testsuite/tests/parser/should_compile/read043.stderr | 2 | ||||
-rw-r--r-- | testsuite/tests/parser/should_compile/read064.stderr | 3 | ||||
-rw-r--r-- | testsuite/tests/parser/should_compile/read066.stderr | 3 | ||||
-rw-r--r-- | testsuite/tests/warnings/should_compile/T9230.stderr | 2 |
13 files changed, 27 insertions, 22 deletions
diff --git a/compiler/parser/Lexer.x b/compiler/parser/Lexer.x index 71478026c9..650b302b54 100644 --- a/compiler/parser/Lexer.x +++ b/compiler/parser/Lexer.x @@ -2206,7 +2206,8 @@ mkPState flags buf loc = addWarning :: WarningFlag -> SrcSpan -> SDoc -> P () addWarning option srcspan warning = P $ \s@PState{messages=(ws,es), dflags=d} -> - let warning' = mkWarnMsg d srcspan alwaysQualify warning + let warning' = makeIntoWarning (Reason option) $ + mkWarnMsg d srcspan alwaysQualify warning ws' = if wopt option d then ws `snocBag` warning' else ws in POk s{messages=(ws', es)} () @@ -2229,7 +2230,8 @@ mkTabWarning PState{tab_first=tf, tab_count=tc, dflags=d} = <> middle <> text "." $+$ text "Please use spaces instead." - in fmap (\s -> mkWarnMsg d (RealSrcSpan s) alwaysQualify message) tf + in fmap (\s -> makeIntoWarning (Reason Opt_WarnTabs) $ + mkWarnMsg d (RealSrcSpan s) alwaysQualify message) tf getMessages :: PState -> Messages getMessages p@PState{messages=(ws,es)} = diff --git a/testsuite/tests/driver/recomp005/recomp005.stderr b/testsuite/tests/driver/recomp005/recomp005.stderr index 0d437717fc..66b61f5c84 100644 --- a/testsuite/tests/driver/recomp005/recomp005.stderr +++ b/testsuite/tests/driver/recomp005/recomp005.stderr @@ -1,8 +1,8 @@ -C.hs:7:11: warning: +C.hs:7:11: warning: [-Winline-rule-shadowing (in -Wdefault)] Rule "f/g" may never fire because ‘f’ might inline first Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘f’ -C.hs:7:11: warning: +C.hs:7:11: warning: [-Winline-rule-shadowing (in -Wdefault)] Rule "f/g" may never fire because ‘g’ might inline first Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘g’ diff --git a/testsuite/tests/driver/werror.stderr b/testsuite/tests/driver/werror.stderr index 38bab8b821..39dddee619 100644 --- a/testsuite/tests/driver/werror.stderr +++ b/testsuite/tests/driver/werror.stderr @@ -9,7 +9,7 @@ werror.hs:7:13: warning: [-Wname-shadowing (in -Wall)] werror.hs:7:13: warning: [-Wunused-local-binds (in -Wextra, -Wunused-binds)] Defined but not used: ‘main’ -werror.hs:8:1: warning: +werror.hs:8:1: warning: [-Wtabs (in -Wdefault)] Tab character found here. Please use spaces instead. diff --git a/testsuite/tests/ghci/should_run/T7253.stderr b/testsuite/tests/ghci/should_run/T7253.stderr index a96d27803f..f7dedda51b 100644 --- a/testsuite/tests/ghci/should_run/T7253.stderr +++ b/testsuite/tests/ghci/should_run/T7253.stderr @@ -1,7 +1,8 @@ -<interactive>:19:1: warning: Unrecognised pragma +<interactive>:19:1: warning: [-Wunrecognised-pragmas (in -Wdefault)] + Unrecognised pragma -<interactive>:62:1: - Role mismatch on variable b: - Annotation says phantom but role representational is required - while checking a role annotation for ‘T1’ +<interactive>:62:1: error: + • Role mismatch on variable b: + Annotation says phantom but role representational is required + • while checking a role annotation for ‘T1’ diff --git a/testsuite/tests/layout/layout001.stdout b/testsuite/tests/layout/layout001.stdout index 50b2cf4ab7..a8b1976673 100644 --- a/testsuite/tests/layout/layout001.stdout +++ b/testsuite/tests/layout/layout001.stdout @@ -1,9 +1,9 @@ Running with -XNoAlternativeLayoutRule Running with -XAlternativeLayoutRule -layout001.hs:6:3: parse error on input ‘where’ +layout001.hs:6:3: error: parse error on input ‘where’ Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional -layout001.hs:6:3: Warning: +layout001.hs:6:3: warning: [-Walternative-layout-rule-transitional (in -Wdefault)] transitional layout will not be accepted in the future: `where' clause at the same depth as implicit layout block diff --git a/testsuite/tests/layout/layout003.stdout b/testsuite/tests/layout/layout003.stdout index 171dc22d7e..927fe884c7 100644 --- a/testsuite/tests/layout/layout003.stdout +++ b/testsuite/tests/layout/layout003.stdout @@ -1,9 +1,9 @@ Running with -XNoAlternativeLayoutRule Running with -XAlternativeLayoutRule -layout003.hs:11:4: parse error on input ‘|’ +layout003.hs:11:4: error: parse error on input ‘|’ Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional -layout003.hs:11:4: Warning: +layout003.hs:11:4: warning: [-Walternative-layout-rule-transitional (in -Wdefault)] transitional layout will not be accepted in the future: `|' at the same depth as implicit layout block diff --git a/testsuite/tests/layout/layout006.stdout b/testsuite/tests/layout/layout006.stdout index cba3151734..0c5dd597f9 100644 --- a/testsuite/tests/layout/layout006.stdout +++ b/testsuite/tests/layout/layout006.stdout @@ -1,9 +1,9 @@ Running with -XNoAlternativeLayoutRule Running with -XAlternativeLayoutRule -layout006.hs:12:2: parse error on input ‘|’ +layout006.hs:12:2: error: parse error on input ‘|’ Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional -layout006.hs:12:2: Warning: +layout006.hs:12:2: warning: [-Walternative-layout-rule-transitional (in -Wdefault)] transitional layout will not be accepted in the future: `|' at the same depth as implicit layout block diff --git a/testsuite/tests/parser/should_compile/T9723a.stderr b/testsuite/tests/parser/should_compile/T9723a.stderr index c445de1046..e3a2ede74f 100644 --- a/testsuite/tests/parser/should_compile/T9723a.stderr +++ b/testsuite/tests/parser/should_compile/T9723a.stderr @@ -1,4 +1,4 @@ -T9723a.hs:8:5: Warning: +T9723a.hs:8:5: warning: [-Wtabs (in -Wdefault)] Tab character found here. Please use spaces instead. diff --git a/testsuite/tests/parser/should_compile/T9723b.stderr b/testsuite/tests/parser/should_compile/T9723b.stderr index 088b722071..380b2d8f88 100644 --- a/testsuite/tests/parser/should_compile/T9723b.stderr +++ b/testsuite/tests/parser/should_compile/T9723b.stderr @@ -1,4 +1,4 @@ -T9723b.hs:10:5: Warning: +T9723b.hs:10:5: warning: [-Wtabs (in -Wdefault)] Tab character found here, and in six further locations. Please use spaces instead. diff --git a/testsuite/tests/parser/should_compile/read043.stderr b/testsuite/tests/parser/should_compile/read043.stderr index 76b1fb46ec..9e792e7409 100644 --- a/testsuite/tests/parser/should_compile/read043.stderr +++ b/testsuite/tests/parser/should_compile/read043.stderr @@ -1,4 +1,4 @@ -read043.hs:8:5: Warning: +read043.hs:8:5: warning: [-Wtabs (in -Wdefault)] Tab character found here, and in one further location. Please use spaces instead. diff --git a/testsuite/tests/parser/should_compile/read064.stderr b/testsuite/tests/parser/should_compile/read064.stderr index dfc662f422..120961d321 100644 --- a/testsuite/tests/parser/should_compile/read064.stderr +++ b/testsuite/tests/parser/should_compile/read064.stderr @@ -1,2 +1,3 @@ -read064.hs:4:1: Warning: Unrecognised pragma +read064.hs:4:1: warning: [-Wunrecognised-pragmas (in -Wdefault)] + Unrecognised pragma diff --git a/testsuite/tests/parser/should_compile/read066.stderr b/testsuite/tests/parser/should_compile/read066.stderr index 3eca28b785..152987f981 100644 --- a/testsuite/tests/parser/should_compile/read066.stderr +++ b/testsuite/tests/parser/should_compile/read066.stderr @@ -1,2 +1,3 @@ -read066.hs:2:1: Warning: Unrecognised pragma +read066.hs:2:1: warning: [-Wunrecognised-pragmas (in -Wdefault)] + Unrecognised pragma diff --git a/testsuite/tests/warnings/should_compile/T9230.stderr b/testsuite/tests/warnings/should_compile/T9230.stderr index 2c7cee0c55..14458ff5c3 100644 --- a/testsuite/tests/warnings/should_compile/T9230.stderr +++ b/testsuite/tests/warnings/should_compile/T9230.stderr @@ -1,4 +1,4 @@ -T9230.hs:5:1: Warning: +T9230.hs:5:1: warning: [-Wtabs (in -Wdefault)] Tab character found here. Please use spaces instead. |