Thread overview | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
February 21, 2007 DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Cleanup of compile time function execution issues. http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.1.007.zip |
February 21, 2007 Re: DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Walter Bright wrote:
> Cleanup of compile time function execution issues.
>
> http://www.digitalmars.com/d/changelog.html
>
> http://ftp.digitalmars.com/dmd.1.007.zip
Is that change to COMDAT there to fix the linking issues?
--bb
|
February 21, 2007 Re: DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to Bill Baxter | Bill Baxter wrote:
> Is that change to COMDAT there to fix the linking issues?
Yes. We'll see if it works, or creates just other problems.
|
February 21, 2007 Re: DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Great. but I found two bugs. I can't split string on compile time :-( import std.stdio; template eval(T...){ const eval=T[0]; } char[][] bug1(){ char[][] rv; rv~="test"; return rv; } bool bug2(char[] a, char[] b){ return (a==b); } void main(){ // writefln(eval!(bug1())); // writefln(eval!(bug2("test","test"))); } |
February 21, 2007 Re: DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Walter Bright wrote:
> Bill Baxter wrote:
>
>> Is that change to COMDAT there to fix the linking issues?
>
>
> Yes. We'll see if it works, or creates just other problems.
It does, but increases the exe size of the first example from 180kb to 617kb! 180kb is when compiled using build/rebuild/jake etc (no library) and the 617kb is when using dmd+lib only. Same flags in both cases: none at all
- Kris
|
February 21, 2007 Re: DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to kris | kris wrote:
> It does, but increases the exe size of the first example from 180kb to 617kb! 180kb is when compiled using build/rebuild/jake etc (no library) and the 617kb is when using dmd+lib only. Same flags in both cases: none at all
That makes no sense! There is 0 difference in size on the test program (your example).
|
February 21, 2007 Re: DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Walter Bright wrote:
> kris wrote:
>
>> It does, but increases the exe size of the first example from 180kb to 617kb! 180kb is when compiled using build/rebuild/jake etc (no library) and the 617kb is when using dmd+lib only. Same flags in both cases: none at all
>
>
> That makes no sense! There is 0 difference in size on the test program (your example).
Oh, I'm not using the little test snippet ... I'm using real examples that link to Tango.lib instead. This particular one connects to the DM site and downloads the home page. The obj size was 1670 bytes, and the rest came from the lib :)
If you prefer, we could switch to the #D thread so as not to pollute this one?
As an aside: I also tried the open-watcom linker, but that finds errors in snn.lib (multiple symbols marked as entry points for console and dll startup code)
- Kris
|
February 21, 2007 Re: DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to kris | kris wrote: > If you prefer, we could switch to the #D thread so as not to pollute this one? Ok, but I'll need an example. I'd start by comparing .map files. > As an aside: I also tried the open-watcom linker, but that finds errors in snn.lib (multiple symbols marked as entry points for console and dll startup code) Either that, or the o.w. linker has bugs in it. snn.lib works fine. |
February 21, 2007 Re: DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Tue, 20 Feb 2007 20:50:31 -0800, Walter Bright <newshound@digitalmars.com> wrote:
>Cleanup of compile time function execution issues.
>
>http://www.digitalmars.com/d/changelog.html
>
>http://ftp.digitalmars.com/dmd.1.007.zip
Mixins are working with compile-time functions! Thanks!
|
February 21, 2007 Re: DMD 1.007 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Walter Bright wrote: > kris wrote: > >> If you prefer, we could switch to the #D thread so as not to pollute this one? > > > Ok, but I'll need an example. I'd start by comparing .map files. > >> As an aside: I also tried the open-watcom linker, but that finds errors in snn.lib (multiple symbols marked as entry points for console and dll startup code) > > > Either that, or the o.w. linker has bugs in it. snn.lib works fine. Anything is possible :) Just for posterity, here's the OW linker output; almost all warnings: Warning! W1027: file phobos.lib(typeinfo\ti_Acreal.d): redefinition of _D11TypeInfo_AC6__initZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_Acreal.d): redefinition of _D11TypeInfo_AC7__ClassZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_Acreal.d): redefinition of _D11TypeInfo_AC6__vtblZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_creal.d): redefinition of _D10TypeInfo_C6__initZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_creal.d): redefinition of _D10TypeInfo_C7__ClassZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_creal.d): redefinition of _D10TypeInfo_C6__vtblZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_double.d): redefinition of _D10TypeInfo_d6__initZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_double.d): redefinition of _D10TypeInfo_D7__ClassZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_double.d): redefinition of _D10TypeInfo_D6__vtblZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_ptr.d): redefinition of _D10TypeInfo_p6__initZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_ptr.d): redefinition of _D10TypeInfo_p7__ClassZ ignored Warning! W1027: file phobos.lib(typeinfo\ti_ptr.d): redefinition of _D10TypeInfo_p6__vtblZ ignored Warning! W1027: file snn.lib(..\core32\_exit2.c): redefinition of __Exit ignored Warning! W1027: file snn.lib(..\ios\stream.cpp): redefinition of istream &cdecl ws(istream &) ignored Error! E2166: file snn.lib(..\win32\constart.c): both __DllMainCRTStartup@12 and _mainCRTStartup marked as starting symbols Error! E2166: file snn.lib(..\win32\winstart.c): both __DllMainCRTStartup@12 and _WinMainCRTStartup marked as starting symbols Warning! W1027: file snn.lib(..\WIN32\TRACE\TRACE.C): redefinition of _trace_setlogfilename ignored Warning! W1027: file snn.lib(..\WIN32\TRACE\TRACE.C): redefinition of _trace_setdeffilename ignored Warning! W1027: file snn.lib(..\WIN32\TRACE\TRACE.C): redefinition of _trace_term ignored Warning! W1027: file snn.lib(..\WIN32\TRACE\TRACE.C): redefinition of __trace_pro_n ignored Warning! W1027: file snn.lib(..\WIN32\TRACE\TRACE.C): redefinition of __trace_epi_n ignored Error! E2166: file snn.lib(..\win32\wconstar.c): both __DllMainCRTStartup@12 and _wmainCRTStartup marked as starting symbols Error! E2166: file snn.lib(..\win32\wwinstar.c): both __DllMainCRTStartup@12 and _wWinMainCRTStartup marked as starting symbols Warning! W1027: file snn.lib(..\core\_wfopen.c): redefinition of __wfopen ignored |
Copyright © 1999-2021 by the D Language Foundation