April 19, 2023
https://issues.dlang.org/show_bug.cgi?id=23846

          Issue ID: 23846
           Summary: std.math can't compile under macos rosetta
           Product: D
           Version: D2
          Hardware: Other
                OS: Mac OS X
            Status: NEW
          Severity: major
          Priority: P1
         Component: phobos
          Assignee: nobody@puremagic.com
          Reporter: john.loughran.colvin@gmail.com

This is on an M2 Pro chip, running dmd x64 under rosetta (which is the default you get if you run `install.sh`)

(dmd-2.103.0)john@Johns-MacBook-Pro ~ % cat test.d
import std.math;
(dmd-2.103.0)john@Johns-MacBook-Pro ~ % dmd test.d
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3791):
Error: number `0x0.8p-126f` is not representable as a `float`
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3791):
       https://dlang.org/spec/lex.html#floatliteral
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3791):
Error: number `0x0.8p-126f` is not representable as a `float`
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3791):
       https://dlang.org/spec/lex.html#floatliteral
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3793):
Error: number `0x0.555556p-126f` is not representable as a `float`
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3793):
       https://dlang.org/spec/lex.html#floatliteral
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3793):
Error: number `0x0.555556p-126f` is not representable as a `float`
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3793):
       https://dlang.org/spec/lex.html#floatliteral
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3804):
Error: number `0x0.8p-1022` is not representable as a `double`
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3804):
       `real` literals can be written using the `L` suffix.
https://dlang.org/spec/lex.html#floatliteral
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3804):
Error: number `0x0.8p-1022` is not representable as a `double`
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3804):
       `real` literals can be written using the `L` suffix.
https://dlang.org/spec/lex.html#floatliteral
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3806):
Error: number `0x0.5555555555555p-1022` is not representable as a `double`
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3806):
       `real` literals can be written using the `L` suffix.
https://dlang.org/spec/lex.html#floatliteral
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3806):
Error: number `0x0.5555555555555p-1022` is not representable as a `double`
/Users/john/dlang/dmd-2.103.0/osx/bin/../../src/phobos/std/math/exponential.d(3806):
       `real` literals can be written using the `L` suffix.
https://dlang.org/spec/lex.html#floatliteral

--