[phobos] phobos commit, revision 2331

Robert Jacques sandford at jhu.edu
Fri Jan 14 10:39:34 PST 2011


On Fri, 14 Jan 2011 11:19:34 -0500, Jonathan M Davis <jmdavisProg at gmx.com>  
wrote:

> On Friday 14 January 2011 05:43:19 Robert Jacques wrote:
>> On Fri, 14 Jan 2011 06:36:18 -0500, dsource.org <noreply at dsource.org>
>>
>> wrote:
>> > phobos commit, revision 2331
>> >
>> >
>> > user: jmdavis
>> >
>> > msg:
>> > Re-enabled std.datetime for Windows but disabled its unit tests for
>> > Windows.
>> >
>> > For some reason, the std.datetime unit tests compile and pass without
>> > problems on Linux and in Wine on Linux, but on real Windows, the
>> > compiler runs out of memory when compiling them. So, for now, all of  
>> the
>> > std.datetime unit tests are versioned with testStdDateTime. On Posix,
>> > version=testdStdDateTime is used in std.datetime, so the tests will  
>> run,
>> > but that version is not set on Windows, so the unit tests don't run on
>> > Windows. So, if you want to run the std.datetime unit tests on  
>> Windows or
>> > under Wine or Linux, then compile with -version=testStdDateTime.
>> >
>> > At the moment, all of the tests pass on both Linux and under Wine, and
>> > the normal code does compile on proper, so I'm fairly certain that  
>> it's
>> > fine
>> > for use on Windows, but for now, I can't enable the tests on Windows.  
>> My
>> > best guess is that it's some sort of weird compiler bug involving  
>> system
>> > calls that leak memory on Windows-proper but not in Wine, but I really
>> > don't know.
>> >
>> > http://www.dsource.org/projects/phobos/changeset/2331
>> >
>> > paths changed:
>> > U   trunk/phobos/std/datetime.d
>> >
>> > _______________________________________________
>> > phobos mailing list
>> > phobos at puremagic.com
>> > http://lists.puremagic.com/mailman/listinfo/phobos
>>
>> If DMD is running out of memory at compile time, I doubt it has to do  
>> with
>> weird compiler bugs. DMD running out of memory is usually a sign of  
>> heavy
>> compile time string manipulation, CTFE or template usage. Remember, DMD
>> keeps all template instantiations in memory and every time a string or
>> array is touched, a new copy is created (bug 1382).
>
> Yes. But to then have it not only work on Linux but on Wine and yet not  
> work on
> Windows? The only real difference between running something under Wine  
> and
> Windows is that the implementation of system calls as changed.

Well, is the crash due to a marginal difference in memory levels, or  
something major? i.e. is DMD's memory usage on Wine also very high, or is  
it relatively low.


More information about the phobos mailing list