Pointers to functions (!= "function pointers") should be disallowed entirely

Mehrdad wfunction at hotmail.com
Sat Jun 16 23:38:31 PDT 2012


On Sunday, 17 June 2012 at 02:24:23 UTC, Timon Gehr wrote:
> On 06/17/2012 02:55 AM, Mehrdad wrote:
>> I think pointers to functions should be disallowed (and more
>> indirections thereof):
>>
>> typeof(Object.toString)* p;
>>
>
> pointers to functions == function pointers.
> They are just alternate syntax.
>
>> They can never point anywhere reasonable other than null.
>
> void main(){
>     typeof(main)* ptr = &main;
>     static assert(is(typeof(ptr)==void function()));
>     assert(ptr !is null);
> }

Ah what!

I guess what confused me was that &Object.toString was a 
function, which made me think they were "unbound delegates", and 
hence we couldn't actually set them...

thanks!


More information about the Digitalmars-d mailing list