On Wednesday, 27 August 2014 at 20:28:11 UTC, Phil Lavoie wrote:
On Wednesday, 27 August 2014 at 20:05:27 UTC, MacAsm wrote:
On Wednesday, 27 August 2014 at 19:51:48 UTC, Phil Lavoie wrote:
Ok so me and one of my colleagues have been working on some code at a distance. We both use dmd as the compiler. I am under Windows, she OSX.

It is not uncommon that she experiences more strictness in the type system than I do. For example, something like this does compile for me, but not for her:

int func(size_t i)
{
return i;
}

It passes my compilation. She gets an error msg about implicit casting of uint to int. I'm just wondering... has anybody else experienced that and what is the expected behavior?

Thanks,
Phil

size_t is a typedef to unsigned (check out http://dlang.org/type.html). So this warning is correct. I don't get this warning too. Maybe it's the type-checking that does differ on OSX. Are you using same compiler version and flags?

Yeah yeah I checked it out and we both use same versions and everything. Basically, to bit word size coherent I should just have writtent this instead:

ptrdiff_t func(size_t i) {return i;}

Though it is still somewhat unsafe, at least it behaves the same on both our machines.

Phil

Note that the compiler behaves the same, the code, not necessarily.

Reply via email to