Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Haskell/Alex: Warning: Tab character

I'm writing a toy language in haskell. I'm using Alex to generate a scanner. Every time I build my project with cabal, I get the following warnings:

dist/build/optimiser/optimiser-tmp/Lexer.hs:465:1: Warning:
    Tab character

dist/build/optimiser/optimiser-tmp/Lexer.hs:466:1: Warning:
    Tab character

dist/build/optimiser/optimiser-tmp/Lexer.hs:467:1: Warning:
    Tab character

dist/build/optimiser/optimiser-tmp/Lexer.hs:471:1: Warning:
    Tab character

dist/build/optimiser/optimiser-tmp/Lexer.hs:472:1: Warning:
    Tab character

(plus about 10 more of these warnings)

It seems that the alex-generated scanner uses tabs instead of spaces, and ghc's default behaviour is to warn the user about this.

Is anyone aware of a way to either force alex to use spaces, or to suppress those warnings from ghc (via cabal)?

like image 618
AlexJ136 Avatar asked May 14 '15 11:05

AlexJ136


1 Answers

As mentioned in the comments, this is supposedly fixed in alex master. Until you can use the fixed version, you can try adding

ghc-options: -fno-warn-tabs

to your .cabal file.

like image 112
Daniel Wagner Avatar answered Oct 23 '22 20:10

Daniel Wagner