diff options
author | Alex Samuel <samuel@codesourcery.com> | 1999-09-21 18:09:54 +0000 |
---|---|---|
committer | Alex Samuel <samuel@gcc.gnu.org> | 1999-09-21 18:09:54 +0000 |
commit | 5c7261ab87ea3e94b51b40cee621ebf6b665e952 (patch) | |
tree | 89263391f64cf9aef62e2594ccd56036bca0f0f5 | |
parent | 3e3f78a69b9d2bf4608d5b04b907a9a13099971b (diff) | |
download | gcc-5c7261ab87ea3e94b51b40cee621ebf6b665e952.zip gcc-5c7261ab87ea3e94b51b40cee621ebf6b665e952.tar.gz gcc-5c7261ab87ea3e94b51b40cee621ebf6b665e952.tar.bz2 |
Replace string const "<built-in>" with dynamic allocation.
* tree.c (built_in_filename): New variable.
(BUILT_IN_FILENAME): New macro.
(init_tree_codes): Allocate built_in_filename.
(make_node): Use built_in_filename instead of string constant.
From-SVN: r29552
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/tree.c | 14 |
2 files changed, 19 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ece5f0d..0eb093a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +Tue Sep 21 11:04:34 1999 Alex Samuel <samuel@codesourcery.com> + + * tree.c (built_in_filename): New variable. + (BUILT_IN_FILENAME): New macro. + (init_tree_codes): Allocate built_in_filename. + (make_node): Use built_in_filename instead of string constant. + Tue Sep 21 14:13:27 1999 Nick Clifton <nickc@cygnus.com> * configure.in: Add fr30 target. @@ -278,6 +278,13 @@ static void fix_sizetype PROTO ((tree)); /* If non-null, a language specific helper for unsave_expr_now. */ void (*lang_unsave_expr_now) PROTO((tree)); + +/* The string used as a placeholder instead of a source file name for + built-in tree nodes. The variable, which is dynamically allocated, + should be used; the macro is only used to initialize it. */ + +static char *built_in_filename; +#define BUILT_IN_FILENAME ("<built-in>") tree global_trees[TI_MAX]; @@ -867,7 +874,9 @@ resume_momentary (yes) void init_tree_codes () { - + built_in_filename = + ggc_alloc_string (BUILT_IN_FILENAME, sizeof (BUILT_IN_FILENAME)); + ggc_add_string_root (&built_in_filename, 1); } /* Return a newly allocated node of code CODE. @@ -1044,7 +1053,8 @@ make_node (code) DECL_IN_SYSTEM_HEADER (t) = in_system_header && (obstack == &permanent_obstack); DECL_SOURCE_LINE (t) = lineno; - DECL_SOURCE_FILE (t) = (input_filename) ? input_filename : "<built-in>"; + DECL_SOURCE_FILE (t) = + (input_filename) ? input_filename : built_in_filename; DECL_UID (t) = next_decl_uid++; /* Note that we have not yet computed the alias set for this declaration. */ |