Why does this not compile?
Shachar Shemesh
shachar at weka.io
Tue Mar 6 12:44:09 UTC 2018
On 06/03/18 14:00, Steven Schveighoffer wrote:
> On 3/6/18 6:21 AM, Simen Kjærås wrote:
>> On Tuesday, 6 March 2018 at 10:03:54 UTC, Shachar Shemesh wrote:
>>> void main() {
>>> struct S {
>>> uint value;
>>>
>>> ~this() {
>>> }
>>> }
>>>
>>> const S a = S(12);
>>> S b = a;
>>> }
>>>
>>> test.d(10): Error: cannot implicitly convert expression a of type
>>> const(S) to S
>>
>> Looks like a bug to me - please file one in bugzilla.
>
> Nope. It's not a bug. S contains a pointer, namely the context pointer
> for main.
>
> https://dlang.org/spec/struct.html#nested
Which does not explain why my code compiles if I remove the destructor.
Shachar
More information about the Digitalmars-d
mailing list