continue flogging the string->int conversion ifdefs
[p5sagit/p5-mst-13.2.git] / perl.h
diff --git a/perl.h b/perl.h
index ab59e02..d4d2292 100644 (file)
--- a/perl.h
+++ b/perl.h
@@ -3082,9 +3082,6 @@ typedef struct am_table_short AMTS;
 #   if !defined(Strtol) && defined(HAS_STRTOLL)
 #       define Strtol  strtoll
 #   endif
-#   if !defined(Strtol) && defined(HAS_ATOLL)
-#       define Strtol  atoll
-#   endif
 /* is there atoq() anywhere? */
 #endif
 #if !defined(Strtol) && defined(HAS_STRTOL)
@@ -3093,8 +3090,12 @@ typedef struct am_table_short AMTS;
 #ifndef Atol
 /* It would be more fashionable to use Strtol() to define atol()
  * (as is done for Atoul(), see below) but for backward compatibility
- * we just assume and use atol(). */
-#   define Atol                atol
+ * we just assume atol(). */
+#   if defined(USE_64_BIT_INT) && defined(IV_IS_QUAD) && QUADKIND == QUAD_IS_LONG_LONG && defined(HAS_ATOLL)
+#       define Atol    atoll
+#   else
+#       define Atol    atol
+#   endif
 #endif
 
 #if !defined(Strtoul) && defined(USE_64_BIT_INT) && defined(UV_IS_QUAD) && QUADKIND == QUAD_IS_LONG_LONG
@@ -3113,7 +3114,7 @@ typedef struct am_table_short AMTS;
 #   define Strtoul     strtoul
 #endif
 #ifndef Atoul
-#   define Atoul       Strtoul(s, (char **)NULL, 10)
+#   define Atoul(s)    Strtoul(s, (char **)NULL, 10)
 #endif
 
 #if !defined(PERLIO_IS_STDIO) && defined(HASATTRIBUTE)