www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Re: best replacement for - cout << "hello D" << endl; ?

reply Bruce Adams <tortoise_74 yahoo.don.ot.spamme.co.uk> writes:
It looks like a bug in the cygwin version of gdc. dmd works fine.
I've filed it as:

http://d.puremagic.com/issues/show_bug.cgi?id=1338

This is the 3rd compiler bug I've found in 2 days of using D (and all on hello
world level projects).

2 in gdc and 1 in dmd. Someone is trying to tell me something.
  a) use linux more
  b) get involved and help fix the cygwin port.

Unfortunately I fear other users with these kinds of problem may end up getting
message c) "don't use D on windows until its more stable".
Which is also equivalent to don't use D for projects that need to be portable
(to windows anyway).

Regards,

Bruce.
Jul 12 2007
parent Bill Baxter <dnewsgroup billbaxter.com> writes:
Bruce Adams wrote:
 It looks like a bug in the cygwin version of gdc. dmd works fine.
 I've filed it as:
 
 http://d.puremagic.com/issues/show_bug.cgi?id=1338
 
 This is the 3rd compiler bug I've found in 2 days of using D (and all on hello
world level projects).
 
 2 in gdc and 1 in dmd. Someone is trying to tell me something.
   a) use linux more
   b) get involved and help fix the cygwin port.
 
 Unfortunately I fear other users with these kinds of problem may end up
getting message c) "don't use D on windows until its more stable".
 Which is also equivalent to don't use D for projects that need to be portable
(to windows anyway).

Well the DMD bug you found is actually an OPTLINK bug (the long env vars trip up the linker thing, right), not really a bug in the compiler, per se. But still, a DMD toolchain bug, yeh. I'm surprised no one has run into that yet in 10 years or more of DMD/DMC usage. Maybe it's a known issue in the DMC community? But anyway, crazy linker bug aside -- the message I get is "When on Windows, use DMD". Set yourself up a special dmd.bat that puts environment variables the way DMD likes em, and zero out any crazy long vars from Cygwin. I use 'console' (http://sourceforge.net/projects/console) and have a tab set up to run a dmdvars.bat with this in it: ----------------------- echo off echo Setting up environment for the DMD D compiler set PATH=%DMDDIR%\dmd\bin;%DMDDIR%\dm\bin;%DMDDIR%\dsss\bin;%PATH% set LIB=%DMDDIR%\dmd\lib;%DMDDIR%\dm\lib;%LIB%;"C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\lib" set INCLUDE=%INCLUDE%;"C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\Include" set WXDIR=c:\usr\pkg\wxWidgets\wxMSW-2.8.4 ------------------------- --bb
Jul 12 2007