You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Our arithmetic operations treat everything as a double, which means the 'long' version of our intrinsic functions are unavailable. This can induce floating point arithmetic errors, especially at large values where doubles are less precise. We should try to use long and only fall back to double if the input cannot be parsed as a long.
Steps to Reproduce
Create a simple console app and add this target:
<TargetName="BadSubtract">
<MessageText="$([MSBuild]::Subtract(9223372036854775807, 9223372036854775806)) should be 1"Importance="High" />
</Target>
Then make that target run.
Expected Behavior
Outputs 1 should be 1
Actual Behavior
Outputs 0 should be 1
Analysis
No response
Versions & Configurations
No response
The text was updated successfully, but these errors were encountered:
Issue Description
Our arithmetic operations treat everything as a double, which means the 'long' version of our intrinsic functions are unavailable. This can induce floating point arithmetic errors, especially at large values where doubles are less precise. We should try to use long and only fall back to double if the input cannot be parsed as a long.
Steps to Reproduce
Create a simple console app and add this target:
Then make that target run.
Expected Behavior
Outputs
1 should be 1
Actual Behavior
Outputs
0 should be 1
Analysis
No response
Versions & Configurations
No response
The text was updated successfully, but these errors were encountered: