TagTuple wass previously nested within matchImpl, meaning it gets
a different instantiation for each match call with different handlers.
This is not required, as the only template parameters it needs are
the SumTypes being used. In practice, we might even get away with
using the length, but the gain is likely to be marginal compared
to the gains from moving it out of matchImpl.
Another underlying motivation for this change is that it works around
a compiler bug triggered with complex code using const SumType
(the compiler complains that 'this' for 'invariant' is of the wrong type,
const vs non-const).
* Remove some unused variables.
* Default to a matching MSVC cl.exe & lib.exe in PATH instead of an
ancient Visual Studio 2010 installation.
* Remove explicit 32-bit recipes, requiring a separate make
invocation.
Analogous to https://github.com/dlang/druntime/pull/3853.
* preallocate oom error
fixes issue 23196.
unfortunately, while i believe it should be possible to make this function `@nogc nothrow` [since we are throwing an error, which cannot be recovered from], i wasn't able to figure out how to get enforce to realise it. advice would be greatly appreciated on this front.
* undo wording change
* Update stdio.d
use onOutOfMemoryError instead of custom implementation
* nogc nothrow
* style fix
* remove unneeded variable
* remove unused import
The CustomFloat should be converted to real before most operations, but
there is no support for convertions of real types with
quadruple-precision (e.g. real type on RISCV64 platform). As the
significand is stored using 112 bits, which cannot fit in a ulong type
(CustomFloat do not allow significand more than a ulong), we should only
use the highest 64 bits of significand (this may cause presicion loss
from real type, but is enough for what CustomFloat can support
at most). So add 48 padding bits by declaring a uint and a
ushort before the significand, and set align(1) in this case.
chore(utf): documentation of byUTF is wrong about thrown exceptions
Signed-off-by: Dennis <dkorpel@users.noreply.github.com>
Merged-on-behalf-of: Dennis <dkorpel@users.noreply.github.com>
Previous change that moved std.checkedint out of experimental stage
didn't added the module to the list of modules on std module
`std/package.d`. This patch does that.
Signed-off-by: Luís Ferreira <contact@lsferreira.net>