Issue #10429 has been updated by Matt Dressel. What do I need to do to get someone to look at this? ---------------------------------------- Bug #10429: Ruby 2.x exponents produce wildly varying precision for integers vs decimals https://bugs.ruby-lang.org/issues/10429#change-49992 * Author: Matt Dressel * Status: Open * Priority: Normal * Assignee: * Category: core * Target version: * ruby -v: 2.0.0-p576, 2.1.3 * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- ## 2.0.0 ``` > 1.1.to_d ** -1.9999999 => #<BigDecimal:7fdcc1fcdfa0,'0.8264462888 68609939E0',18(45)> > 1.1.to_d ** -2 => #<BigDecimal:7fdccd3e8d00,'0.8264462809 9173553719 0082644628 0991735537 1900826446 2809917355 3719008264 46E0',72(72)> > 1.1.to_d ** -2.0 => #<BigDecimal:7fdccd3e8d00,'0.8264462809 9173553719 0082644628 0991735537 1900826446 2809917355 3719008264 46E0',72(72)> > 1.1.to_d ** -2.0000001 => #<BigDecimal:7fdcc1f702d8,'0.8264462731 14861211E0',18(45)> ``` ## 2.1.3 ``` > 1.1.to_d ** -1.9999999 => #<BigDecimal:7ff690a7d6c0,'0.8264462888 68609938E0',18(36)> > 1.1.to_d ** -2 => #<BigDecimal:7ff690ace0c0,'0.8264462809 9173553719 0082644628 0991735537 1900826446 2809917355 371E0',63(63)> > 1.1.to_d ** -2.0 => #<BigDecimal:7ff690ace0c0,'0.8264462809 9173553719 0082644628 0991735537 1900826446 2809917355 371E0',63(63)> > 1.1.to_d ** -2.0000001 => #<BigDecimal:7ff674c0b0a8,'0.8264462731 1486121E0',18(36)> ``` Additionally, when the integer value increases, the precision increases: ## 2.0.0 ``` > 1.1.to_d ** 2 => #<BigDecimal:7fb0969fb7f0,'0.121E1',18(72)> > 1.1.to_d ** 3 => #<BigDecimal:7fb096928468,'0.1331E1',18(90)> > 1.1.to_d ** 4 => #<BigDecimal:7fb096a05890,'0.14641E1',18(117)> > 1.1.to_d ** 5 => #<BigDecimal:7fb096a0fbb0,'0.161051E1',18(135)> > 1.1.to_d ** 6 => #<BigDecimal:7fb096a1e110,'0.1771561E1',18(153)> ``` -- https://bugs.ruby-lang.org/