The spec at https://drafts.csswg.org/css-values-4/#calc-simplification does not call for rounding as part of specified-value calc() simplification when used an integer context. Rounding (as well as clamping) happens at computed value time. To support this, we let the specified::Integer type hold a floating-point value if it comes from a calc() expression, and only round to integer when accessing the value() for further use. Tryserver seems to be happy with this: https://treeherder.mozilla.org/jobs?repo=try&revision=9a6b1850d25078a6de128728ddf39e8387f615e4 Differential Revision: https://phabricator.services.mozilla.com/D248933