+ UPRV_UNREACHABLE;
+
+ case Precision::RND_INCREMENT_SIGNIFICANT: // Apple addition rdar://52538227
+ // FIrst round to increment
+ value.roundToIncrement(
+ fPrecision.fUnion.incrSig.fIncrement,
+ fRoundingMode,
+ status);
+ // Then round to significant digits
+ value.roundToMagnitude(
+ getRoundingMagnitudeSignificant(value, fPrecision.fUnion.incrSig.fMaxSig),
+ fRoundingMode,
+ status);
+ value.setMinFraction(
+ uprv_max(0, -getDisplayMagnitudeSignificant(value, fPrecision.fUnion.incrSig.fMinSig)));
+ // Make sure that digits are displayed on zero.
+ if (value.isZeroish() && fPrecision.fUnion.incrSig.fMinSig > 0) {
+ value.setMinInteger(1);
+ }