Dicebot on leaving D: It is anarchy driven development in all its glory.
tide
tide at tide.tide
Fri Aug 24 23:22:57 UTC 2018
On Friday, 24 August 2018 at 22:42:19 UTC, Walter Bright wrote:
> On 8/24/2018 12:42 PM, tide wrote:
>> Some problems require new features like how taking the address
>> of a member function without an object returns a function
>> pointer, but requires a delegate where C++ has member function
>> pointers, D just has broken unusable code. Or old features
>> that were implemented poorly (C++ mangling for example).
>
> How to do member function pointers in D:
>
> https://www.digitalmars.com/articles/b68.html
struct SomeStruct
{
void foo() {
// use SomeStruct
}
}
void broken()
{
void function() foo = &SomeStruct.foo;
foo(); // runtime error, isn't actually safe uses wrong
calling convention as well
}
Not really lack of feature so much as there exists broken code.
This has been valid code for god knows how long. At some point it
was usable in @safe, but it looks you can't take an address of a
member function without "this" as well in safe anymore.
More information about the Digitalmars-d
mailing list