При создании парса Lexer.x
или Parser.y
с использованием генератора Alex lexer или генератора счастливого парсера, скомпилирования этих файлов в файлы Haskell и их компиляции в объектные файлы, по умолчанию это приведет к созданию следующие «предупреждения»:Подавить определенные сообщения Haskell Alex/Happy компиляции
$ ghc Lexer
line-map.c: file "<command-line>" left but not entered
line-map.c: file "<command-line>" left but not entered
[1 of 1] Compiling Lexer (Lexer.hs, Lexer.o)
$ happy Parser.y
$ ghc Parser
line-map.c: file "<command-line>" left but not entered
line-map.c: file "<command-line>" left but not entered
[2 of 2] Compiling Parser (Parser.hs, Parser.o)
эти линии возникают в результате следующих линий, встроенных в сгенерированных .hs
файлов:
{-# LINE 1 "<command-line>" #-}
Почему эти линии включают в себя d, и есть ли способ подавить эти сообщения в случае, если строка командной строки, по-видимому, не используется ни для чего в сгенерированном лексере и синтаксическом анализаторе?