Id: 32 Subject: assertion failure on unparsable input Tracker: Bug Status: Closed Fixed-Version: Created-On: Sat Mar 20 10:50:26 -0700 2010 Updated-On: Sat Mar 20 11:24:30 -0700 2010 run with args: ./tmp.bin -qv -h -o output -ieth0 file Fails due to '0' in -i arg. Instead of parse error, an assertion fails.
lex args
{   
    literal '-'
    token file /^('-'|0)(^0)*/
}

token word /(^0)+/
token zero /0/ 

lex opts
{
    token single /[qvh]/
    token with_opt /[oi]/
}

def item
    [file zero]
|   ['-' single* zero]
|   ['-' with_opt zero? zero]

def args 
    [word zero item*]

accum arg_parser [args] 
arg_parser ArgParser =
    construct arg_parser []
    
argv_list ArgV = argv
for A: str in ArgV 
    ArgParser << [A '\0']
        
args Args = ArgParser.finish() 

print_xml( Args )