Thanks, but I want a nice solution not another, even more complicated, workaround.
On 5 May 2009 at 17:10, Martijn van Steenbergen wrote: > mwin...@brocku.ca wrote: > > Hi, > > > > I am using parsec to parse a small programming language. The language is > > typed and > > I need to do some type checking, too. I have decided to do the parsing and > > type checking > > simultaneously in the my parsec parser. This approach avoids to keep source > > code positions > > in the data type in order to produce suitable error messages during type > > checking. Anyhow, > > because type errors are usually detected after parsing some code I need > > produce error > > messages with an earlier source position. Unfortunately, there is no > > function that produces > > an error taking a position as parameter. > > If you already know what position you want to report the error at, then > why bother calling setPosition to let parsec know? Just do: > > > fail (show pos ++ ": " ++ msg) > > Parsec will then result in a ParseError with its own ideas of location, > but you can ignore that. > > HTH, > > Martijn. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe