id,summary,reporter,owner,description,type,status,priority,milestone,component,version,severity,resolution,keywords,cc,difficulty,ghcversion,platform
191,Hackage should check for common QA problems in ghc-options,duncan,,"Simple test that many packages have is dodgy ghc-options, or options that would be suitable for development but not release. It should be easy to check for these.

Suggestions:

{{{ghc-options: -Wall -Werror}}} is a very bad combination. It means the package will break silently as soon as the next version of ghc adds a new warning, which generally does happen every major release.

{{{ghc-options: -fasm}}} is unnecessary and breaks on all arches except for x86, x86-64 and ppc.

{{{ghc-options: -O}}} is unnecessary since Cabal does that itself and it prevents people from configuring with the {{{--disable-optimization}}} flag.

{{{ghc-options: -O2}}} may be necessary in some circumstances but people should not use it routinely for the same reasons as -O and since -O2 take a lot longer to compile most of the time and usually with little benefit.


{{{ghc-options: -ffi}}} or {{{-fffi}}} use extensions: ForeignFunctionInterface.

Once #190 is implemented then {{{ghc-options: -fvia-C}}} will be unnecessary too.
==  ==
",enhancement,closed,normal,Cabal-1.4,Cabal library,1.2.2.0,normal,fixed,,,easy (<4 hours),6.8.1,
