Project

Profile

Help

Bug #4776

closed

Arithmetic in backwards compatibility mode

Added by Michael Kay over 3 years ago. Updated about 3 years ago.

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

100%

Estimated time:
Applies to JS Branch:
2
Fix Committed on JS Branch:
2
Fixed in JS Release:
SEF Generated with:
Platforms:
Company:
-
Contact person:
-
Additional contact persons:
-

Description

XSLT3 test case bug-6201 is failing, apparently because the implicit conversion of xs:untypedAtomic to xs:double that happens for operands of an arithmetic operator is failing FORG0001 rather than returning NaN.

Actions #1

Updated by Michael Kay over 3 years ago

Note this is failing with the XX compiler.

Although an "arith10" expression has been generated, and this is designed to handle the 1.0 rules for string-to-double conversion, the type-checker has also inserted a cvuntyped expression (after the atomization) and it is the cvuntyped that generates the FORG0001 failure.

Actions #2

Updated by Michael Kay over 3 years ago

  • Status changed from New to Resolved
  • Applies to JS Branch 2.0, Trunk added
  • Fix Committed on JS Branch 2.0, Trunk added

Fixed. In Arithmetic.js, lines 109/115, the untypedConvertToDouble code should not be injected if backwards=true (instead, we leave the runtime to do this conversion).

Actions #3

Updated by Community Admin about 3 years ago

  • Applies to JS Branch 2 added
  • Applies to JS Branch deleted (2.0, Trunk)
Actions #4

Updated by Community Admin about 3 years ago

  • Fix Committed on JS Branch 2 added
  • Fix Committed on JS Branch deleted (2.0, Trunk)
Actions #5

Updated by Debbie Lockett about 3 years ago

  • Status changed from Resolved to Closed
  • % Done changed from 0 to 100
  • Fixed in JS Release set to Saxon-JS 2.1

Bug fix applied in the Saxon-JS 2.1 maintenance release.

Please register to edit this issue

Also available in: Atom PDF Tracking page