[clean-list] Black Screen Death in parser: tokenBack with empty token buffer

John van Groningen johnvg at cs.ru.nl
Thu Aug 13 14:50:17 MEST 2009


Vag Vagoff wrote:

>module a
>
>Start = let where

This happens because the scanner recursively calls itself when a new offside
begins, this causes 2 extra tokens in the token buffer, it overflows and
later causes a crash because it cannot retrieve an old token.

Because a correct Clean program does not contains two or more
consecutive tokens that begin a new offside, this should only happen for
incorrect programs.

This error has been fixed in the scanner of the Haskell frontend of
the Clean compiler. I will try to port this to the Clean scanner after the
Haskell frontend scanner has been tested sufficiently.

Kind regards,

John van Groningen


More information about the clean-list mailing list