Mercurial > projects > ldc
view test/bug55.d @ 306:0baca2feb554 trunk
[svn r327] Fixed some more MinGW32 issues. It's now very close to working.
Fixed problems with inline asm like: mov EAX, FS:4 , which incidentally is used in the runtime to get the stack bottom, on Windows.
author | lindquist |
---|---|
date | Fri, 27 Jun 2008 23:58:22 +0200 |
parents | d9d5d59873d8 |
children |
line wrap: on
line source
module bug55; extern(C) int printf(char*, ...); int atoi(char[] s) { int i, fac=1; bool neg = (s.length) && (s[0] == '-'); char[] a = neg ? s[1..$] : s; foreach_reverse(c; a) { i += (c-'0') * fac; fac *= 10; } return !neg ? i : -i; } void main() { printf("64213 = %d\n", atoi("64213")); printf("-64213 = %d\n", atoi("-64213")); assert(atoi("64213") == 64213); assert(atoi("-64213") == -64213); }