diff options
author | Tom Tromey <tromey@redhat.com> | 2007-12-06 18:56:26 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2007-12-06 18:56:26 +0000 |
commit | 97f6bd406c546b1669a4231a12b62df236af2188 (patch) | |
tree | b934a2743256c5e4e95dea15cdccc9504bf5ed64 /libcpp/include/cpplib.h | |
parent | 3ef50b629c91af90152fb2f7747c82c6fdd8e581 (diff) | |
download | gcc-97f6bd406c546b1669a4231a12b62df236af2188.zip gcc-97f6bd406c546b1669a4231a12b62df236af2188.tar.gz gcc-97f6bd406c546b1669a4231a12b62df236af2188.tar.bz2 |
re PR c/29172 (--combine can't handle #pragma once)
gcc
PR c/29172:
* c-opts.c (c_common_parse_file): Call cpp_clear_file_cache.
libcpp
PR c/29172:
* internal.h (struct cpp_reader) <file_hash_entries>: Changed
type.
<file_hash_entries_allocated, file_hash_entries_used>: Removed.
* files.c (FILE_HASH_POOL_SIZE): New macro.
(struct file_hash_entry_pool): New.
(destroy_all_cpp_files): New function.
(allocate_file_hash_entries): Allocate a file_hash_entry_pool.
(new_file_hash_entry): Update.
(free_file_hash_entries): New function.
(_cpp_cleanup_files): Call free_file_hash_entries and
destroy_all_cpp_files.
(cpp_clear_file_cache): New function.
* include/cpplib.h (cpp_clear_file_cache): Declare.
From-SVN: r130656
Diffstat (limited to 'libcpp/include/cpplib.h')
-rw-r--r-- | libcpp/include/cpplib.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libcpp/include/cpplib.h b/libcpp/include/cpplib.h index 01e982f..e205be7 100644 --- a/libcpp/include/cpplib.h +++ b/libcpp/include/cpplib.h @@ -862,6 +862,7 @@ extern cpp_dir *cpp_get_dir (struct _cpp_file *); extern cpp_buffer *cpp_get_buffer (cpp_reader *); extern struct _cpp_file *cpp_get_file (cpp_buffer *); extern cpp_buffer *cpp_get_prev (cpp_buffer *); +extern void cpp_clear_file_cache (cpp_reader *); /* In cpppch.c */ struct save_macro_data; |