dmd 1.063 and 2.048 release

Jordi jordi at rovira.cat
Mon Aug 16 07:33:26 PDT 2010


On 08/16/2010 04:11 PM, Don wrote:
> Brad Roberts wrote:
>> On 8/15/2010 12:54 PM, Walter Bright wrote:
>>> Nick Sabalausky wrote:
>>>> This may be a pain to do, but you could narrow it down from the other
>>>> direction: recompile DMD from various trunk revisions between 2.046
>>>> and 2.047
>>>> and see which actual commit created the problem.
>>> Try mixing/matching the compiler & Phobos to see which one of those
>>> caused the
>>> issue.
>>
>> While I agree that it's worth trying a bisection -- it's generally
>> really quick
>> and easy to do (the compiler and libraries build rather fast -- about
>> a minute
>> for me). It can be a very useful technique for finding where bugs were
>> introduced.
>>
>> That said, it's likely to be rather difficult for this release due to
>> the number
>> of fixes in the compiler that the library requires and for the periods
>> during
>> which the two didn't work together.
>>
>> Do try it.. worst case is you've wasted a little bit of time. Best
>> case you've
>> found the cause of the bug.
>>
>> Later,
>> Brad
>
> The latest compiler should work with the old Phobos, except that it will
> complain about the a&b==c bugs. That's simple to do, it just involves
> copying the 2.048 compiler onto the 2.047 release. Knowing if it is the
> compiler or Phobos/druntime would be an enormous help.

Found it. It took me 7 iterations of binary search across the svn 
repositories for dmd, druntime and phobos. The commit causing the issue 
is 505 in dmd. It is related to structs returning *this, which indeed i 
do in my maths structs.

Now, i don't know if the bug is in dmd or in my code, but i suspect that 
something is being treated as a reference when it shouldn't. Should i 
add an issue even if i am not sure?

j.


More information about the Digitalmars-d-announce mailing list