On Wednesday, 27 August 2014 at 19:56:29 UTC, Brian Schott 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 different on 32-bit and 64-bit systems. If she's
building 64-bit binaries on OS-X and you're building 32-bit
binaries on Windows you could see different messages.
Either way, size_t is unsigned, int is signed, and you should
probably be getting the warning as well.
All right thanks Brian you were right on point.
I 32 she 64.
Indeed, I should have gotten a a warning because it is unsafe.
When I emit code for 64 bit machine I get the error messages she
does, which at least allows me to avoid making her compilation
fail.
Thanks again Brian!
Phil