Fix parsing of OPTIONS*/LANGUAGE pragmas in haddock mode
authorIan Lynagh <igloo@earth.li>
Wed, 30 Nov 2011 22:49:05 +0000 (22:49 +0000)
committerIan Lynagh <igloo@earth.li>
Wed, 30 Nov 2011 23:12:20 +0000 (23:12 +0000)
commitb3e30449aa6d6eaa978eb3c7447ca85985d9d251
tree655b16d04755e60ab44900f0d311deba12aa215a
parentcdbb4720c424500adb57cbbef69721d0b039fa46
Fix parsing of OPTIONS*/LANGUAGE pragmas in haddock mode

When getting options from basicTypes/RdrName.lhs, we were seeing
text like "-- |\n-- ...\n" in the buffer, and lexer then recognises
"-- |\n-- ..." as a complete ITdocCommentNext token, with the end of
the buffer not reached.

Next time round, when we get more input into the buffer, it started
"\n-- * 'Var.Var': see", so the lexer gave us an ITdocSection token.

However, getOptions' only knew about ITdocCommentNext, and so it
stopped at that point, and didn't see the pragmas further down the file.
This caused the build to fail due to -fwarn-tabs not being turned off.

But actually, we don't really want the haddock docs at this point, so
now we just unset Opt_Haddock in getOptionsFromFile.
compiler/main/HeaderInfo.hs