View mode: basic / threaded / horizontal-split · Log in · Help
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
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
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
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
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
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
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
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
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
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
« First   ‹ Prev
1 2 3 4
Top | Discussion index | About this forum | D home