Ambiguity resolve does not handle multiple {avoid} cases
With the following rules:
Conversion -> PrimaryExpr{avoid} BuiltinCall -> PrimaryExpr{avoid} PrimaryExpr Call -> PrimaryExpr{cons("CallPrimaryExpr")}
I get the following amb:
amb( [ Conversion(...)) , BuiltinCall(...) , CallPrimaryExpr(...) ] )
Which should instead resolve to CallPrimaryExpr, since it is the only one not marked with avoid. Current (apparently) working workaround is to do the following:
Submitted by Sverre Rabbelier on 14 May 2011 at 20:00AvoidPrimaryExpr -> PrimaryExpr{avoid} Conversion -> AvoidPrimaryExpr BuiltinCall -> AvoidPrimaryExpr PrimaryExpr Call -> PrimaryExpr{cons("CallPrimaryExpr")}
Issue Log
On 14 May 2011 at 20:39 Lennart Kats tagged parser
On 14 May 2011 at 20:39 Lennart Kats tagged minor
On 16 May 2011 at 10:21 Lennart Kats commented:
With what version do you get this? If you disable parse filters (command-line parse with option -f) is the AST different for the workaround syntax?
On 19 May 2011 at 02:03 Sverre Rabbelier commented:
Seems to be fixed on the nightly build.
On 19 May 2011 at 10:25 Lennart Kats tagged 1.0
On 19 May 2011 at 10:25 Lennart Kats closed this issue.
Log in to post comments