Menu

#1209 Incorrect optimization of xsl:value-of

v9.4
open
Internals (8)
5
2012-10-08
2012-01-26
Michael Kay
No

When Saxon is able to determine that the result of an xsl:value-of instruction will always be used as a string or untypedAtomic value (for example if it is used to construct the value of a variable where all uses of the variable are atomized), and when the select attribute is capable of returning an empty sequence, then the optimizer may generate code whose effect is that when the select expression is empty, the result of the xsl:value-of instruction is an empty sequence rather than a zero-length string. This may cause a subsequent type error (or other internal errors) when the expression is evaluated, since the client expression is not expecting xsl:value-of to return an empty sequence.

A patch (to module ValueOf) is being placed in Subversion.

Discussion