The liabilities of binding rvalues to ref

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Thu May 9 19:14:33 PDT 2013


On 5/9/13 10:05 PM, Steven Schveighoffer wrote:
> On Thu, 09 May 2013 21:47:14 -0400, Andrei Alexandrescu
> <SeeWebsiteForEmail at erdani.org> wrote:
>
>> On 5/9/13 4:36 PM, Peter Alexander wrote:
>>> I'm not sure about how common it is, but I really don't like the idea of
>>> calls like swap(1, 2) being legal. Seems like a step backward from C++.
>>
>> I think if we ever get swap(1, 2) to compile and run we'd effectively
>> have destroyed the D programming language.
>
> Depends on context.
>
> int swap(int diskNum, int partitionNum);
>
> Someone pointed out that swap could be a function that swaps heap
> indexes, and might even take by ref not caring if you want the resulting
> value that was swapped.
>
> with(someHeap)
> {
> swap(1, 2); // swap indexes 1 and 2
> }
>
> -Steve

Now that's great trolling!

Andrei


More information about the Digitalmars-d mailing list