Index: /trunk/src/kmk/kmkbuiltin/mscfakes.c
===================================================================
--- /trunk/src/kmk/kmkbuiltin/mscfakes.c	(revision 2644)
+++ /trunk/src/kmk/kmkbuiltin/mscfakes.c	(revision 2645)
@@ -478,5 +478,7 @@
 intmax_t strtoimax(const char *nptr, char **endptr, int base)
 {
-    return strtol(nptr, endptr, base); /** @todo fix this. */
+    if (*nptr != '-')
+        return _strtoui64(nptr, endptr, base);
+    return -(intmax_t)_strtoui64(nptr + 1, endptr, base);
 }
 
@@ -484,5 +486,5 @@
 uintmax_t strtoumax(const char *nptr, char **endptr, int base)
 {
-    return strtoul(nptr, endptr, base); /** @todo fix this. */
+    return _strtoui64(nptr, endptr, base);
 }
 
