Project

Profile

Help

Bug #144

closed

Incorrect optimization of name()='x' under Saxon-EE

Added by Anonymous almost 14 years ago. Updated about 12 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
XPath conformance
Sprint/Milestone:
-
Start date:
Due date:
% Done:

0%

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

Description

SourceForge user: mhkay

Under Saxon-EE, if the zero-argument function name() (or similar functions such as local-name()) is called within an operand of "=", that is, in an expression such as name()='abc' or substring(name(), 1,1) = 'a', the optimizer may work on the incorrect assumption that the expression is not dependent on the context item, which may cause it to be moved out of a loop, function, or template, which in turn will cause the name() function to be evaluated against the wrong node, typically causing the "=" comparison to return false.

A patch (to module OptimizerEE in the Saxonica-private code) is being committed.

Please register to edit this issue

Also available in: Atom PDF