File tree Expand file tree Collapse file tree 2 files changed +5
-2
lines changed Expand file tree Collapse file tree 2 files changed +5
-2
lines changed Original file line number Diff line number Diff line change @@ -1483,13 +1483,16 @@ constexpr auto decimal32::to_components() const noexcept -> detail::decimal32_co
1483
1483
expval = UINT32_C (0b01000000 );
1484
1484
significand |= (bits_ & detail::d32_comb_00_01_10_significand_bits) >> detail::d32_exponent_bits;
1485
1485
break ;
1486
+ case 0U :
1487
+ significand |= (bits_ & detail::d32_comb_00_01_10_significand_bits) >> detail::d32_exponent_bits;
1488
+ break ;
1486
1489
}
1487
1490
1488
1491
significand |= (bits_ & detail::d32_significand_mask);
1489
1492
expval |= (bits_ & detail::d32_exponent_mask) >> detail::d32_significand_bits;
1490
1493
1491
1494
components.sig = significand;
1492
- components.exp = expval;
1495
+ components.exp = expval - detail::bias_v<decimal32> ;
1493
1496
components.sign = bits_ & detail::d32_sign_mask;
1494
1497
1495
1498
return components;
Original file line number Diff line number Diff line change @@ -344,7 +344,7 @@ inline auto gcc_decimal32::to_components() const noexcept -> detail::decimal32_c
344
344
}
345
345
346
346
components.sig = significand;
347
- components.exp = expval;
347
+ components.exp = expval - detail::bias_v<decimal32> ;
348
348
components.sign = bits_ & detail::gccd32_sign_mask;
349
349
350
350
return components;
You can’t perform that action at this time.
0 commit comments