X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fgdb_obstack.h;h=3010cb6b10c1e4d6a2ea4ce5414e087ba0e2ab5e;hb=ad43e107eb233dcef8e76da6328aa4e4d74afd84;hp=1459ee96b852b95b07e756f6a1ba7e0bd3099bfd;hpb=d2afef13c283c7ea0f551ddfe966651b63ad6700;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/gdb_obstack.h b/gdb/gdb_obstack.h index 1459ee96b8..3010cb6b10 100644 --- a/gdb/gdb_obstack.h +++ b/gdb/gdb_obstack.h @@ -1,6 +1,6 @@ /* Obstack wrapper for GDB. - Copyright (C) 2002-2013 Free Software Foundation, Inc. + Copyright (C) 2002-2016 Free Software Foundation, Inc. This file is part of GDB. @@ -25,11 +25,11 @@ /* Utility macros - wrap obstack alloc into something more robust. */ #define OBSTACK_ZALLOC(OBSTACK,TYPE) \ - (memset (obstack_alloc ((OBSTACK), sizeof (TYPE)), 0, sizeof (TYPE))) + ((TYPE *) memset (obstack_alloc ((OBSTACK), sizeof (TYPE)), 0, sizeof (TYPE))) #define OBSTACK_CALLOC(OBSTACK,NUMBER,TYPE) \ - (memset (obstack_alloc ((OBSTACK), (NUMBER) * sizeof (TYPE)), \ - 0, (NUMBER) * sizeof (TYPE))) + ((TYPE *) memset (obstack_alloc ((OBSTACK), (NUMBER) * sizeof (TYPE)), \ + 0, (NUMBER) * sizeof (TYPE))) /* Unless explicitly specified, GDB obstacks always use xmalloc() and xfree(). */ @@ -58,4 +58,9 @@ extern char *obconcat (struct obstack *obstackp, ...) ATTRIBUTE_SENTINEL; +/* Duplicate STRING, returning an equivalent string that's allocated on the + obstack OBSTACKP. */ + +extern char *obstack_strdup (struct obstack *obstackp, const char *string); + #endif