aboutsummaryrefslogtreecommitdiff
path: root/gcc/cpphash.h
diff options
context:
space:
mode:
authorNeil Booth <neil@daikokuya.demon.co.uk>2001-08-11 12:37:19 +0000
committerNeil Booth <neil@gcc.gnu.org>2001-08-11 12:37:19 +0000
commitbef985f3f69e6f63b144e936b599517e2d6b0601 (patch)
treefcbebbbfda56236b89a255fb6864d9fcde8b6022 /gcc/cpphash.h
parent4d5f3fbd61ad7e6a13424fa720bda3888d6ef429 (diff)
downloadgcc-bef985f3f69e6f63b144e936b599517e2d6b0601.zip
gcc-bef985f3f69e6f63b144e936b599517e2d6b0601.tar.gz
gcc-bef985f3f69e6f63b144e936b599517e2d6b0601.tar.bz2
cpphash.c (_cpp_destroy_hashtable): Use ht_destroy.
* cpphash.c (_cpp_destroy_hashtable): Use ht_destroy. * cpphash.h (CPP_IN_SYSTEM_HEADER): Fix. (struct cpp_pool): New member first. * cppinit.c (append_include_chain): Plug memory leaks. * cpplib.c (cpp_register_pragma, cpp_register_pragma_space): Allocate pragma structures from the (aligned) macro pool to avoid leaking memory. * cpplex.c (_cpp_init_pool, _cpp_free_pool): Use pool->first so we don't leak memory. * hashtable.c (ht_destroy): New. * hashtable.h (ht_destroy): New. From-SVN: r44794
Diffstat (limited to 'gcc/cpphash.h')
-rw-r--r--gcc/cpphash.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/cpphash.h b/gcc/cpphash.h
index cbca913..27e221c 100644
--- a/gcc/cpphash.h
+++ b/gcc/cpphash.h
@@ -66,7 +66,7 @@ struct cpp_chunk
typedef struct cpp_pool cpp_pool;
struct cpp_pool
{
- struct cpp_chunk *cur, *locked;
+ struct cpp_chunk *cur, *locked, *first;
unsigned char *pos; /* Current position. */
unsigned int align;
unsigned int locks;
@@ -368,7 +368,7 @@ extern unsigned char _cpp_trigraph_map[UCHAR_MAX + 1];
/* Macros. */
#define CPP_PRINT_DEPS(PFILE) CPP_OPTION (PFILE, print_deps)
-#define CPP_IN_SYSTEM_HEADER(PFILE) (pfile->map && pfile->map->sysp)
+#define CPP_IN_SYSTEM_HEADER(PFILE) ((PFILE)->map && (PFILE)->map->sysp)
#define CPP_PEDANTIC(PF) CPP_OPTION (PF, pedantic)
#define CPP_WTRADITIONAL(PF) CPP_OPTION (PF, warn_traditional)