Project

Profile

Help

Support #4932

closed

EE Optimisations introduce bug when dealing with multiple predicates

Added by Tomos Hillman about 3 years ago. Updated about 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Sprint/Milestone:
-
Start date:
2021-03-10
Due date:
% Done:

0%

Estimated time:
Legacy ID:
Applies to branch:
10, 9.9, trunk
Fix Committed on Branch:
Fixed in Maintenance Release:
Platforms:

Description

Optimisations where the order of predicates are significant are introducing bugs for one of my clients between their development environment (Saxon 9.9 PE) and their production server (Saxon 9.9EE).

The example included in the XSL file (attached) is a good example: one predicate restricts to map entries within a map, the second filters by the presence of a map key within the child map. In PE, this works as expected. In EE, parentheses need to be added.

The problem is exacerbated by the way this is reported: unfortunately I can't yet replicate this part in the simplified code attached, but the error is reported as "E [Saxon-EE 10.3] (External): Internal error: no value for variable $vv:v0 at line 30 of file:/....xsl" - worryingly, in 10.3, this error is thrown even with the parentheses in place, even though the parentheses bypass the problem in 9.9 and 10.

The code where this error is thrown occurs in an xsl:iterate statement within another xsl:iterate statement, if that helps.


Files

bug-report.xsl (1.02 KB) bug-report.xsl Tomos Hillman, 2021-03-10 11:37

Please register to edit this issue

Also available in: Atom PDF