Skip to content

test(physics): build physics_dyn_bike_plant_test without FP contraction - #837

Merged
transfix merged 1 commit into
masterfrom
fix/dyn-bike-plant-test-fp
Oct 27, 2026
Merged

transfix merged 1 commit into
masterfrom
fix/dyn-bike-plant-test-fp

Conversation

@transfix

Copy link
Copy Markdown
Owner

DynBikePlant.StepsAsTheDynamicPlantDoes (from #833) holds dyn_bike_plant to dyn_plant called inline in the test, bit for bit. The plant's source is in the exact-fp list (-ffp-contract=off); the test's was not, so on the macOS arm64 lanes clang fused the test's copy into FMAs and they differed by one ulp:

physics_dyn_bike_plant_test.cpp:114: Failure
  b[j]   Which is: 0.40661397752110373
  ref[j] Which is: 0.40661397752110368
tick 4, state 3

(package-macos / libcvc-release on #833, master eb9187c.)

This builds the test the same way, as nav_potential_test and nav_material_ext_test already are (/fp:precise on MSVC). The assertion stays exact.

It lands before the v3.7.1 tag, so the release's macOS packages don't trip on it.

StepsAsTheDynamicPlantDoes compares dyn_bike_plant's steps with dyn_plant called inline in the
test, bit for bit. The plant is built with -ffp-contract=off (the exact-fp list); the test was
not, so on the macOS arm64 lanes clang fused its copy into FMAs and the two differed by one ulp
(package-macos / libcvc-release on #833: 0.40661397752110373 vs ...368 at tick 4). Build the test
the same way, as nav_potential_test and nav_material_ext_test already are.
@transfix
transfix enabled auto-merge (squash) October 27, 2026 05:02
@transfix
transfix merged commit f82930e into master Oct 27, 2026
23 of 24 checks passed
@transfix
transfix deleted the fix/dyn-bike-plant-test-fp branch October 29, 2026 20:53
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.

1 participant