January 02, 2007
Hi,

I have downloaded and installed the compiler and the toolset for under MS Windows. I'm running MS Windows 2000.

When I run the all.sh shell script, I get the following error message in the dhrystones program:

"
dmd dhry
dhry.d(607): function std.c.string.strcpy (char*,char*) does not match parameter
 types (char[30],char[29])
dhry.d(607): Error: cannot implicitly convert expression (Reg_Define) of type ch
ar[30] to char*

--- errorlevel 1"

I haven't taken the time to study the error; this is my first exposure to D.

I include the rest of the output so that you can see that the compiler worked and was correctly installed.

---------------------------------------------------------------------
c:\bin\D\dmd\samples\d>shell all.sh
shell 1.02
dmd hello
c:\bin\D\dmd\bin\..\..\dm\bin\link.exe hello,,,user32+kernel32/noi;

hello
hello world
args.length = 1
args[0] = 'c:\bin\D\dmd\samples\d\hello.exe'

del hello.obj hello.exe hello.map
dmd sieve
c:\bin\D\dmd\bin\..\..\dm\bin\link.exe sieve,,,user32+kernel32/noi;

sieve
10 iterations

1899 primes

dmd pi
c:\bin\D\dmd\bin\..\..\dm\bin\link.exe pi,,,user32+kernel32/noi;

pi 1000
pi = 3.1415926[...]
1 seconds to compute pi with a precision of 1000 digits.

dmd dhry
dhry.d(607): function std.c.string.strcpy (char*,char*) does not match parameter
 types (char[30],char[29])
dhry.d(607): Error: cannot implicitly convert expression (Reg_Define) of type ch
ar[30] to char*

--- errorlevel 1

c:\bin\D\dmd\samples\d>

---------------------------------------------------------------------

Best regards,

Dirk Labbe
January 02, 2007
%u schrieb am 2007-01-02:
> Hi,
>
> I have downloaded and installed the compiler and the toolset for under MS Windows. I'm running MS Windows 2000.
>
> When I run the all.sh shell script, I get the following error message in the dhrystones program:
>
> "
> dmd dhry
> dhry.d(607): function std.c.string.strcpy (char*,char*) does not match parameter
>  types (char[30],char[29])
> dhry.d(607): Error: cannot implicitly convert expression (Reg_Define) of type ch
> ar[30] to char*
>
> --- errorlevel 1"

Pleace change in dhry.d line 607 from
#
# strcpy(Reg_Define, "Register option not selected.");
#

to

#
# strcpy(Reg_Define.ptr, "Register option not selected.");
#

This is due to stricter array-pointer conversion rules since DMD-0.177.

Thomas