Hello Mr. Kay!
Please suggest  how to explain the result of my test with saxon 7 :

According to XSL Transformations (XSLT) Version 2.0 (W3C Working Draft 12 November 2003):

"If the xsl:number instruction was evaluated with a value attribute whose value cannot be cast to an integer, an XSLT 1.0 processor would output "NaN"; an XSLT 2.0 processor will signal an error."

I test this sample, but I receive only warning instead of error 

Best regards!