I have a small Parsec program which I test using a QuickCheck script that generates an input file and an intended parse in parallel.
My test usually run the 100 tests fine, but then suddenly as I was casually testing something, they failed with a very large (600,000 chars) counter example. When I found out the source of the error, I got very confused:
\ETX\NUL\202&Hxv4\an3z\244\143\222\RS\236\n\150K
QuickCheck had apparently generated the above string for a variable name, even though I only use alphaNum, underscore and whitespace in my program.
Can you see any reason why the above sequence could arise? Could it be an overflow error somewhere? Or QuickCheck running tempoarily out of memory and writing a debug message?