Project

Profile

Help

Bug #2070

closed

Internal Saxon error: local variable encountered whose binding has been deleted with xsl:sort @order

Added by Philipp Nanz almost 10 years ago. Updated almost 10 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Internals
Sprint/Milestone:
-
Start date:
2014-05-07
Due date:
% Done:

100%

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

Description

Compiling the attached Stylesheet with Saxon-PE 9.5.1.5 leads to *** Internal Saxon error: local variable encountered whose binding has been deleted

It appears that variables are being optimized out of the window, if the only reference appears in a xsl:sort @order instruction.


Files

resolveHistoryLists.xsl (10.4 KB) resolveHistoryLists.xsl Philipp Nanz, 2014-05-07 23:26
Actions #1

Updated by Michael Kay almost 10 years ago

  • Category set to Internals
  • Status changed from New to Resolved
  • Assignee set to Michael Kay
  • Found in version set to 9.5

Thanks for the repro and your accurate diagnosis. The problem applies to xsl:sort children of xsl:for-each group; Saxon fails to call typeCheck() to process expressions in the AVTs of these xsl:sort children. This could cause type errors to go undetected but the main impact is that variables used in these expressions do not have their use count incremented, causing the variable declaration to be incorrectly optimized out.

A patch has been tested and is being committed.

Actions #2

Updated by O'Neil Delpratt almost 10 years ago

  • Status changed from Resolved to Closed
  • % Done changed from 0 to 100
  • Fixed in version set to 9.5.1.6

Bug fix applied in Saxon maintenance release 9.5.1.6

Please register to edit this issue

Also available in: Atom PDF