Build #1 for cpphs-1.20.10
| Package | cpphs-1.20.10 |
|---|
| Install | InstallOk |
|---|---|
| Docs | Ok |
| Tests | NotTried |
| Time submitted | 2025-09-14 16:10:33.264191408 UTC |
|---|---|
| Compiler | ghc-9.8.4 |
| OS | linux |
| Arch | x86_64 |
| Dependencies | base-4.19.2.0, directory-1.3.8.5, polyparse-1.13.1, time-1.12.2, base-4.19.2.0, directory-1.3.8.5, polyparse-1.13.1, time-1.12.2 |
| Flags | none |
Code Coverage
No Code Coverage was submitted for this report.
Build log
[view raw]
Resolving dependencies...
Configuring polyparse-1.13.1...
Preprocessing library for polyparse-1.13.1..
Building library for polyparse-1.13.1..
[ 1 of 18] Compiling Text.ParserCombinators.HuttonMeijer ( src/Text/ParserCombinators/HuttonMeijer.hs, dist/build/Text/ParserCombinators/HuttonMeijer.o, dist/build/Text/ParserCombinators/HuttonMeijer.dyn_o )
[ 2 of 18] Compiling Text.ParserCombinators.HuttonMeijerWallace ( src/Text/ParserCombinators/HuttonMeijerWallace.hs, dist/build/Text/ParserCombinators/HuttonMeijerWallace.o, dist/build/Text/ParserCombinators/HuttonMeijerWallace.dyn_o )
[ 3 of 18] Compiling Text.ParserCombinators.Poly.Base ( src/Text/ParserCombinators/Poly/Base.hs, dist/build/Text/ParserCombinators/Poly/Base.o, dist/build/Text/ParserCombinators/Poly/Base.dyn_o )
[ 4 of 18] Compiling Text.ParserCombinators.Poly.Result ( src/Text/ParserCombinators/Poly/Result.hs, dist/build/Text/ParserCombinators/Poly/Result.o, dist/build/Text/ParserCombinators/Poly/Result.dyn_o )
[ 5 of 18] Compiling Text.ParserCombinators.Poly.Parser ( src/Text/ParserCombinators/Poly/Parser.hs, dist/build/Text/ParserCombinators/Poly/Parser.o, dist/build/Text/ParserCombinators/Poly/Parser.dyn_o )
[ 6 of 18] Compiling Text.ParserCombinators.Poly.Plain ( src/Text/ParserCombinators/Poly/Plain.hs, dist/build/Text/ParserCombinators/Poly/Plain.o, dist/build/Text/ParserCombinators/Poly/Plain.dyn_o )
[ 7 of 18] Compiling Text.ParserCombinators.Poly ( src/Text/ParserCombinators/Poly.hs, dist/build/Text/ParserCombinators/Poly.o, dist/build/Text/ParserCombinators/Poly.dyn_o )
[ 8 of 18] Compiling Text.Parse ( src/Text/Parse.hs, dist/build/Text/Parse.o, dist/build/Text/Parse.dyn_o )
src/Text/Parse.hs:400:36: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
400 | parseList = do { w <- word; if head w == '"' then return (init (tail w))
| ^^^^
src/Text/Parse.hs:400:69: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
400 | parseList = do { w <- word; if head w == '"' then return (init (tail w))
| ^^^^
[ 9 of 18] Compiling Text.ParserCombinators.Poly.Lex ( src/Text/ParserCombinators/Poly/Lex.hs, dist/build/Text/ParserCombinators/Poly/Lex.o, dist/build/Text/ParserCombinators/Poly/Lex.dyn_o )
[10 of 18] Compiling Text.ParserCombinators.Poly.Lazy ( src/Text/ParserCombinators/Poly/Lazy.hs, dist/build/Text/ParserCombinators/Poly/Lazy.o, dist/build/Text/ParserCombinators/Poly/Lazy.dyn_o )
[11 of 18] Compiling Text.ParserCombinators.Poly.ByteStringChar ( src/Text/ParserCombinators/Poly/ByteStringChar.hs, dist/build/Text/ParserCombinators/Poly/ByteStringChar.o, dist/build/Text/ParserCombinators/Poly/ByteStringChar.dyn_o )
[12 of 18] Compiling Text.Parse.ByteString ( src/Text/Parse/ByteString.hs, dist/build/Text/Parse/ByteString.o, dist/build/Text/Parse/ByteString.dyn_o )
src/Text/Parse/ByteString.hs:440:36: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
440 | parseList = do { w <- word; if head w == '"' then return (init (tail w))
| ^^^^
src/Text/Parse/ByteString.hs:440:69: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
440 | parseList = do { w <- word; if head w == '"' then return (init (tail w))
| ^^^^
[13 of 18] Compiling Text.ParserCombinators.Poly.ByteString ( src/Text/ParserCombinators/Poly/ByteString.hs, dist/build/Text/ParserCombinators/Poly/ByteString.o, dist/build/Text/ParserCombinators/Poly/ByteString.dyn_o )
[14 of 18] Compiling Text.ParserCombinators.Poly.StateParser ( src/Text/ParserCombinators/Poly/StateParser.hs, dist/build/Text/ParserCombinators/Poly/StateParser.o, dist/build/Text/ParserCombinators/Poly/StateParser.dyn_o )
[15 of 18] Compiling Text.ParserCombinators.Poly.StateLazy ( src/Text/ParserCombinators/Poly/StateLazy.hs, dist/build/Text/ParserCombinators/Poly/StateLazy.o, dist/build/Text/ParserCombinators/Poly/StateLazy.dyn_o )
[16 of 18] Compiling Text.ParserCombinators.Poly.State ( src/Text/ParserCombinators/Poly/State.hs, dist/build/Text/ParserCombinators/Poly/State.o, dist/build/Text/ParserCombinators/Poly/State.dyn_o )
[17 of 18] Compiling Text.ParserCombinators.Poly.StateText ( src/Text/ParserCombinators/Poly/StateText.hs, dist/build/Text/ParserCombinators/Poly/StateText.o, dist/build/Text/ParserCombinators/Poly/StateText.dyn_o )
[18 of 18] Compiling Text.ParserCombinators.Poly.Text ( src/Text/ParserCombinators/Poly/Text.hs, dist/build/Text/ParserCombinators/Poly/Text.o, dist/build/Text/ParserCombinators/Poly/Text.dyn_o )
Preprocessing library for polyparse-1.13.1..
Running Haddock on library for polyparse-1.13.1..
Warning: --source-* options are ignored when --hyperlinked-source is enabled.
[ 1 of 18] Compiling Text.ParserCombinators.HuttonMeijer ( src/Text/ParserCombinators/HuttonMeijer.hs, nothing )
[ 2 of 18] Compiling Text.ParserCombinators.HuttonMeijerWallace ( src/Text/ParserCombinators/HuttonMeijerWallace.hs, nothing )
[ 3 of 18] Compiling Text.ParserCombinators.Poly.Base ( src/Text/ParserCombinators/Poly/Base.hs, nothing )
[ 4 of 18] Compiling Text.ParserCombinators.Poly.Result ( src/Text/ParserCombinators/Poly/Result.hs, nothing )
[ 5 of 18] Compiling Text.ParserCombinators.Poly.Parser ( src/Text/ParserCombinators/Poly/Parser.hs, nothing )
[ 6 of 18] Compiling Text.ParserCombinators.Poly.Plain ( src/Text/ParserCombinators/Poly/Plain.hs, nothing )
[ 7 of 18] Compiling Text.ParserCombinators.Poly ( src/Text/ParserCombinators/Poly.hs, nothing )
[ 8 of 18] Compiling Text.Parse ( src/Text/Parse.hs, nothing )
src/Text/Parse.hs:400:36: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
400 | parseList = do { w <- word; if head w == '"' then return (init (tail w))
| ^^^^
src/Text/Parse.hs:400:69: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
400 | parseList = do { w <- word; if head w == '"' then return (init (tail w))
| ^^^^
[ 9 of 18] Compiling Text.ParserCombinators.Poly.Lex ( src/Text/ParserCombinators/Poly/Lex.hs, nothing )
[10 of 18] Compiling Text.ParserCombinators.Poly.Lazy ( src/Text/ParserCombinators/Poly/Lazy.hs, nothing )
[11 of 18] Compiling Text.ParserCombinators.Poly.ByteStringChar ( src/Text/ParserCombinators/Poly/ByteStringChar.hs, nothing )
[12 of 18] Compiling Text.Parse.ByteString ( src/Text/Parse/ByteString.hs, nothing )
src/Text/Parse/ByteString.hs:440:36: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
440 | parseList = do { w <- word; if head w == '"' then return (init (tail w))
| ^^^^
src/Text/Parse/ByteString.hs:440:69: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
440 | parseList = do { w <- word; if head w == '"' then return (init (tail w))
| ^^^^
[13 of 18] Compiling Text.ParserCombinators.Poly.ByteString ( src/Text/ParserCombinators/Poly/ByteString.hs, nothing )
[14 of 18] Compiling Text.ParserCombinators.Poly.StateParser ( src/Text/ParserCombinators/Poly/StateParser.hs, nothing )
[15 of 18] Compiling Text.ParserCombinators.Poly.StateLazy ( src/Text/ParserCombinators/Poly/StateLazy.hs, nothing )
[16 of 18] Compiling Text.ParserCombinators.Poly.State ( src/Text/ParserCombinators/Poly/State.hs, nothing )
[17 of 18] Compiling Text.ParserCombinators.Poly.StateText ( src/Text/ParserCombinators/Poly/StateText.hs, nothing )
[18 of 18] Compiling Text.ParserCombinators.Poly.Text ( src/Text/ParserCombinators/Poly/Text.hs, nothing )
Haddock coverage:
5% ( 2 / 36) in 'Text.ParserCombinators.HuttonMeijer'
Missing documentation for:
item (src/Text/ParserCombinators/HuttonMeijer.hs:90)
first (src/Text/ParserCombinators/HuttonMeijer.hs:95)
papply (src/Text/ParserCombinators/HuttonMeijer.hs:100)
+++ (src/Text/ParserCombinators/HuttonMeijer.hs:107)
sat (src/Text/ParserCombinators/HuttonMeijer.hs:110)
many (src/Text/ParserCombinators/HuttonMeijer.hs:116)
many1 (src/Text/ParserCombinators/HuttonMeijer.hs:120)
sepby (src/Text/ParserCombinators/HuttonMeijer.hs:123)
sepby1 (src/Text/ParserCombinators/HuttonMeijer.hs:126)
chainl (src/Text/ParserCombinators/HuttonMeijer.hs:129)
chainl1 (src/Text/ParserCombinators/HuttonMeijer.hs:132)
chainr (src/Text/ParserCombinators/HuttonMeijer.hs:138)
chainr1 (src/Text/ParserCombinators/HuttonMeijer.hs:141)
ops (src/Text/ParserCombinators/HuttonMeijer.hs:147)
bracket (src/Text/ParserCombinators/HuttonMeijer.hs:150)
char (src/Text/ParserCombinators/HuttonMeijer.hs:157)
digit (src/Text/ParserCombinators/HuttonMeijer.hs:160)
lower (src/Text/ParserCombinators/HuttonMeijer.hs:163)
upper (src/Text/ParserCombinators/HuttonMeijer.hs:166)
letter (src/Text/ParserCombinators/HuttonMeijer.hs:169)
alphanum (src/Text/ParserCombinators/HuttonMeijer.hs:172)
string (src/Text/ParserCombinators/HuttonMeijer.hs:175)
ident (src/Text/ParserCombinators/HuttonMeijer.hs:179)
nat (src/Text/ParserCombinators/HuttonMeijer.hs:182)
int (src/Text/ParserCombinators/HuttonMeijer.hs:187)
spaces (src/Text/ParserCombinators/HuttonMeijer.hs:194)
comment (src/Text/ParserCombinators/HuttonMeijer.hs:202)
junk (src/Text/ParserCombinators/HuttonMeijer.hs:207)
skip (src/Text/ParserCombinators/HuttonMeijer.hs:210)
token (src/Text/ParserCombinators/HuttonMeijer.hs:213)
natural (src/Text/ParserCombinators/HuttonMeijer.hs:220)
integer (src/Text/ParserCombinators/HuttonMeijer.hs:223)
symbol (src/Text/ParserCombinators/HuttonMeijer.hs:226)
identifier (src/Text/ParserCombinators/HuttonMeijer.hs:229)
77% ( 24 / 31) in 'Text.ParserCombinators.HuttonMeijerWallace'
Missing documentation for:
Parser (src/Text/ParserCombinators/HuttonMeijerWallace.hs:67)
chainl (src/Text/ParserCombinators/HuttonMeijerWallace.hs:229)
chainl1 (src/Text/ParserCombinators/HuttonMeijerWallace.hs:232)
chainr (src/Text/ParserCombinators/HuttonMeijerWallace.hs:239)
chainr1 (src/Text/ParserCombinators/HuttonMeijerWallace.hs:242)
ops (src/Text/ParserCombinators/HuttonMeijerWallace.hs:251)
bracket (src/Text/ParserCombinators/HuttonMeijerWallace.hs:256)
95% ( 23 / 24) in 'Text.ParserCombinators.Poly.Base'
Missing documentation for:
Module header
75% ( 3 / 4) in 'Text.ParserCombinators.Poly.Result'
Missing documentation for:
Module header
100% ( 12 / 12) in 'Text.ParserCombinators.Poly.Parser'
93% ( 15 / 16) in 'Text.ParserCombinators.Poly.Plain'
Missing documentation for:
Module header
50% ( 1 / 2) in 'Text.ParserCombinators.Poly'
Missing documentation for:
Module header
76% ( 23 / 30) in 'Text.Parse'
Missing documentation for:
Module header
parseSigned (src/Text/Parse.hs:230)
parseInt (src/Text/Parse.hs:237)
parseDec (src/Text/Parse.hs:243)
parseOct (src/Text/Parse.hs:244)
parseHex (src/Text/Parse.hs:245)
parseFloat (src/Text/Parse.hs:248)
100% ( 16 / 16) in 'Text.ParserCombinators.Poly.Lex'
93% ( 15 / 16) in 'Text.ParserCombinators.Poly.Lazy'
Missing documentation for:
Module header
94% ( 16 / 17) in 'Text.ParserCombinators.Poly.ByteStringChar'
Missing documentation for:
Module header
96% ( 31 / 32) in 'Text.Parse.ByteString'
Missing documentation for:
Module header
94% ( 16 / 17) in 'Text.ParserCombinators.Poly.ByteString'
Missing documentation for:
Module header
100% ( 15 / 15) in 'Text.ParserCombinators.Poly.StateParser'
94% ( 33 / 35) in 'Text.ParserCombinators.Poly.StateLazy'
Missing documentation for:
Module header
manyFinally (src/Text/ParserCombinators/Poly/StateLazy.hs:165)
94% ( 18 / 19) in 'Text.ParserCombinators.Poly.State'
Missing documentation for:
Module header
95% ( 21 / 22) in 'Text.ParserCombinators.Poly.StateText'
Missing documentation for:
Module header
94% ( 17 / 18) in 'Text.ParserCombinators.Poly.Text'
Missing documentation for:
Module header
Warning: Text.ParserCombinators.HuttonMeijer: could not find link destinations for:
- Text.ParserCombinators.HuttonMeijer.Token
Warning: Text.ParserCombinators.HuttonMeijerWallace: could not find link destinations for:
- Text.ParserCombinators.HuttonMeijerWallace.ParseResult
Documentation created: dist/doc/html/polyparse/,
dist/doc/html/polyparse/polyparse.txt
Installing library in /var/lib/hackage-doc-builder/build-cache/tmp-install/lib/x86_64-linux-ghc-9.8.4/polyparse-1.13.1-3JNhUz69dQj31c1iqOQR1I
Completed polyparse-1.13.1
Downloading cpphs-1.20.10
Downloaded cpphs-1.20.10
Configuring cpphs-1.20.10...
Preprocessing executable 'cpphs' for cpphs-1.20.10..
Building executable 'cpphs' for cpphs-1.20.10..
[ 1 of 13] Compiling Language.Preprocessor.Cpphs.HashDefine ( Language/Preprocessor/Cpphs/HashDefine.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs/HashDefine.o )
[ 2 of 13] Compiling Language.Preprocessor.Cpphs.Options ( Language/Preprocessor/Cpphs/Options.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs/Options.o )
Language/Preprocessor/Cpphs/Options.hs:106:67: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
106 | rawOption ('-':'D':xs) = Just $ Macro (s, if null d then "1" else tail d)
| ^^^^
[ 3 of 13] Compiling Language.Preprocessor.Cpphs.Position ( Language/Preprocessor/Cpphs/Position.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs/Position.o )
Language/Preprocessor/Cpphs/Position.hs:90:56: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
90 | ++unwords (tail (words line))
| ^^^^
[ 4 of 13] Compiling Language.Preprocessor.Cpphs.ReadFirst ( Language/Preprocessor/Cpphs/ReadFirst.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs/ReadFirst.o )
[ 5 of 13] Compiling Language.Preprocessor.Cpphs.SymTab ( Language/Preprocessor/Cpphs/SymTab.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs/SymTab.o )
Language/Preprocessor/Cpphs/SymTab.hs:42:43: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
42 | else (Just . snd . head) vs
| ^^^^
[ 6 of 13] Compiling Language.Preprocessor.Cpphs.Tokenise ( Language/Preprocessor/Cpphs/Tokenise.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs/Tokenise.o )
[ 7 of 13] Compiling Language.Preprocessor.Unlit ( Language/Preprocessor/Unlit.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Unlit.o )
[ 8 of 13] Compiling TimeCompat ( new/TimeCompat.hs, dist/build/cpphs/cpphs-tmp/TimeCompat.o )
[ 9 of 13] Compiling Language.Preprocessor.Cpphs.MacroPass ( Language/Preprocessor/Cpphs/MacroPass.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs/MacroPass.o )
[10 of 13] Compiling Language.Preprocessor.Cpphs.CppIfdef ( Language/Preprocessor/Cpphs/CppIfdef.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs/CppIfdef.o )
Language/Preprocessor/Cpphs/CppIfdef.hs:76:39: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
76 | cmd = if null ws then "" else head ws
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:77:40: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
77 | line = if null ws then [] else tail ws
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:78:42: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
78 | sym = if null line then "" else head line
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:79:42: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
79 | rest = if null line then [] else tail line
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:100:45: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
100 | "endif" -> skipn syms False (Keep (tail ps)) xs
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:124:47: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
124 | cpp (newpos (read n) (un (tail ws)) p)
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:135:39: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
135 | cmd = if null ws then "" else head ws
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:139:38: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
139 | dend | n==1 = Keep (tail ps)
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:140:46: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
140 | | otherwise = Drop (n-1) b (tail ps)
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:152:72: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
152 | else if cmd == "elif" then do v <- gatherDefined p syms (unwords (tail ws))
| ^^^^
[11 of 13] Compiling Language.Preprocessor.Cpphs.RunCpphs ( Language/Preprocessor/Cpphs/RunCpphs.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs/RunCpphs.o )
[12 of 13] Compiling Language.Preprocessor.Cpphs ( Language/Preprocessor/Cpphs.hs, dist/build/cpphs/cpphs-tmp/Language/Preprocessor/Cpphs.o )
[13 of 13] Compiling Main ( cpphs.hs, dist/build/cpphs/cpphs-tmp/Main.o )
[14 of 14] Linking dist/build/cpphs/cpphs
Preprocessing library for cpphs-1.20.10..
Building library for cpphs-1.20.10..
[ 1 of 12] Compiling Language.Preprocessor.Cpphs.HashDefine ( Language/Preprocessor/Cpphs/HashDefine.hs, dist/build/Language/Preprocessor/Cpphs/HashDefine.o, dist/build/Language/Preprocessor/Cpphs/HashDefine.dyn_o )
[ 2 of 12] Compiling Language.Preprocessor.Cpphs.Options ( Language/Preprocessor/Cpphs/Options.hs, dist/build/Language/Preprocessor/Cpphs/Options.o, dist/build/Language/Preprocessor/Cpphs/Options.dyn_o )
Language/Preprocessor/Cpphs/Options.hs:106:67: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
106 | rawOption ('-':'D':xs) = Just $ Macro (s, if null d then "1" else tail d)
| ^^^^
[ 3 of 12] Compiling Language.Preprocessor.Cpphs.Position ( Language/Preprocessor/Cpphs/Position.hs, dist/build/Language/Preprocessor/Cpphs/Position.o, dist/build/Language/Preprocessor/Cpphs/Position.dyn_o )
Language/Preprocessor/Cpphs/Position.hs:90:56: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
90 | ++unwords (tail (words line))
| ^^^^
[ 4 of 12] Compiling Language.Preprocessor.Cpphs.ReadFirst ( Language/Preprocessor/Cpphs/ReadFirst.hs, dist/build/Language/Preprocessor/Cpphs/ReadFirst.o, dist/build/Language/Preprocessor/Cpphs/ReadFirst.dyn_o )
[ 5 of 12] Compiling Language.Preprocessor.Cpphs.SymTab ( Language/Preprocessor/Cpphs/SymTab.hs, dist/build/Language/Preprocessor/Cpphs/SymTab.o, dist/build/Language/Preprocessor/Cpphs/SymTab.dyn_o )
Language/Preprocessor/Cpphs/SymTab.hs:42:43: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
42 | else (Just . snd . head) vs
| ^^^^
[ 6 of 12] Compiling Language.Preprocessor.Cpphs.Tokenise ( Language/Preprocessor/Cpphs/Tokenise.hs, dist/build/Language/Preprocessor/Cpphs/Tokenise.o, dist/build/Language/Preprocessor/Cpphs/Tokenise.dyn_o )
[ 7 of 12] Compiling Language.Preprocessor.Unlit ( Language/Preprocessor/Unlit.hs, dist/build/Language/Preprocessor/Unlit.o, dist/build/Language/Preprocessor/Unlit.dyn_o )
[ 8 of 12] Compiling TimeCompat ( new/TimeCompat.hs, dist/build/TimeCompat.o, dist/build/TimeCompat.dyn_o )
[ 9 of 12] Compiling Language.Preprocessor.Cpphs.MacroPass ( Language/Preprocessor/Cpphs/MacroPass.hs, dist/build/Language/Preprocessor/Cpphs/MacroPass.o, dist/build/Language/Preprocessor/Cpphs/MacroPass.dyn_o )
[10 of 12] Compiling Language.Preprocessor.Cpphs.CppIfdef ( Language/Preprocessor/Cpphs/CppIfdef.hs, dist/build/Language/Preprocessor/Cpphs/CppIfdef.o, dist/build/Language/Preprocessor/Cpphs/CppIfdef.dyn_o )
Language/Preprocessor/Cpphs/CppIfdef.hs:76:39: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
76 | cmd = if null ws then "" else head ws
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:77:40: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
77 | line = if null ws then [] else tail ws
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:78:42: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
78 | sym = if null line then "" else head line
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:79:42: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
79 | rest = if null line then [] else tail line
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:100:45: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
100 | "endif" -> skipn syms False (Keep (tail ps)) xs
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:124:47: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
124 | cpp (newpos (read n) (un (tail ws)) p)
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:135:39: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
135 | cmd = if null ws then "" else head ws
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:139:38: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
139 | dend | n==1 = Keep (tail ps)
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:140:46: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
140 | | otherwise = Drop (n-1) b (tail ps)
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:152:72: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
152 | else if cmd == "elif" then do v <- gatherDefined p syms (unwords (tail ws))
| ^^^^
[11 of 12] Compiling Language.Preprocessor.Cpphs.RunCpphs ( Language/Preprocessor/Cpphs/RunCpphs.hs, dist/build/Language/Preprocessor/Cpphs/RunCpphs.o, dist/build/Language/Preprocessor/Cpphs/RunCpphs.dyn_o )
[12 of 12] Compiling Language.Preprocessor.Cpphs ( Language/Preprocessor/Cpphs.hs, dist/build/Language/Preprocessor/Cpphs.o, dist/build/Language/Preprocessor/Cpphs.dyn_o )
Preprocessing executable 'cpphs' for cpphs-1.20.10..
Preprocessing library for cpphs-1.20.10..
Running Haddock on library for cpphs-1.20.10..
Warning: --source-* options are ignored when --hyperlinked-source is enabled.
[ 1 of 12] Compiling Language.Preprocessor.Cpphs.HashDefine ( Language/Preprocessor/Cpphs/HashDefine.hs, nothing )
[ 2 of 12] Compiling Language.Preprocessor.Cpphs.Options ( Language/Preprocessor/Cpphs/Options.hs, nothing )
Language/Preprocessor/Cpphs/Options.hs:106:67: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
106 | rawOption ('-':'D':xs) = Just $ Macro (s, if null d then "1" else tail d)
| ^^^^
[ 3 of 12] Compiling Language.Preprocessor.Cpphs.Position ( Language/Preprocessor/Cpphs/Position.hs, nothing )
Language/Preprocessor/Cpphs/Position.hs:90:56: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
90 | ++unwords (tail (words line))
| ^^^^
[ 4 of 12] Compiling Language.Preprocessor.Cpphs.ReadFirst ( Language/Preprocessor/Cpphs/ReadFirst.hs, nothing )
[ 5 of 12] Compiling Language.Preprocessor.Cpphs.SymTab ( Language/Preprocessor/Cpphs/SymTab.hs, nothing )
Language/Preprocessor/Cpphs/SymTab.hs:42:43: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
42 | else (Just . snd . head) vs
| ^^^^
[ 6 of 12] Compiling Language.Preprocessor.Cpphs.Tokenise ( Language/Preprocessor/Cpphs/Tokenise.hs, nothing )
[ 7 of 12] Compiling Language.Preprocessor.Unlit ( Language/Preprocessor/Unlit.hs, nothing )
[ 8 of 12] Compiling TimeCompat ( new/TimeCompat.hs, nothing )
[ 9 of 12] Compiling Language.Preprocessor.Cpphs.MacroPass ( Language/Preprocessor/Cpphs/MacroPass.hs, nothing )
[10 of 12] Compiling Language.Preprocessor.Cpphs.CppIfdef ( Language/Preprocessor/Cpphs/CppIfdef.hs, nothing )
Language/Preprocessor/Cpphs/CppIfdef.hs:76:39: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
76 | cmd = if null ws then "" else head ws
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:77:40: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
77 | line = if null ws then [] else tail ws
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:78:42: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
78 | sym = if null line then "" else head line
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:79:42: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
79 | rest = if null line then [] else tail line
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:100:45: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
100 | "endif" -> skipn syms False (Keep (tail ps)) xs
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:124:47: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
124 | cpp (newpos (read n) (un (tail ws)) p)
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:135:39: warning: [GHC-63394] [-Wx-partial]
In the use of head
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
135 | cmd = if null ws then "" else head ws
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:139:38: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
139 | dend | n==1 = Keep (tail ps)
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:140:46: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
140 | | otherwise = Drop (n-1) b (tail ps)
| ^^^^
Language/Preprocessor/Cpphs/CppIfdef.hs:152:72: warning: [GHC-63394] [-Wx-partial]
In the use of tail
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
152 | else if cmd == "elif" then do v <- gatherDefined p syms (unwords (tail ws))
| ^^^^
[11 of 12] Compiling Language.Preprocessor.Cpphs.RunCpphs ( Language/Preprocessor/Cpphs/RunCpphs.hs, nothing )
[12 of 12] Compiling Language.Preprocessor.Cpphs ( Language/Preprocessor/Cpphs.hs, nothing )
Haddock coverage:
Warning: 'smart' is out of scope.
If you qualify the identifier, haddock can try to link it anyway.
100% ( 2 / 2) in 'Language.Preprocessor.Unlit'
86% ( 25 / 29) in 'Language.Preprocessor.Cpphs'
Missing documentation for:
runCpphs (Language/Preprocessor/Cpphs/RunCpphs.hs:23)
runCpphsPass1 (Language/Preprocessor/Cpphs/RunCpphs.hs:28)
runCpphsPass2 (Language/Preprocessor/Cpphs/RunCpphs.hs:41)
runCpphsReturningSymTab (Language/Preprocessor/Cpphs/RunCpphs.hs:55)
Warning: Language.Preprocessor.Cpphs: could not find link destinations for:
- Language.Preprocessor.Cpphs.HashDefine.HashDefine
Documentation created: dist/doc/html/cpphs/, dist/doc/html/cpphs/cpphs.txt
Installing executable cpphs in /var/lib/hackage-doc-builder/build-cache/tmp-install/bin
Warning: The directory
/var/lib/hackage-doc-builder/build-cache/tmp-install/bin is not in the system
search path.
Installing library in /var/lib/hackage-doc-builder/build-cache/tmp-install/lib/x86_64-linux-ghc-9.8.4/cpphs-1.20.10-HPTLKFqOoIsGNv2YGUXjjo
Completed cpphs-1.20.10
Test log
[view raw]
Resolving dependencies... No tests to run for all the packages in the project