Static array as immutable

H. S. Teoh hsteoh at quickfur.ath.cx
Tue Dec 12 18:53:46 UTC 2017


On Tue, Dec 12, 2017 at 06:06:48PM +0000, Ivan Trombley via Digitalmars-d-learn wrote:
> On Tuesday, 12 December 2017 at 15:30:01 UTC, Nathan S. wrote:
> > While what you're saying is true, exponentiation not being runnable
> > at compile-time is a defect and I would assume a regression.
[...]
> FWIW, if the exponent is an integer, I don't get an error.

I don't think exponentiation with non-integer exponents have ever been
supported at compile-time. It requires evaluating exp(x) for non-integer
x, which, AFAIK, has never been supported at compile-time because the
implementation of exp(x) requires constructs that the current CTFE
engine doesn't support, namely, inline asm in older versions of
std.math, or more recently, the need to access the binary representation
of floats/doubles.

Perhaps when Stefan Koch's new CTFE engine is ready for public
consumption, we will be able to finally have std.math runnable in CTFE.


T

-- 
Latin's a dead language, as dead as can be; it killed off all the
Romans, and now it's killing me! -- Schoolboy


More information about the Digitalmars-d-learn mailing list