mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-03-05 06:25:48 +08:00
merge from gcc
This commit is contained in:
parent
255557f8c3
commit
c4a2d2f3e1
@ -1,3 +1,11 @@
|
|||||||
|
2005-03-26 Gabriel Dos Reis <gdr@integrable-solutions.net>
|
||||||
|
|
||||||
|
* demangle.h: Remove uses of PARAMS.
|
||||||
|
|
||||||
|
* libiberty.h (ANSI_PROTOTYPES): Remove guard since
|
||||||
|
ANSI_PROTOTYPES is always assumed.
|
||||||
|
Remove uses of PARAMS throughout.
|
||||||
|
|
||||||
2005-03-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
2005-03-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||||
|
|
||||||
* libiberty.h (xstrndup): Declare.
|
* libiberty.h (xstrndup): Declare.
|
||||||
|
@ -110,31 +110,31 @@ extern const struct demangler_engine
|
|||||||
} libiberty_demanglers[];
|
} libiberty_demanglers[];
|
||||||
|
|
||||||
extern char *
|
extern char *
|
||||||
cplus_demangle PARAMS ((const char *mangled, int options));
|
cplus_demangle (const char *mangled, int options);
|
||||||
|
|
||||||
extern int
|
extern int
|
||||||
cplus_demangle_opname PARAMS ((const char *opname, char *result, int options));
|
cplus_demangle_opname (const char *opname, char *result, int options);
|
||||||
|
|
||||||
extern const char *
|
extern const char *
|
||||||
cplus_mangle_opname PARAMS ((const char *opname, int options));
|
cplus_mangle_opname (const char *opname, int options);
|
||||||
|
|
||||||
/* Note: This sets global state. FIXME if you care about multi-threading. */
|
/* Note: This sets global state. FIXME if you care about multi-threading. */
|
||||||
|
|
||||||
extern void
|
extern void
|
||||||
set_cplus_marker_for_demangling PARAMS ((int ch));
|
set_cplus_marker_for_demangling (int ch);
|
||||||
|
|
||||||
extern enum demangling_styles
|
extern enum demangling_styles
|
||||||
cplus_demangle_set_style PARAMS ((enum demangling_styles style));
|
cplus_demangle_set_style (enum demangling_styles style);
|
||||||
|
|
||||||
extern enum demangling_styles
|
extern enum demangling_styles
|
||||||
cplus_demangle_name_to_style PARAMS ((const char *name));
|
cplus_demangle_name_to_style (const char *name);
|
||||||
|
|
||||||
/* V3 ABI demangling entry points, defined in cp-demangle.c. */
|
/* V3 ABI demangling entry points, defined in cp-demangle.c. */
|
||||||
extern char*
|
extern char*
|
||||||
cplus_demangle_v3 PARAMS ((const char* mangled, int options));
|
cplus_demangle_v3 (const char* mangled, int options);
|
||||||
|
|
||||||
extern char*
|
extern char*
|
||||||
java_demangle_v3 PARAMS ((const char* mangled));
|
java_demangle_v3 (const char* mangled);
|
||||||
|
|
||||||
|
|
||||||
enum gnu_v3_ctor_kinds {
|
enum gnu_v3_ctor_kinds {
|
||||||
@ -148,7 +148,7 @@ enum gnu_v3_ctor_kinds {
|
|||||||
gnu_v3_ctor_kinds' value indicating what kind of constructor
|
gnu_v3_ctor_kinds' value indicating what kind of constructor
|
||||||
it is. */
|
it is. */
|
||||||
extern enum gnu_v3_ctor_kinds
|
extern enum gnu_v3_ctor_kinds
|
||||||
is_gnu_v3_mangled_ctor PARAMS ((const char *name));
|
is_gnu_v3_mangled_ctor (const char *name);
|
||||||
|
|
||||||
|
|
||||||
enum gnu_v3_dtor_kinds {
|
enum gnu_v3_dtor_kinds {
|
||||||
@ -162,7 +162,7 @@ enum gnu_v3_dtor_kinds {
|
|||||||
gnu_v3_dtor_kinds' value, indicating what kind of destructor
|
gnu_v3_dtor_kinds' value, indicating what kind of destructor
|
||||||
it is. */
|
it is. */
|
||||||
extern enum gnu_v3_dtor_kinds
|
extern enum gnu_v3_dtor_kinds
|
||||||
is_gnu_v3_mangled_dtor PARAMS ((const char *name));
|
is_gnu_v3_mangled_dtor (const char *name);
|
||||||
|
|
||||||
/* The V3 demangler works in two passes. The first pass builds a tree
|
/* The V3 demangler works in two passes. The first pass builds a tree
|
||||||
representation of the mangled name, and the second pass turns the
|
representation of the mangled name, and the second pass turns the
|
||||||
@ -440,25 +440,25 @@ struct demangle_component
|
|||||||
unrecognized or inappropriate component type. */
|
unrecognized or inappropriate component type. */
|
||||||
|
|
||||||
extern int
|
extern int
|
||||||
cplus_demangle_fill_component PARAMS ((struct demangle_component *fill,
|
cplus_demangle_fill_component (struct demangle_component *fill,
|
||||||
enum demangle_component_type,
|
enum demangle_component_type,
|
||||||
struct demangle_component *left,
|
struct demangle_component *left,
|
||||||
struct demangle_component *right));
|
struct demangle_component *right);
|
||||||
|
|
||||||
/* Fill in a DEMANGLE_COMPONENT_NAME. Returns non-zero on success,
|
/* Fill in a DEMANGLE_COMPONENT_NAME. Returns non-zero on success,
|
||||||
zero for bad arguments. */
|
zero for bad arguments. */
|
||||||
|
|
||||||
extern int
|
extern int
|
||||||
cplus_demangle_fill_name PARAMS ((struct demangle_component *fill,
|
cplus_demangle_fill_name (struct demangle_component *fill,
|
||||||
const char *, int));
|
const char *, int);
|
||||||
|
|
||||||
/* Fill in a DEMANGLE_COMPONENT_BUILTIN_TYPE, using the name of the
|
/* Fill in a DEMANGLE_COMPONENT_BUILTIN_TYPE, using the name of the
|
||||||
builtin type (e.g., "int", etc.). Returns non-zero on success,
|
builtin type (e.g., "int", etc.). Returns non-zero on success,
|
||||||
zero if the type is not recognized. */
|
zero if the type is not recognized. */
|
||||||
|
|
||||||
extern int
|
extern int
|
||||||
cplus_demangle_fill_builtin_type PARAMS ((struct demangle_component *fill,
|
cplus_demangle_fill_builtin_type (struct demangle_component *fill,
|
||||||
const char *type_name));
|
const char *type_name);
|
||||||
|
|
||||||
/* Fill in a DEMANGLE_COMPONENT_OPERATOR, using the name of the
|
/* Fill in a DEMANGLE_COMPONENT_OPERATOR, using the name of the
|
||||||
operator and the number of arguments which it takes (the latter is
|
operator and the number of arguments which it takes (the latter is
|
||||||
@ -467,33 +467,33 @@ cplus_demangle_fill_builtin_type PARAMS ((struct demangle_component *fill,
|
|||||||
not recognized. */
|
not recognized. */
|
||||||
|
|
||||||
extern int
|
extern int
|
||||||
cplus_demangle_fill_operator PARAMS ((struct demangle_component *fill,
|
cplus_demangle_fill_operator (struct demangle_component *fill,
|
||||||
const char *opname, int args));
|
const char *opname, int args);
|
||||||
|
|
||||||
/* Fill in a DEMANGLE_COMPONENT_EXTENDED_OPERATOR, providing the
|
/* Fill in a DEMANGLE_COMPONENT_EXTENDED_OPERATOR, providing the
|
||||||
number of arguments and the name. Returns non-zero on success,
|
number of arguments and the name. Returns non-zero on success,
|
||||||
zero for bad arguments. */
|
zero for bad arguments. */
|
||||||
|
|
||||||
extern int
|
extern int
|
||||||
cplus_demangle_fill_extended_operator PARAMS ((struct demangle_component *fill,
|
cplus_demangle_fill_extended_operator (struct demangle_component *fill,
|
||||||
int numargs,
|
int numargs,
|
||||||
struct demangle_component *nm));
|
struct demangle_component *nm);
|
||||||
|
|
||||||
/* Fill in a DEMANGLE_COMPONENT_CTOR. Returns non-zero on success,
|
/* Fill in a DEMANGLE_COMPONENT_CTOR. Returns non-zero on success,
|
||||||
zero for bad arguments. */
|
zero for bad arguments. */
|
||||||
|
|
||||||
extern int
|
extern int
|
||||||
cplus_demangle_fill_ctor PARAMS ((struct demangle_component *fill,
|
cplus_demangle_fill_ctor (struct demangle_component *fill,
|
||||||
enum gnu_v3_ctor_kinds kind,
|
enum gnu_v3_ctor_kinds kind,
|
||||||
struct demangle_component *name));
|
struct demangle_component *name);
|
||||||
|
|
||||||
/* Fill in a DEMANGLE_COMPONENT_DTOR. Returns non-zero on success,
|
/* Fill in a DEMANGLE_COMPONENT_DTOR. Returns non-zero on success,
|
||||||
zero for bad arguments. */
|
zero for bad arguments. */
|
||||||
|
|
||||||
extern int
|
extern int
|
||||||
cplus_demangle_fill_dtor PARAMS ((struct demangle_component *fill,
|
cplus_demangle_fill_dtor (struct demangle_component *fill,
|
||||||
enum gnu_v3_dtor_kinds kind,
|
enum gnu_v3_dtor_kinds kind,
|
||||||
struct demangle_component *name));
|
struct demangle_component *name);
|
||||||
|
|
||||||
/* This function translates a mangled name into a struct
|
/* This function translates a mangled name into a struct
|
||||||
demangle_component tree. The first argument is the mangled name.
|
demangle_component tree. The first argument is the mangled name.
|
||||||
@ -504,9 +504,7 @@ cplus_demangle_fill_dtor PARAMS ((struct demangle_component *fill,
|
|||||||
needed. */
|
needed. */
|
||||||
|
|
||||||
extern struct demangle_component *
|
extern struct demangle_component *
|
||||||
cplus_demangle_v3_components PARAMS ((const char *mangled,
|
cplus_demangle_v3_components (const char *mangled, int options, void **mem);
|
||||||
int options,
|
|
||||||
void **mem));
|
|
||||||
|
|
||||||
/* This function takes a struct demangle_component tree and returns
|
/* This function takes a struct demangle_component tree and returns
|
||||||
the corresponding demangled string. The first argument is DMGL_*
|
the corresponding demangled string. The first argument is DMGL_*
|
||||||
@ -521,10 +519,10 @@ cplus_demangle_v3_components PARAMS ((const char *mangled,
|
|||||||
memory allocation error. */
|
memory allocation error. */
|
||||||
|
|
||||||
extern char *
|
extern char *
|
||||||
cplus_demangle_print PARAMS ((int options,
|
cplus_demangle_print (int options,
|
||||||
const struct demangle_component *tree,
|
const struct demangle_component *tree,
|
||||||
int estimated_length,
|
int estimated_length,
|
||||||
size_t *p_allocated_size));
|
size_t *p_allocated_size);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
@ -41,26 +41,24 @@ extern "C" {
|
|||||||
|
|
||||||
#include "ansidecl.h"
|
#include "ansidecl.h"
|
||||||
|
|
||||||
#ifdef ANSI_PROTOTYPES
|
|
||||||
/* Get a definition for size_t. */
|
/* Get a definition for size_t. */
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
/* Get a definition for va_list. */
|
/* Get a definition for va_list. */
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Build an argument vector from a string. Allocates memory using
|
/* Build an argument vector from a string. Allocates memory using
|
||||||
malloc. Use freeargv to free the vector. */
|
malloc. Use freeargv to free the vector. */
|
||||||
|
|
||||||
extern char **buildargv PARAMS ((const char *)) ATTRIBUTE_MALLOC;
|
extern char **buildargv (const char *) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
/* Free a vector returned by buildargv. */
|
/* Free a vector returned by buildargv. */
|
||||||
|
|
||||||
extern void freeargv PARAMS ((char **));
|
extern void freeargv (char **);
|
||||||
|
|
||||||
/* Duplicate an argument vector. Allocates memory using malloc. Use
|
/* Duplicate an argument vector. Allocates memory using malloc. Use
|
||||||
freeargv to free the vector. */
|
freeargv to free the vector. */
|
||||||
|
|
||||||
extern char **dupargv PARAMS ((char **)) ATTRIBUTE_MALLOC;
|
extern char **dupargv (char **) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
|
|
||||||
/* Return the last component of a path name. Note that we can't use a
|
/* Return the last component of a path name. Note that we can't use a
|
||||||
@ -75,7 +73,7 @@ extern char **dupargv PARAMS ((char **)) ATTRIBUTE_MALLOC;
|
|||||||
is 1, we found it so don't provide any declaration at all. */
|
is 1, we found it so don't provide any declaration at all. */
|
||||||
#if !HAVE_DECL_BASENAME
|
#if !HAVE_DECL_BASENAME
|
||||||
#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined(__NetBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (__MINGW32__) || defined (HAVE_DECL_BASENAME)
|
#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined(__NetBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (__MINGW32__) || defined (HAVE_DECL_BASENAME)
|
||||||
extern char *basename PARAMS ((const char *));
|
extern char *basename (const char *);
|
||||||
#else
|
#else
|
||||||
extern char *basename ();
|
extern char *basename ();
|
||||||
#endif
|
#endif
|
||||||
@ -83,17 +81,17 @@ extern char *basename ();
|
|||||||
|
|
||||||
/* A well-defined basename () that is always compiled in. */
|
/* A well-defined basename () that is always compiled in. */
|
||||||
|
|
||||||
extern const char *lbasename PARAMS ((const char *));
|
extern const char *lbasename (const char *);
|
||||||
|
|
||||||
/* A well-defined realpath () that is always compiled in. */
|
/* A well-defined realpath () that is always compiled in. */
|
||||||
|
|
||||||
extern char *lrealpath PARAMS ((const char *));
|
extern char *lrealpath (const char *);
|
||||||
|
|
||||||
/* Concatenate an arbitrary number of strings. You must pass NULL as
|
/* Concatenate an arbitrary number of strings. You must pass NULL as
|
||||||
the last argument of this function, to terminate the list of
|
the last argument of this function, to terminate the list of
|
||||||
strings. Allocates memory using xmalloc. */
|
strings. Allocates memory using xmalloc. */
|
||||||
|
|
||||||
extern char *concat PARAMS ((const char *, ...)) ATTRIBUTE_MALLOC ATTRIBUTE_SENTINEL;
|
extern char *concat (const char *, ...) ATTRIBUTE_MALLOC ATTRIBUTE_SENTINEL;
|
||||||
|
|
||||||
/* Concatenate an arbitrary number of strings. You must pass NULL as
|
/* Concatenate an arbitrary number of strings. You must pass NULL as
|
||||||
the last argument of this function, to terminate the list of
|
the last argument of this function, to terminate the list of
|
||||||
@ -102,27 +100,27 @@ extern char *concat PARAMS ((const char *, ...)) ATTRIBUTE_MALLOC ATTRIBUTE_SENT
|
|||||||
pointer to be freed after the new string is created, similar to the
|
pointer to be freed after the new string is created, similar to the
|
||||||
way xrealloc works. */
|
way xrealloc works. */
|
||||||
|
|
||||||
extern char *reconcat PARAMS ((char *, const char *, ...)) ATTRIBUTE_MALLOC ATTRIBUTE_SENTINEL;
|
extern char *reconcat (char *, const char *, ...) ATTRIBUTE_MALLOC ATTRIBUTE_SENTINEL;
|
||||||
|
|
||||||
/* Determine the length of concatenating an arbitrary number of
|
/* Determine the length of concatenating an arbitrary number of
|
||||||
strings. You must pass NULL as the last argument of this function,
|
strings. You must pass NULL as the last argument of this function,
|
||||||
to terminate the list of strings. */
|
to terminate the list of strings. */
|
||||||
|
|
||||||
extern unsigned long concat_length PARAMS ((const char *, ...)) ATTRIBUTE_SENTINEL;
|
extern unsigned long concat_length (const char *, ...) ATTRIBUTE_SENTINEL;
|
||||||
|
|
||||||
/* Concatenate an arbitrary number of strings into a SUPPLIED area of
|
/* Concatenate an arbitrary number of strings into a SUPPLIED area of
|
||||||
memory. You must pass NULL as the last argument of this function,
|
memory. You must pass NULL as the last argument of this function,
|
||||||
to terminate the list of strings. The supplied memory is assumed
|
to terminate the list of strings. The supplied memory is assumed
|
||||||
to be large enough. */
|
to be large enough. */
|
||||||
|
|
||||||
extern char *concat_copy PARAMS ((char *, const char *, ...)) ATTRIBUTE_SENTINEL;
|
extern char *concat_copy (char *, const char *, ...) ATTRIBUTE_SENTINEL;
|
||||||
|
|
||||||
/* Concatenate an arbitrary number of strings into a GLOBAL area of
|
/* Concatenate an arbitrary number of strings into a GLOBAL area of
|
||||||
memory. You must pass NULL as the last argument of this function,
|
memory. You must pass NULL as the last argument of this function,
|
||||||
to terminate the list of strings. The supplied memory is assumed
|
to terminate the list of strings. The supplied memory is assumed
|
||||||
to be large enough. */
|
to be large enough. */
|
||||||
|
|
||||||
extern char *concat_copy2 PARAMS ((const char *, ...)) ATTRIBUTE_SENTINEL;
|
extern char *concat_copy2 (const char *, ...) ATTRIBUTE_SENTINEL;
|
||||||
|
|
||||||
/* This is the global area used by concat_copy2. */
|
/* This is the global area used by concat_copy2. */
|
||||||
|
|
||||||
@ -138,12 +136,12 @@ extern char *libiberty_concat_ptr;
|
|||||||
|
|
||||||
/* Check whether two file descriptors refer to the same file. */
|
/* Check whether two file descriptors refer to the same file. */
|
||||||
|
|
||||||
extern int fdmatch PARAMS ((int fd1, int fd2));
|
extern int fdmatch (int fd1, int fd2);
|
||||||
|
|
||||||
/* Get the working directory. The result is cached, so don't call
|
/* Get the working directory. The result is cached, so don't call
|
||||||
chdir() between calls to getpwd(). */
|
chdir() between calls to getpwd(). */
|
||||||
|
|
||||||
extern char * getpwd PARAMS ((void));
|
extern char * getpwd (void);
|
||||||
|
|
||||||
/* Get the current time. */
|
/* Get the current time. */
|
||||||
/* Prototypes vary from system to system, so we only provide a
|
/* Prototypes vary from system to system, so we only provide a
|
||||||
@ -151,121 +149,121 @@ extern char * getpwd PARAMS ((void));
|
|||||||
#ifdef __MINGW32__
|
#ifdef __MINGW32__
|
||||||
/* Forward declaration to avoid #include <sys/time.h>. */
|
/* Forward declaration to avoid #include <sys/time.h>. */
|
||||||
struct timeval;
|
struct timeval;
|
||||||
extern int gettimeofday PARAMS ((struct timeval *, void *));
|
extern int gettimeofday (struct timeval *, void *);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Get the amount of time the process has run, in microseconds. */
|
/* Get the amount of time the process has run, in microseconds. */
|
||||||
|
|
||||||
extern long get_run_time PARAMS ((void));
|
extern long get_run_time (void);
|
||||||
|
|
||||||
/* Generate a relocated path to some installation directory. Allocates
|
/* Generate a relocated path to some installation directory. Allocates
|
||||||
return value using malloc. */
|
return value using malloc. */
|
||||||
|
|
||||||
extern char *make_relative_prefix PARAMS ((const char *, const char *,
|
extern char *make_relative_prefix (const char *, const char *,
|
||||||
const char *)) ATTRIBUTE_MALLOC;
|
const char *) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
/* Choose a temporary directory to use for scratch files. */
|
/* Choose a temporary directory to use for scratch files. */
|
||||||
|
|
||||||
extern char *choose_temp_base PARAMS ((void)) ATTRIBUTE_MALLOC;
|
extern char *choose_temp_base (void) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
/* Return a temporary file name or NULL if unable to create one. */
|
/* Return a temporary file name or NULL if unable to create one. */
|
||||||
|
|
||||||
extern char *make_temp_file PARAMS ((const char *)) ATTRIBUTE_MALLOC;
|
extern char *make_temp_file (const char *) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
/* Remove a link to a file unless it is special. */
|
/* Remove a link to a file unless it is special. */
|
||||||
|
|
||||||
extern int unlink_if_ordinary PARAMS((const char *));
|
extern int unlink_if_ordinary (const char *);
|
||||||
|
|
||||||
/* Allocate memory filled with spaces. Allocates using malloc. */
|
/* Allocate memory filled with spaces. Allocates using malloc. */
|
||||||
|
|
||||||
extern const char *spaces PARAMS ((int count));
|
extern const char *spaces (int count);
|
||||||
|
|
||||||
/* Return the maximum error number for which strerror will return a
|
/* Return the maximum error number for which strerror will return a
|
||||||
string. */
|
string. */
|
||||||
|
|
||||||
extern int errno_max PARAMS ((void));
|
extern int errno_max (void);
|
||||||
|
|
||||||
/* Return the name of an errno value (e.g., strerrno (EINVAL) returns
|
/* Return the name of an errno value (e.g., strerrno (EINVAL) returns
|
||||||
"EINVAL"). */
|
"EINVAL"). */
|
||||||
|
|
||||||
extern const char *strerrno PARAMS ((int));
|
extern const char *strerrno (int);
|
||||||
|
|
||||||
/* Given the name of an errno value, return the value. */
|
/* Given the name of an errno value, return the value. */
|
||||||
|
|
||||||
extern int strtoerrno PARAMS ((const char *));
|
extern int strtoerrno (const char *);
|
||||||
|
|
||||||
/* ANSI's strerror(), but more robust. */
|
/* ANSI's strerror(), but more robust. */
|
||||||
|
|
||||||
extern char *xstrerror PARAMS ((int));
|
extern char *xstrerror (int);
|
||||||
|
|
||||||
/* Return the maximum signal number for which strsignal will return a
|
/* Return the maximum signal number for which strsignal will return a
|
||||||
string. */
|
string. */
|
||||||
|
|
||||||
extern int signo_max PARAMS ((void));
|
extern int signo_max (void);
|
||||||
|
|
||||||
/* Return a signal message string for a signal number
|
/* Return a signal message string for a signal number
|
||||||
(e.g., strsignal (SIGHUP) returns something like "Hangup"). */
|
(e.g., strsignal (SIGHUP) returns something like "Hangup"). */
|
||||||
/* This is commented out as it can conflict with one in system headers.
|
/* This is commented out as it can conflict with one in system headers.
|
||||||
We still document its existence though. */
|
We still document its existence though. */
|
||||||
|
|
||||||
/*extern const char *strsignal PARAMS ((int));*/
|
/*extern const char *strsignal (int);*/
|
||||||
|
|
||||||
/* Return the name of a signal number (e.g., strsigno (SIGHUP) returns
|
/* Return the name of a signal number (e.g., strsigno (SIGHUP) returns
|
||||||
"SIGHUP"). */
|
"SIGHUP"). */
|
||||||
|
|
||||||
extern const char *strsigno PARAMS ((int));
|
extern const char *strsigno (int);
|
||||||
|
|
||||||
/* Given the name of a signal, return its number. */
|
/* Given the name of a signal, return its number. */
|
||||||
|
|
||||||
extern int strtosigno PARAMS ((const char *));
|
extern int strtosigno (const char *);
|
||||||
|
|
||||||
/* Register a function to be run by xexit. Returns 0 on success. */
|
/* Register a function to be run by xexit. Returns 0 on success. */
|
||||||
|
|
||||||
extern int xatexit PARAMS ((void (*fn) (void)));
|
extern int xatexit (void (*fn) (void));
|
||||||
|
|
||||||
/* Exit, calling all the functions registered with xatexit. */
|
/* Exit, calling all the functions registered with xatexit. */
|
||||||
|
|
||||||
extern void xexit PARAMS ((int status)) ATTRIBUTE_NORETURN;
|
extern void xexit (int status) ATTRIBUTE_NORETURN;
|
||||||
|
|
||||||
/* Set the program name used by xmalloc. */
|
/* Set the program name used by xmalloc. */
|
||||||
|
|
||||||
extern void xmalloc_set_program_name PARAMS ((const char *));
|
extern void xmalloc_set_program_name (const char *);
|
||||||
|
|
||||||
/* Report an allocation failure. */
|
/* Report an allocation failure. */
|
||||||
extern void xmalloc_failed PARAMS ((size_t)) ATTRIBUTE_NORETURN;
|
extern void xmalloc_failed (size_t) ATTRIBUTE_NORETURN;
|
||||||
|
|
||||||
/* Allocate memory without fail. If malloc fails, this will print a
|
/* Allocate memory without fail. If malloc fails, this will print a
|
||||||
message to stderr (using the name set by xmalloc_set_program_name,
|
message to stderr (using the name set by xmalloc_set_program_name,
|
||||||
if any) and then call xexit. */
|
if any) and then call xexit. */
|
||||||
|
|
||||||
extern PTR xmalloc PARAMS ((size_t)) ATTRIBUTE_MALLOC;
|
extern PTR xmalloc (size_t) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
/* Reallocate memory without fail. This works like xmalloc. Note,
|
/* Reallocate memory without fail. This works like xmalloc. Note,
|
||||||
realloc type functions are not suitable for attribute malloc since
|
realloc type functions are not suitable for attribute malloc since
|
||||||
they may return the same address across multiple calls. */
|
they may return the same address across multiple calls. */
|
||||||
|
|
||||||
extern PTR xrealloc PARAMS ((PTR, size_t));
|
extern PTR xrealloc (PTR, size_t);
|
||||||
|
|
||||||
/* Allocate memory without fail and set it to zero. This works like
|
/* Allocate memory without fail and set it to zero. This works like
|
||||||
xmalloc. */
|
xmalloc. */
|
||||||
|
|
||||||
extern PTR xcalloc PARAMS ((size_t, size_t)) ATTRIBUTE_MALLOC;
|
extern PTR xcalloc (size_t, size_t) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
/* Copy a string into a memory buffer without fail. */
|
/* Copy a string into a memory buffer without fail. */
|
||||||
|
|
||||||
extern char *xstrdup PARAMS ((const char *)) ATTRIBUTE_MALLOC;
|
extern char *xstrdup (const char *) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
/* Copy at most N characters from string into a buffer without fail. */
|
/* Copy at most N characters from string into a buffer without fail. */
|
||||||
|
|
||||||
extern char *xstrndup PARAMS ((const char *, size_t)) ATTRIBUTE_MALLOC;
|
extern char *xstrndup (const char *, size_t) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
/* Copy an existing memory buffer to a new memory buffer without fail. */
|
/* Copy an existing memory buffer to a new memory buffer without fail. */
|
||||||
|
|
||||||
extern PTR xmemdup PARAMS ((const PTR, size_t, size_t)) ATTRIBUTE_MALLOC;
|
extern PTR xmemdup (const PTR, size_t, size_t) ATTRIBUTE_MALLOC;
|
||||||
|
|
||||||
/* Physical memory routines. Return values are in BYTES. */
|
/* Physical memory routines. Return values are in BYTES. */
|
||||||
extern double physmem_total PARAMS ((void));
|
extern double physmem_total (void);
|
||||||
extern double physmem_available PARAMS ((void));
|
extern double physmem_available (void);
|
||||||
|
|
||||||
|
|
||||||
/* These macros provide a K&R/C89/C++-friendly way of allocating structures
|
/* These macros provide a K&R/C89/C++-friendly way of allocating structures
|
||||||
@ -303,7 +301,7 @@ extern double physmem_available PARAMS ((void));
|
|||||||
#define _hex_array_size 256
|
#define _hex_array_size 256
|
||||||
#define _hex_bad 99
|
#define _hex_bad 99
|
||||||
extern const unsigned char _hex_value[_hex_array_size];
|
extern const unsigned char _hex_value[_hex_array_size];
|
||||||
extern void hex_init PARAMS ((void));
|
extern void hex_init (void);
|
||||||
#define hex_p(c) (hex_value (c) != _hex_bad)
|
#define hex_p(c) (hex_value (c) != _hex_bad)
|
||||||
/* If you change this, note well: Some code relies on side effects in
|
/* If you change this, note well: Some code relies on side effects in
|
||||||
the argument being performed exactly once. */
|
the argument being performed exactly once. */
|
||||||
@ -319,25 +317,25 @@ extern void hex_init PARAMS ((void));
|
|||||||
|
|
||||||
/* Execute a program. */
|
/* Execute a program. */
|
||||||
|
|
||||||
extern int pexecute PARAMS ((const char *, char * const *, const char *,
|
extern int pexecute (const char *, char * const *, const char *,
|
||||||
const char *, char **, char **, int));
|
const char *, char **, char **, int);
|
||||||
|
|
||||||
/* Wait for pexecute to finish. */
|
/* Wait for pexecute to finish. */
|
||||||
|
|
||||||
extern int pwait PARAMS ((int, int *, int));
|
extern int pwait (int, int *, int);
|
||||||
|
|
||||||
#if !HAVE_DECL_ASPRINTF
|
#if !HAVE_DECL_ASPRINTF
|
||||||
/* Like sprintf but provides a pointer to malloc'd storage, which must
|
/* Like sprintf but provides a pointer to malloc'd storage, which must
|
||||||
be freed by the caller. */
|
be freed by the caller. */
|
||||||
|
|
||||||
extern int asprintf PARAMS ((char **, const char *, ...)) ATTRIBUTE_PRINTF_2;
|
extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !HAVE_DECL_VASPRINTF
|
#if !HAVE_DECL_VASPRINTF
|
||||||
/* Like vsprintf but provides a pointer to malloc'd storage, which
|
/* Like vsprintf but provides a pointer to malloc'd storage, which
|
||||||
must be freed by the caller. */
|
must be freed by the caller. */
|
||||||
|
|
||||||
extern int vasprintf PARAMS ((char **, const char *, va_list))
|
extern int vasprintf (char **, const char *, va_list)
|
||||||
ATTRIBUTE_PRINTF(2,0);
|
ATTRIBUTE_PRINTF(2,0);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -349,7 +347,7 @@ extern int vasprintf PARAMS ((char **, const char *, va_list))
|
|||||||
USE_C_ALLOCA yourself. The canonical autoconf macro C_ALLOCA is
|
USE_C_ALLOCA yourself. The canonical autoconf macro C_ALLOCA is
|
||||||
also set/unset as it is often used to indicate whether code needs
|
also set/unset as it is often used to indicate whether code needs
|
||||||
to call alloca(0). */
|
to call alloca(0). */
|
||||||
extern PTR C_alloca PARAMS ((size_t)) ATTRIBUTE_MALLOC;
|
extern PTR C_alloca (size_t) ATTRIBUTE_MALLOC;
|
||||||
#undef alloca
|
#undef alloca
|
||||||
#if GCC_VERSION >= 2000 && !defined USE_C_ALLOCA
|
#if GCC_VERSION >= 2000 && !defined USE_C_ALLOCA
|
||||||
# define alloca(x) __builtin_alloca(x)
|
# define alloca(x) __builtin_alloca(x)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user