about summary refs log tree commit diff
path: root/stdlib
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib')
-rw-r--r--stdlib/stdlib.h19
-rw-r--r--stdlib/strfmon.c18
-rw-r--r--stdlib/strtoq.c4
-rw-r--r--stdlib/strtouq.c4
4 files changed, 34 insertions, 11 deletions
diff --git a/stdlib/stdlib.h b/stdlib/stdlib.h
index d34f56256a..876fcc2bb8 100644
--- a/stdlib/stdlib.h
+++ b/stdlib/stdlib.h
@@ -107,6 +107,16 @@ extern unsigned long long int strtouq __P ((__const char *__nptr,
 					    char **__endptr, int __base));
 #endif /* GCC and use BSD.  */
 
+#if defined (__GNUC__) && defined (__USE_MISC)
+/* Convert a string to a quadword integer.  */
+extern long long int strtoll __P ((__const char *__nptr, char **__endptr,
+				   int __base));
+/* Convert a string to an unsigned quadword integer.  */
+extern unsigned long long int strtoull __P ((__const char *__nptr,
+					     char **__endptr, int __base));
+#endif /* GCC and use MISC.  */
+
+
 
 /* The internal entry points for `strtoX' take an extra flag argument
    saying whether or not to parse locale-dependent number grouping.  */
@@ -160,6 +170,15 @@ extern __inline unsigned long long int strtouq (__const char *__nptr,
 { return __strtouq_internal (__nptr, __endptr, __base, 0); }
 #endif
 
+#ifdef __USE_MISC
+extern __inline long long int strtoll (__const char *__nptr, char **__endptr,
+				       int __base)
+{ return __strtoq_internal (__nptr, __endptr, __base, 0); }
+extern __inline unsigned long long int strtoull (__const char *__nptr,
+						 char **__endptr, int __base)
+{ return __strtouq_internal (__nptr, __endptr, __base, 0); }
+#endif
+
 extern __inline double atof (__const char *__nptr)
 { return strtod (__nptr, (char **) NULL); }
 extern __inline int atoi (__const char *__nptr)
diff --git a/stdlib/strfmon.c b/stdlib/strfmon.c
index 2074f29e46..3b8c7d602a 100644
--- a/stdlib/strfmon.c
+++ b/stdlib/strfmon.c
@@ -255,7 +255,7 @@ strfmon (char *s, size_t maxsize, const char *format, ...)
 	  ++fmt;
 	  is_long_double = 1;
 	}
-      
+
       /* Handle format specifier.  */
       switch (*fmt++)
 	{
@@ -288,7 +288,7 @@ strfmon (char *s, size_t maxsize, const char *format, ...)
 				       _NL_CURRENT (LC_MONETARY, MON_GROUPING),
 				       *_NL_CURRENT (LC_MONETARY,
 						     MON_THOUSANDS_SEP));
-      
+
       /* Now it's time to get the value.  */
       if (is_long_double == 1)
 	{
@@ -348,7 +348,7 @@ strfmon (char *s, size_t maxsize, const char *format, ...)
 	sep_by_space = 0;
       if (left_prec == -1)
 	left_prec = 0;
-	
+
 
       /* Perhaps we'll someday make these things configurable so
 	 better start using symbolic names now.  */
@@ -356,7 +356,7 @@ strfmon (char *s, size_t maxsize, const char *format, ...)
 #define right_paren ')'
 
       startp = dest;		/* Remember start so we can compute lenght.  */
-      
+
       if (sign_posn == 0)
 	out_char (left_paren);
       if (sign_posn == 5)	/* This is for positive number and ( flag.  */
@@ -371,7 +371,7 @@ strfmon (char *s, size_t maxsize, const char *format, ...)
 	      if (sep_by_space == 2)
 		out_char (' ');
 	    }
-	  
+
 	  if (print_curr_symbol)
 	    {
 	      out_string (currency_symbol);
@@ -398,7 +398,7 @@ strfmon (char *s, size_t maxsize, const char *format, ...)
       _IO_JUMPS ((_IO_FILE *) &f) = &_IO_str_jumps;
       _IO_str_init_static ((_IO_FILE *) &f, dest, (s + maxsize) - dest, dest);
 #else
-      memset((PTR) &f, 0, sizeof(f));
+      memset((void *) &f, 0, sizeof(f));
       f.__magic = _IOMAGIC;
       f.__mode.__write = 1;
       /* The buffer size is one less than MAXLEN
@@ -443,7 +443,7 @@ strfmon (char *s, size_t maxsize, const char *format, ...)
 	return -1;
 
       dest += done;
-      
+
       if (!cs_precedes)
 	{
 	  if (sign_posn == 3)
@@ -467,7 +467,7 @@ strfmon (char *s, size_t maxsize, const char *format, ...)
 	      out_char (' ');
 	    out_char (sign_char);
 	  }
-      
+
       if (sign_posn == 0)
 	out_char (right_paren);
       if (sign_posn == 5)
@@ -497,7 +497,7 @@ strfmon (char *s, size_t maxsize, const char *format, ...)
 
   /* Terminate the string.  */
   out_char ('\0');
-  
+
   va_end (ap);
 
   return dest - s - 1;
diff --git a/stdlib/strtoq.c b/stdlib/strtoq.c
index be1f723b13..5a9510bf52 100644
--- a/stdlib/strtoq.c
+++ b/stdlib/strtoq.c
@@ -1,5 +1,5 @@
 /* strtoq -- Function to parse a `long long int' from text.
-Copyright (C) 1995 Free Software Foundation, Inc.
+Copyright (C) 1995, 1996 Free Software Foundation, Inc.
 This file is part of the GNU C Library.
 
 The GNU C Library is free software; you can redistribute it and/or
@@ -20,3 +20,5 @@ Cambridge, MA 02139, USA.  */
 #define	QUAD	1
 
 #include <strtol.c>
+
+weak_alias (strtoq, strtoll)
diff --git a/stdlib/strtouq.c b/stdlib/strtouq.c
index 4eea0b22ee..e4d817f7f7 100644
--- a/stdlib/strtouq.c
+++ b/stdlib/strtouq.c
@@ -1,5 +1,5 @@
 /* strtouq -- Function to parse an `unsigned long long int' from text.
-Copyright (C) 1995 Free Software Foundation, Inc.
+Copyright (C) 1995, 1996 Free Software Foundation, Inc.
 This file is part of the GNU C Library.
 
 The GNU C Library is free software; you can redistribute it and/or
@@ -20,3 +20,5 @@ Cambridge, MA 02139, USA.  */
 #define	QUAD	1
 
 #include <strtoul.c>
+
+weak_alias (strtouq, strotull)