Bug #2700
closedDynamic function calls in Saxon-HE
100%
Description
In Saxon-HE, dynamic function calls are rejected by the XPath parser on the basis that the Higher Order Function feature is not supported.
However, in both XQuery and XSLT, the conformance rules for a processor that doesn't support the HOF feature say that dynamic function calls should be allowed; the operand of the dynamic function call will necessarily be a map or an array.
Updated by Debbie Lockett over 8 years ago
- Status changed from New to In Progress
Started moving required methods into HE implementation, but the work is incomplete (ran into further problems, e.g. inline and named functions).
Work in progress changes to XPathParser, XPathParserPE, and XQueryParserPE committed to 9.8 dev branch.
Updated by Michael Kay over 8 years ago
- Assignee changed from Debbie Lockett to Michael Kay
Now apparently working on the 9.8 branch (though not actually tested on an HE build). In the revised code a dynamic function call unconditionally generates a call on fn:apply() and relies on the subsequent type-checking and optimization phases to replace this by a call on map:get or array:get in cases where the static type is known to be a map or array.
Updated by Michael Kay over 8 years ago
- Status changed from In Progress to Resolved
- Applies to branch 9.8 added
- Fix Committed on Branch 9.7, 9.8 added
Patch applied on the 9.7 and 9.8 branches.
Updated by O'Neil Delpratt over 8 years ago
- Status changed from Resolved to Closed
- % Done changed from 0 to 100
- Fixed in Maintenance Release 9.7.0.5 added
Bug fix applied in the Saxon 9.7.0.5 maintenance release.
Updated by O'Neil Delpratt over 7 years ago
- Applies to branch trunk added
- Applies to branch deleted (
9.8)
Updated by O'Neil Delpratt over 7 years ago
- Fix Committed on Branch trunk added
- Fix Committed on Branch deleted (
9.8)
Please register to edit this issue