Description
#1172 makes company (and presumably also auto-complete) not work at all, because it overwrites completion-at-point-functions
here.
I don't know about auto-complete, but company-mode with company-dabbrev-code and company-etags backends provides great auto-completion facilities (and in case of company-etags ability to jump to source with C-w directly from the list of completions) and currently it's got silently suppressed by a piece of code that offers completion of keywords/pragmas and simple declarations alone.
#1172 should've been implemented as either auto-complete or company backend (as was already mentioned by @cocreature in #215) instead of hard-coding it into haskell-mode as it effectively hides company/auto-complete functionality from users.
At the very least, if the completion code is kept in its current state, at least make overwriting completion-at-point-functions
optional and disable it by default. But really it should be made into company backend so it composes with other backends.