diff options
Diffstat (limited to 'Build/source/texk/kpathsea')
-rw-r--r-- | Build/source/texk/kpathsea/ChangeLog | 6 | ||||
-rw-r--r-- | Build/source/texk/kpathsea/Makefile.am | 7 | ||||
-rw-r--r-- | Build/source/texk/kpathsea/Makefile.in | 10 | ||||
-rw-r--r-- | Build/source/texk/kpathsea/c-auto.in | 13 | ||||
-rwxr-xr-x | Build/source/texk/kpathsea/configure | 58 | ||||
-rw-r--r-- | Build/source/texk/kpathsea/configure.ac | 6 | ||||
-rw-r--r-- | Build/source/texk/kpathsea/lib.h | 6 | ||||
-rw-r--r-- | Build/source/texk/kpathsea/strcasecmp.c | 76 | ||||
-rw-r--r-- | Build/source/texk/kpathsea/strstr.c | 121 | ||||
-rw-r--r-- | Build/source/texk/kpathsea/strtol.c | 291 |
10 files changed, 19 insertions, 575 deletions
diff --git a/Build/source/texk/kpathsea/ChangeLog b/Build/source/texk/kpathsea/ChangeLog index bde213e16db..656b42ce232 100644 --- a/Build/source/texk/kpathsea/ChangeLog +++ b/Build/source/texk/kpathsea/ChangeLog @@ -1,3 +1,9 @@ +2015-03-10 Peter Breitenlohner <peb@mppmu.mpg.de> + + * configure.ac: Drop checks for strcasecmp, strtol, and strstr. + * lib.h: Drop the strstr() prototype. + * Makefile.am: No need to distribute the replacement functions. + 2014-12-13 Akira Kakuto <kakuto@fuk.kindai.ac.jp> * texmf.cnf: Sync with master which is changed by Norbert. diff --git a/Build/source/texk/kpathsea/Makefile.am b/Build/source/texk/kpathsea/Makefile.am index 17ab473710a..e72d1037b56 100644 --- a/Build/source/texk/kpathsea/Makefile.am +++ b/Build/source/texk/kpathsea/Makefile.am @@ -1,6 +1,6 @@ ## Makefile.am for the TeX Live subdirectory texk/kpathsea/ ## -## Copyright (C) 2009-2014 Peter Breitenlohner <tex-live@tug.org> +## Copyright (C) 2009-2015 Peter Breitenlohner <tex-live@tug.org> ## You may freely use, modify and/or distribute this file. ## SUBDIRS = . doc man @@ -106,10 +106,7 @@ endif !WIN32 $(libkpathsea_la_OBJECTS): paths.h kpathsea.h EXTRA_DIST += \ - putenv.c \ - strcasecmp.c \ - strtol.c \ - strstr.c + putenv.c kpseincludedir = ${includedir}/kpathsea diff --git a/Build/source/texk/kpathsea/Makefile.in b/Build/source/texk/kpathsea/Makefile.in index 642b71ecfa2..92a7cb88c3b 100644 --- a/Build/source/texk/kpathsea/Makefile.in +++ b/Build/source/texk/kpathsea/Makefile.in @@ -527,8 +527,7 @@ am__DIST_COMMON = $(srcdir)/../../am/rebuild.am $(srcdir)/Makefile.in \ ../../build-aux/config.sub ../../build-aux/depcomp \ ../../build-aux/install-sh ../../build-aux/ltmain.sh \ ../../build-aux/missing ../../build-aux/texinfo.tex \ - ../../build-aux/ylwrap AUTHORS ChangeLog NEWS README putenv.c \ - strcasecmp.c strstr.c strtol.c + ../../build-aux/ylwrap AUTHORS ChangeLog NEWS README putenv.c DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -694,8 +693,8 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = . doc man $(am__append_6) -EXTRA_DIST = PROJECTS putenv.c strcasecmp.c strtol.c strstr.c bsnl.awk \ - cnf-to-paths.awk $(TESTS) tests/cnfnewline/texmf.cnf mktex.cnf +EXTRA_DIST = PROJECTS putenv.c bsnl.awk cnf-to-paths.awk $(TESTS) \ + tests/cnfnewline/texmf.cnf mktex.cnf AM_CPPFLAGS = -I$(top_builddir)/.. -I$(top_srcdir)/.. AM_CFLAGS = $(WARNING_CFLAGS) lib_LTLIBRARIES = libkpathsea.la @@ -1018,9 +1017,6 @@ distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/putenv.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/strcasecmp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/strstr.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/strtol.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/access.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/kpsestat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/kpsewhich.Po@am__quote@ diff --git a/Build/source/texk/kpathsea/c-auto.in b/Build/source/texk/kpathsea/c-auto.in index 78f48eb47dd..00e20cb020e 100644 --- a/Build/source/texk/kpathsea/c-auto.in +++ b/Build/source/texk/kpathsea/c-auto.in @@ -39,10 +39,6 @@ */ #undef HAVE_DECL_PUTENV -/* Define to 1 if you have the declaration of `strstr', and to 0 if you don't. - */ -#undef HAVE_DECL_STRSTR - /* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'. */ #undef HAVE_DIRENT_H @@ -98,9 +94,6 @@ /* Define to 1 if you have the <stdlib.h> header file. */ #undef HAVE_STDLIB_H -/* Define to 1 if you have the `strcasecmp' function. */ -#undef HAVE_STRCASECMP - /* Define to 1 if you have the `strchr' function. */ #undef HAVE_STRCHR @@ -113,12 +106,6 @@ /* Define to 1 if you have the `strrchr' function. */ #undef HAVE_STRRCHR -/* Define to 1 if you have the `strstr' function. */ -#undef HAVE_STRSTR - -/* Define to 1 if you have the `strtol' function. */ -#undef HAVE_STRTOL - /* Define to 1 if `st_mtim' is a member of `struct stat'. */ #undef HAVE_STRUCT_STAT_ST_MTIM diff --git a/Build/source/texk/kpathsea/configure b/Build/source/texk/kpathsea/configure index 3b0a054be1e..deac639ba1c 100755 --- a/Build/source/texk/kpathsea/configure +++ b/Build/source/texk/kpathsea/configure @@ -13463,13 +13463,12 @@ fi done -for ac_func in putenv strcasecmp strtol strstr +for ac_func in putenv do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + ac_fn_c_check_func "$LINENO" "putenv" "ac_cv_func_putenv" +if test "x$ac_cv_func_putenv" = xyes; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +#define HAVE_PUTENV 1 _ACEOF fi @@ -13884,16 +13883,6 @@ fi cat >>confdefs.h <<_ACEOF #define HAVE_DECL_PUTENV $ac_have_decl _ACEOF -ac_fn_c_check_decl "$LINENO" "strstr" "ac_cv_have_decl_strstr" "$ac_includes_default" -if test "x$ac_cv_have_decl_strstr" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRSTR $ac_have_decl -_ACEOF ac_fn_c_check_func "$LINENO" "putenv" "ac_cv_func_putenv" if test "x$ac_cv_func_putenv" = xyes; then : @@ -13908,45 +13897,6 @@ esac fi -ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp" -if test "x$ac_cv_func_strcasecmp" = xyes; then : - $as_echo "#define HAVE_STRCASECMP 1" >>confdefs.h - -else - case " $LIBOBJS " in - *" strcasecmp.$ac_objext "* ) ;; - *) LIBOBJS="$LIBOBJS strcasecmp.$ac_objext" - ;; -esac - -fi - -ac_fn_c_check_func "$LINENO" "strtol" "ac_cv_func_strtol" -if test "x$ac_cv_func_strtol" = xyes; then : - $as_echo "#define HAVE_STRTOL 1" >>confdefs.h - -else - case " $LIBOBJS " in - *" strtol.$ac_objext "* ) ;; - *) LIBOBJS="$LIBOBJS strtol.$ac_objext" - ;; -esac - -fi - -ac_fn_c_check_func "$LINENO" "strstr" "ac_cv_func_strstr" -if test "x$ac_cv_func_strstr" = xyes; then : - $as_echo "#define HAVE_STRSTR 1" >>confdefs.h - -else - case " $LIBOBJS " in - *" strstr.$ac_objext "* ) ;; - *) LIBOBJS="$LIBOBJS strstr.$ac_objext" - ;; -esac - -fi - if test "x$ac_cv_func_getcwd" = xyes; then diff --git a/Build/source/texk/kpathsea/configure.ac b/Build/source/texk/kpathsea/configure.ac index e20f7a83fe4..d2e08afa404 100644 --- a/Build/source/texk/kpathsea/configure.ac +++ b/Build/source/texk/kpathsea/configure.ac @@ -1,6 +1,6 @@ dnl Process this file with autoconf to produce a configure script. dnl -dnl Copyright (C) 2009-2014 Peter Breitenlohner <tex-live@tug.org> +dnl Copyright (C) 2009-2015 Peter Breitenlohner <tex-live@tug.org> dnl dnl This file is free software; the copyright holder dnl gives unlimited permission to copy and/or distribute it, @@ -36,8 +36,8 @@ AC_PROG_AWK AC_CHECK_SIZEOF([long]) dnl Replacement functions that may be required on ancient broken system. -AC_CHECK_DECLS([putenv, strstr]) -AC_REPLACE_FUNCS([putenv strcasecmp strtol strstr]) +AC_CHECK_DECLS([putenv]) +AC_REPLACE_FUNCS([putenv]) if test "x$ac_cv_func_getcwd" = xyes; then # We only need to run this if we have getcwd. diff --git a/Build/source/texk/kpathsea/lib.h b/Build/source/texk/kpathsea/lib.h index 2aac2519b3d..8c1f8e1ecc4 100644 --- a/Build/source/texk/kpathsea/lib.h +++ b/Build/source/texk/kpathsea/lib.h @@ -1,7 +1,7 @@ /* lib.h: declarations for common, low-level routines in kpathsea. Copyright 1992, 1993, 1994, 1995, 1996, 2008, 2009, 2010, 2011, - 2012 Karl Berry. + 2012, 2015 Karl Berry. Copyright 1999, 2000, 2003, 2005 Olaf Weber. This library is free software; you can redistribute it and/or @@ -151,10 +151,6 @@ extern KPSEDLL const_string xbasename (const_string name); /* Return directory part of NAME. This returns a new string. */ extern KPSEDLL string xdirname (const_string name); -#if !HAVE_DECL_STRSTR -extern string strstr (const_string haystack, const_string needle); -#endif - /* If NAME has a suffix, return a pointer to its first character (i.e., the one after the `.'); otherwise, return NULL. */ extern KPSEDLL const_string find_suffix (const_string name); diff --git a/Build/source/texk/kpathsea/strcasecmp.c b/Build/source/texk/kpathsea/strcasecmp.c deleted file mode 100644 index 481a1ae45f7..00000000000 --- a/Build/source/texk/kpathsea/strcasecmp.c +++ /dev/null @@ -1,76 +0,0 @@ -/* strcasecmp.c - case-insensitive strcmp - - Copyright 2008, 2010 Karl Berry. - Copyright 1991, 1992, 1995 Free Software Foundation, Inc. - This file was part of the GNU C Library. - Modified by Karl Berry for kpathsea. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this library; if not, see <http://www.gnu.org/licenses/>. */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - -#include <ctype.h> - -/* Compare S1 and S2, ignoring case, returning less than, equal to or - greater than zero if S1 is lexiographically less than, - equal to or greater than S2. */ -int -strcasecmp (s1, s2) - const char *s1; - const char *s2; -{ - register const unsigned char *p1 = (const unsigned char *) s1; - register const unsigned char *p2 = (const unsigned char *) s2; - unsigned char c1, c2; - - if (p1 == p2) - return 0; - - do - { - c1 = tolower (*p1++); - c2 = tolower (*p2++); - if (c1 == '\0') - break; - } - while (c1 == c2); - - return c1 - c2; -} - -int -strncasecmp (s1, s2, n) - const char *s1; - const char *s2; - unsigned n; -{ - register const unsigned char *p1 = (const unsigned char *) s1; - register const unsigned char *p2 = (const unsigned char *) s2; - unsigned char c1, c2; - - if (p1 == p2 || n == 0) - return 0; - - do - { - c1 = tolower (*p1++); - c2 = tolower (*p2++); - if (c1 == '\0' || c1 != c2) - return c1 - c2; - } while (--n > 0); - - return c1 - c2; -} diff --git a/Build/source/texk/kpathsea/strstr.c b/Build/source/texk/kpathsea/strstr.c deleted file mode 100644 index 4042c492872..00000000000 --- a/Build/source/texk/kpathsea/strstr.c +++ /dev/null @@ -1,121 +0,0 @@ -/* strstr.c - search for a substring in string. - - Copyright 2008, 2010 Karl Berry. - Copyright 1994, 1995 Free Software Foundation, Inc. - This file was part of the GNU C Library. - Modified for kpathsea by Karl Berry. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this library; if not, see <http://www.gnu.org/licenses/>. */ - -/* - * My personal strstr() implementation that beats most other algorithms. - * Until someone tells me otherwise, I assume that this is the - * fastest implementation of strstr() in C. - * I deliberately chose not to comment it. You should have at least - * as much fun trying to understand it, as I had to write it :-). - * - * Stephen R. van den Berg, berg@pool.informatik.rwth-aachen.de */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - -typedef unsigned chartype; - -char * -strstr (phaystack, pneedle) - const char *phaystack; - const char *pneedle; -{ - register const unsigned char *haystack, *needle; - register chartype b, c; - - haystack = (const unsigned char *) phaystack; - needle = (const unsigned char *) pneedle; - - b = *needle; - if (b != '\0') - { - haystack--; /* possible ANSI violation */ - do - { - c = *++haystack; - if (c == '\0') - goto ret0; - } - while (c != b); - - c = *++needle; - if (c == '\0') - goto foundneedle; - ++needle; - goto jin; - - for (;;) - { - register chartype a; - register const unsigned char *rhaystack, *rneedle; - - do - { - a = *++haystack; - if (a == '\0') - goto ret0; - if (a == b) - break; - a = *++haystack; - if (a == '\0') - goto ret0; -shloop: ; - } - while (a != b); - -jin: a = *++haystack; - if (a == '\0') - goto ret0; - - if (a != c) - goto shloop; - - rhaystack = haystack-- + 1; - rneedle = needle; - a = *rneedle; - - if (*rhaystack == a) - do - { - if (a == '\0') - goto foundneedle; - ++rhaystack; - a = *++needle; - if (*rhaystack != a) - break; - if (a == '\0') - goto foundneedle; - ++rhaystack; - a = *++needle; - } - while (*rhaystack == a); - - needle = rneedle; /* took the register-poor aproach */ - - if (a == '\0') - break; - } - } -foundneedle: - return (char*) haystack; -ret0: - return 0; -} diff --git a/Build/source/texk/kpathsea/strtol.c b/Build/source/texk/kpathsea/strtol.c deleted file mode 100644 index a1864c6f7ed..00000000000 --- a/Build/source/texk/kpathsea/strtol.c +++ /dev/null @@ -1,291 +0,0 @@ -/* strtol.c - convert a string to an unsigned long int. - - Copyright 1997, 2008 Karl Berry. - Copyright 1991, 1992, 1994, 1995 Free Software Foundation, Inc. - Modified by Karl Berry for kpathsea. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this library; if not, see <http://www.gnu.org/licenses/>. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#ifdef _LIBC -# define USE_NUMBER_GROUPING -# define STDC_HEADERS -# define HAVE_LIMITS_H -#endif - -#include <ctype.h> -#include <errno.h> -#ifndef errno -extern int errno; -#endif - -#ifdef HAVE_LIMITS_H -# include <limits.h> -#endif - -#ifdef STDC_HEADERS -# include <stddef.h> -# include <stdlib.h> -#else -# ifndef NULL -# define NULL 0 -# endif -#endif - -#ifdef USE_NUMBER_GROUPING -# include "../locale/localeinfo.h" -#endif - -/* Nonzero if we are defining `strtoul' or `strtouq', operating on - unsigned integers. */ -#ifndef UNSIGNED -# define UNSIGNED 0 -# define INT LONG int -#else -# define strtol strtoul -# define INT unsigned LONG int -#endif - -/* If QUAD is defined, we are defining `strtoq' or `strtouq', - operating on `long long int's. */ -#ifdef QUAD -# if UNSIGNED -# define strtoul strtouq -# else -# define strtol strtoq -# endif -# define LONG long long -# undef LONG_MIN -# define LONG_MIN LONG_LONG_MIN -# undef LONG_MAX -# define LONG_MAX LONG_LONG_MAX -# undef ULONG_MAX -# define ULONG_MAX ULONG_LONG_MAX -# if __GNUC__ == 2 && __GNUC_MINOR__ < 7 - /* Work around gcc bug with using this constant. */ - static const unsigned long long int maxquad = ULONG_LONG_MAX; -# undef ULONG_MAX -# define ULONG_MAX maxquad -# endif -#else -# define LONG long -#endif - -#ifdef __STDC__ -# define INTERNAL(x) INTERNAL1(x) -# define INTERNAL1(x) __##x##_internal -#else -# define INTERNAL(x) __/**/x/**/_internal -#endif - -#ifdef USE_NUMBER_GROUPING -/* This file defines a function to check for correct grouping. */ -# include "grouping.h" -#endif - - -/* Convert NPTR to an `unsigned long int' or `long int' in base BASE. - If BASE is 0 the base is determined by the presence of a leading - zero, indicating octal or a leading "0x" or "0X", indicating hexadecimal. - If BASE is < 2 or > 36, it is reset to 10. - If ENDPTR is not NULL, a pointer to the character after the last - one converted is stored in *ENDPTR. */ - -INT -INTERNAL (strtol) (nptr, endptr, base, group) - const char *nptr; - char **endptr; - int base; - int group; -{ - int negative; - register unsigned LONG int cutoff; - register unsigned int cutlim; - register unsigned LONG int i; - register const char *s; - register unsigned char c; - const char *save, *end; - int overflow; - -#ifdef USE_NUMBER_GROUPING - /* The thousands character of the current locale. */ - wchar_t thousands; - /* The numeric grouping specification of the current locale, - in the format described in <locale.h>. */ - const char *grouping; - - if (group) - { - grouping = _NL_CURRENT (LC_NUMERIC, GROUPING); - if (*grouping <= 0 || *grouping == CHAR_MAX) - grouping = NULL; - else - { - /* Figure out the thousands separator character. */ - if (mbtowc (&thousands, _NL_CURRENT (LC_NUMERIC, THOUSANDS_SEP), - strlen (_NL_CURRENT (LC_NUMERIC, THOUSANDS_SEP))) <= 0) - thousands = (wchar_t) *_NL_CURRENT (LC_NUMERIC, THOUSANDS_SEP); - if (thousands == L'\0') - grouping = NULL; - } - } - else - grouping = NULL; -#endif - - if (base < 0 || base == 1 || base > 36) - base = 10; - - s = nptr; - - /* Skip white space. */ - while (isspace (*s)) - ++s; - if (*s == '\0') - goto noconv; - - /* Check for a sign. */ - if (*s == '-') - { - negative = 1; - ++s; - } - else if (*s == '+') - { - negative = 0; - ++s; - } - else - negative = 0; - - if (base == 16 && s[0] == '0' && toupper (s[1]) == 'X') - s += 2; - - /* If BASE is zero, figure it out ourselves. */ - if (base == 0) - if (*s == '0') - { - if (toupper (s[1]) == 'X') - { - s += 2; - base = 16; - } - else - base = 8; - } - else - base = 10; - - /* Save the pointer so we can check later if anything happened. */ - save = s; - -#ifdef USE_NUMBER_GROUPING - if (group) - { - /* Find the end of the digit string and check its grouping. */ - end = s; - for (c = *end; c != '\0'; c = *++end) - if (c != thousands && !isdigit (c) && - (!isalpha (c) || toupper (c) - 'A' + 10 >= base)) - break; - if (*s == thousands) - end = s; - else - end = correctly_grouped_prefix (s, end, thousands, grouping); - } - else -#endif - end = NULL; - - cutoff = ULONG_MAX / (unsigned LONG int) base; - cutlim = ULONG_MAX % (unsigned LONG int) base; - - overflow = 0; - i = 0; - for (c = *s; c != '\0'; c = *++s) - { - if (s == end) - break; - if (isdigit (c)) - c -= '0'; - else if (isalpha (c)) - c = toupper (c) - 'A' + 10; - else - break; - if (c >= base) - break; - /* Check for overflow. */ - if (i > cutoff || (i == cutoff && c > cutlim)) - overflow = 1; - else - { - i *= (unsigned LONG int) base; - i += c; - } - } - - /* Check if anything actually happened. */ - if (s == save) - goto noconv; - - /* Store in ENDPTR the address of one character - past the last character we converted. */ - if (endptr != NULL) - *endptr = (char *) s; - -#if !UNSIGNED - /* Check for a value that is within the range of - `unsigned LONG int', but outside the range of `LONG int'. */ - if (i > (negative ? - -(unsigned LONG int) LONG_MIN : (unsigned LONG int) LONG_MAX)) - overflow = 1; -#endif - - if (overflow) - { - errno = ERANGE; -#if UNSIGNED - return ULONG_MAX; -#else - return negative ? LONG_MIN : LONG_MAX; -#endif - } - - /* Return the result of the appropriate sign. */ - return (negative ? -i : i); - -noconv: - /* There was no number to convert. */ - if (endptr != NULL) - *endptr = (char *) nptr; - return 0L; -} - -/* External user entry point. */ - -#ifdef weak_symbol -weak_symbol (strtol) -#endif - -INT -strtol (nptr, endptr, base) - const char *nptr; - char **endptr; - int base; -{ - return INTERNAL (strtol) (nptr, endptr, base, 0); -} |