diff options
author | Jason Merrill <jason@redhat.com> | 2000-07-20 18:56:16 +0000 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2000-07-20 18:56:16 +0000 |
commit | 03d5f569dee6531e58b5a5da8c4bd52a0d12e5e2 (patch) | |
tree | fded7c9b0e2554317ca1eb693dab60c58aab2e2f /include/dyn-string.h | |
parent | 1af08294a5472e9db7ea838b90334683011b6d1e (diff) | |
download | ppe42-binutils-03d5f569dee6531e58b5a5da8c4bd52a0d12e5e2.tar.gz ppe42-binutils-03d5f569dee6531e58b5a5da8c4bd52a0d12e5e2.zip |
merge with gcc
Diffstat (limited to 'include/dyn-string.h')
-rw-r--r-- | include/dyn-string.h | 50 |
1 files changed, 39 insertions, 11 deletions
diff --git a/include/dyn-string.h b/include/dyn-string.h index 3e2213e5bc..103f947253 100644 --- a/include/dyn-string.h +++ b/include/dyn-string.h @@ -40,25 +40,53 @@ typedef struct dyn_string (strcmp ((DS1)->s, (DS2)->s)) -extern void dyn_string_init PARAMS ((struct dyn_string *, int)); +/* dyn_string functions are used in the demangling implementation + included in the G++ runtime library. To prevent collisions with + names in user programs, the functions that are used in the + demangler are given implementation-reserved names. */ + +#ifdef IN_LIBGCC2 + +#define dyn_string_init __cxa_dyn_string_init +#define dyn_string_new __cxa_dyn_string_new +#define dyn_string_delete __cxa_dyn_string_delete +#define dyn_string_release __cxa_dyn_string_release +#define dyn_string_resize __cxa_dyn_string_resize +#define dyn_string_clear __cxa_dyn_string_clear +#define dyn_string_copy __cxa_dyn_string_copy +#define dyn_string_copy_cstr __cxa_dyn_string_copy_cstr +#define dyn_string_prepend __cxa_dyn_string_prepend +#define dyn_string_prepend_cstr __cxa_dyn_string_prepend_cstr +#define dyn_string_insert __cxa_dyn_string_insert +#define dyn_string_insert_cstr __cxa_dyn_string_insert_cstr +#define dyn_string_append __cxa_dyn_string_append +#define dyn_string_append_cstr __cxa_dyn_string_append_cstr +#define dyn_string_append_char __cxa_dyn_string_append_char +#define dyn_string_substring __cxa_dyn_string_substring +#define dyn_string_eq __cxa_dyn_string_eq + +#endif /* IN_LIBGCC2 */ + + +extern int dyn_string_init PARAMS ((struct dyn_string *, int)); extern dyn_string_t dyn_string_new PARAMS ((int)); extern void dyn_string_delete PARAMS ((dyn_string_t)); extern char *dyn_string_release PARAMS ((dyn_string_t)); extern dyn_string_t dyn_string_resize PARAMS ((dyn_string_t, int)); extern void dyn_string_clear PARAMS ((dyn_string_t)); -extern void dyn_string_copy PARAMS ((dyn_string_t, dyn_string_t)); -extern void dyn_string_copy_cstr PARAMS ((dyn_string_t, const char *)); -extern void dyn_string_prepend PARAMS ((dyn_string_t, dyn_string_t)); -extern void dyn_string_prepend_cstr PARAMS ((dyn_string_t, const char *)); -extern void dyn_string_insert PARAMS ((dyn_string_t, int, +extern int dyn_string_copy PARAMS ((dyn_string_t, dyn_string_t)); +extern int dyn_string_copy_cstr PARAMS ((dyn_string_t, const char *)); +extern int dyn_string_prepend PARAMS ((dyn_string_t, dyn_string_t)); +extern int dyn_string_prepend_cstr PARAMS ((dyn_string_t, const char *)); +extern int dyn_string_insert PARAMS ((dyn_string_t, int, dyn_string_t)); -extern void dyn_string_insert_cstr PARAMS ((dyn_string_t, int, +extern int dyn_string_insert_cstr PARAMS ((dyn_string_t, int, const char *)); -extern dyn_string_t dyn_string_append PARAMS ((dyn_string_t, dyn_string_t)); -extern dyn_string_t dyn_string_append_cstr +extern int dyn_string_append PARAMS ((dyn_string_t, dyn_string_t)); +extern int dyn_string_append_cstr PARAMS ((dyn_string_t, const char *)); -extern dyn_string_t dyn_string_append_char +extern int dyn_string_append_char PARAMS ((dyn_string_t, int)); -extern void dyn_string_substring PARAMS ((dyn_string_t, +extern int dyn_string_substring PARAMS ((dyn_string_t, dyn_string_t, int, int)); extern int dyn_string_eq PARAMS ((dyn_string_t, dyn_string_t)); |