Thread overview | |||||
---|---|---|---|---|---|
|
August 07, 2010 std.variant and const | ||||
---|---|---|---|---|
| ||||
Variant in phobos doesn't work well with being const, toHash and opEquals for example are not marked as const methods. I have tried to work around it with careful casting, but it is too unsafe and just too complex for something that is supposed to make life easier. Does anybody know if this is a temporary problem with variant itself or related to other bugs or limitations? Should I file a bug report for this? I could only find this: http://d.puremagic.com/issues/show_bug.cgi?id=3795 |
August 07, 2010 Re: std.variant and const | ||||
---|---|---|---|---|
| ||||
Posted in reply to Lutger | On Saturday 07 August 2010 05:42:53 Lutger wrote: > Variant in phobos doesn't work well with being const, toHash and opEquals for example are not marked as const methods. I have tried to work around it with careful casting, but it is too unsafe and just too complex for something that is supposed to make life easier. > > Does anybody know if this is a temporary problem with variant itself or related to other bugs or limitations? Should I file a bug report for this? I could only find this: http://d.puremagic.com/issues/show_bug.cgi?id=3795 The fact that Object is not const-correct is a huge problem. http://d.puremagic.com/issues/show_bug.cgi?id=1824 covers that, but I don't know when it's going to be fixed. http://d.puremagic.com/issues/show_bug.cgi?id=3748 which deals with inout probably has to be fixed first. So, I don't know whether there's really an issue with Variant itself, but the fact that functions like toHash() opEquals() aren't const is a big problem which is supposed to be addressed at some point but hasn't yet. - Jonathan M Davis |
August 07, 2010 Re: std.variant and const | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jonathan M Davis | Jonathan M Davis wrote:
> On Saturday 07 August 2010 05:42:53 Lutger wrote:
>> Variant in phobos doesn't work well with being const, toHash and opEquals for example are not marked as const methods. I have tried to work around it with careful casting, but it is too unsafe and just too complex for something that is supposed to make life easier.
>>
>> Does anybody know if this is a temporary problem with variant itself or related to other bugs or limitations? Should I file a bug report for this? I could only find this: http://d.puremagic.com/issues/show_bug.cgi?id=3795
>
> The fact that Object is not const-correct is a huge problem. http://d.puremagic.com/issues/show_bug.cgi?id=1824 covers that, but I don't know when it's going to be fixed. http://d.puremagic.com/issues/show_bug.cgi?id=3748 which deals with inout probably has to be fixed first.
>
> So, I don't know whether there's really an issue with Variant itself, but the fact that functions like toHash() opEquals() aren't const is a big problem which is supposed to be addressed at some point but hasn't yet.
>
> - Jonathan M Davis
Ouch. Thanks for the intel.
|
Copyright © 1999-2021 by the D Language Foundation