On 05/03/12 16:07, Steven Schveighoffer wrote:
> On Wed, 02 May 2012 16:05:13 -0400, Joseph Rushton Wakeling 
> <[email protected]> wrote:
> 
>> On 30/04/12 16:03, Steven Schveighoffer wrote:
>>> Try removing the ref and see if it goes back. That usage of ref should not
>>> affect anything (if anything it should be slower, since it's an extra level 
>>> of
>>> indirection).
>>
>> Removing the ref ups the time as described before, but only with GDC (DMD 
>> the runtime is the same).  It's a real effect.
> 
> I'm not familiar with GDC, but as bearophile says, it sounds like a compiler 
> bug.  Maybe GDC is making an optimization in one case and not in the other, 
> but both should be equivalently able to get the optimization.
> 
>>
>>> There is no implicit local copy for const. I have a suspicion that you 
>>> changed
>>> two things and forgot about one of them when running your tests.
>>
>> Really don't think so.  You can even check the version history of changes if 
>> you like!
> 
> IIRC, your original post concerned not-checked in code.  Anyway, if you've 
> re-run the tests, this is a confirmation.  I'd go ahead and file a bug 
> against GDC.  Rest assured, const should not *slow down* anything.

There *was* a GDC bug some time ago, where a 'const' or 'in' function argument
prevented inlining. Iain fixed it, so unless an old GDC version is used, it's
probably not related.

http://forum.dlang.org/thread/[email protected]?page=16#post-mailman.33.1325763631.16222.d.gnu:40puremagic.com

artur

Reply via email to