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 about 9 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 about 9 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 about 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 over 8 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