Bug #2297
closedMultiple comparisons in expressions wrongly allowed in XQuery syntax
100%
Description
Saxon allows multiple comparison operators in an expression (non-parenthesized), but this should not be allowed. e.g. See the failure of QT3 test op-boolean-equal-18: the expression 'true() eq true() eq true() eq true()' evaluates to true, but it should give a syntax error.
Updated by Michael Kay almost 10 years ago
Another example is
10 to 10 to 11
which Saxon incorrectly accepts as valid, returning the result (10, 11).
Test case -s:op-to -t:rangeExpr-33 added.
Updated by Debbie Lockett almost 10 years ago
- Status changed from New to Resolved
- Assignee set to Debbie Lockett
- % Done changed from 0 to 100
Associativity of operator check added to precedence algorithm in parseBinaryExpression() method of XPathParser.
Patch committed to subversion (for 9.6 and 9.7). A few more test cases also added (to op-GeneralComp.eq, op-GeneralComp.lt, prod-is-same-node test sets).
Updated by O'Neil Delpratt over 9 years ago
- Status changed from Resolved to Closed
- Fixed in version set to 9.6.0.5
Bug fix applied in the Saxon 9.6.0.5 maintenance release.
Updated by O'Neil Delpratt almost 9 years ago
- Sprint/Milestone set to 9.6.0.5
- Applies to branch 9.6 added
- Fix Committed on Branch 9.6 added
- Fixed in Maintenance Release 9.6.0.5 added
Please register to edit this issue