WTF! new in class is static?!?!
aliak00
something at something.com
Sat Jun 9 18:45:43 UTC 2018
On Friday, 8 June 2018 at 18:18:27 UTC, Jonathan M Davis wrote:
> On Thursday, June 07, 2018 22:43:50 aliak via
> Digitalmars-d-learn wrote:
>> On Thursday, 7 June 2018 at 21:32:54 UTC, Jonathan M Davis
>> wrote:
>> > [...]
>>
>> Is that supposed to compile? -> https://run.dlang.io/is/SjUEOu
>>
>> Error: cannot use non-constant CTFE pointer in an initializer
>> &[42][0]
>
> Not necessarily. It's the pointer equivalent of what the OP did
> with a mutable class reference, and I was using it for
> demonstrative purposes. The mutable class reference case didn't
> used to compile (it used to have to be immutable). This example
> is just the logic of what happens if it's legal with pointers
> too. If it hasn't been changed to be legal with pointers like
> it has been with classes, then that's arguably a good thing.
>
> - Jonathan M Davis
Boh, it seems it actually has, just not with primitive types it
seems:
struct A {
int i = 3;
}
struct B {
auto a = new A(3);
}
Above compile fine :o
More information about the Digitalmars-d-learn
mailing list