id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc,os,architecture,failure,difficulty,testcase,blockedby,blocking,related
3050,parsec: bug in caret escape parsing,sof,,"The parsing of escape carets in character literals isn't quite right:
 * off-by-one (i.e., \^A == \NUL; ought to be \^A=\001)
 * only A-Z carets are supported.

The following minor mod takes care of the problem:

{{{
--- Text/ParserCombinators/Parsec/Token.hs	2009-02-20 10:49:32.115500000 -0800
+++ Text/ParserCombinators/Parsec/Token.hs.~1~	2009-02-20 10:02:45.896750000 -0800
@@ -193,8 +193,8 @@
 
     -- charControl :: CharParser st Char
     charControl     = do{ char '^'
-                        ; code <- (oneOf ['@'..'_']) <|> char '?'
-                        ; return (if code == '?' then '\DEL' else toEnum (fromEnum code - fromEnum '@'))
+                        ; code <- upper
+                        ; return (toEnum (fromEnum code - fromEnum 'A'))
                         }
}}}
",bug,closed,normal,Not GHC,libraries (other),6.10.1,invalid,,sof michal.terepeta@…,Unknown/Multiple,Unknown/Multiple,None/Unknown,Unknown,,,,
