Skip to content

Conversation

@GuntherRademacher
Copy link
Member

These queries currently return a wrong result:

xs:unsignedLong('3') eq 3.1,              (: true, but should be false :)
xs:unsignedLong(3) lt 3.1,                (: false, but should be true :)
compare(xs:unsignedLong('3'), 3.1)        (: 0, but should be -1       :)

This is caused by both Uln.equal and Uln.compare neglecting the fractional part when the right-hand-side operand is a Dec. This is fixed here.

@ChristianGruen ChristianGruen merged commit 7f6eb03 into BaseXdb:main Dec 8, 2025
1 check passed
@ChristianGruen ChristianGruen deleted the uln-decimal-comparison branch December 8, 2025 16:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants