path: root/compat/strtoumax.c
diff options
authorJason Riedy <ejr@EECS.Berkeley.EDU>2007-02-20 00:22:56 (GMT)
committerJunio C Hamano <>2007-02-20 02:20:30 (GMT)
commitbc6b4f52fc79712db637ff90a472b82b32695e11 (patch)
tree6a1f85627af40c0079f01e7099701efb349c81b2 /compat/strtoumax.c
parentf496454e0fd22d003e9c9b5c3742b12d526bc0a4 (diff)
Add a compat/strtoumax.c for Solaris 8.
Solaris 8 was pre-c99, and they weren't willing to commit to the strtoumax definition according to /usr/include/inttypes.h. This adds NO_STRTOUMAX and NO_STRTOULL for ancient systems. If NO_STRTOUMAX is defined, the routine in compat/strtoumax.c will be used instead. That routine passes its arguments to strtoull unless NO_STRTOULL is defined. If NO_STRTOULL, then the routine uses strtoul (unsigned long). Signed-off-by: Jason Riedy <> Acked-by: Shawn O Pearce <> Signed-off-by: Junio C Hamano <>
Diffstat (limited to 'compat/strtoumax.c')
1 files changed, 10 insertions, 0 deletions
diff --git a/compat/strtoumax.c b/compat/strtoumax.c
new file mode 100644
index 0000000..5541353
--- /dev/null
+++ b/compat/strtoumax.c
@@ -0,0 +1,10 @@
+#include "../git-compat-util.h"
+uintmax_t gitstrtoumax (const char *nptr, char **endptr, int base)
+#if defined(NO_STRTOULL)
+ return strtoul(nptr, endptr, base);
+ return strtoull(nptr, endptr, base);