From e3091a5f95cfd2130771ebf7cc8535c573d50875 Mon Sep 17 00:00:00 2001 From: "J\"orn Rennecke" Date: Wed, 4 Jun 2003 17:19:36 +0000 Subject: [PATCH] c-decl.c (c_init_decl_processing): Clear input_file_name while building common nodes. * c-decl.c (c_init_decl_processing): Clear input_file_name while building common nodes. * dwarf2out.c (gen_compile_unit_die, dwarf2out_finish): Don't add working directory for strings like . From-SVN: r67452 --- gcc/ChangeLog | 7 +++++++ gcc/c-decl.c | 8 ++++++++ gcc/dwarf2out.c | 7 +++++-- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e46b3294c37e..7c7b426f8183 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2003-06-04 J"orn Rennecke + + * c-decl.c (c_init_decl_processing): Clear input_file_name + while building common nodes. + * dwarf2out.c (gen_compile_unit_die, dwarf2out_finish): + Don't add working directory for strings like . + 2003-06-04 David Edelsohn * doc/install.texi (*-ibm-aix*): Native as and ld required diff --git a/gcc/c-decl.c b/gcc/c-decl.c index f9124e4a9762..b81ecd8e2b23 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -2268,6 +2268,7 @@ c_init_decl_processing () { tree endlink; tree ptr_ftype_void, ptr_ftype_ptr; + const char *save_input_filename; /* Adds some ggc roots, and reserved words for c-parse.in. */ c_parse_init (); @@ -2280,6 +2281,11 @@ c_init_decl_processing () /* Make the binding_level structure for global names. */ pushlevel (0); global_binding_level = current_binding_level; + /* Declarations from c_common_nodes_and_builtins must not be associated + with this input file, lest we get differences between using and not + using preprocessed headers. */ + save_input_filename = input_filename; + input_filename = NULL; build_common_tree_nodes (flag_signed_char); @@ -2307,6 +2313,8 @@ c_init_decl_processing () = build_function_type (ptr_type_node, tree_cons (NULL_TREE, ptr_type_node, endlink)); + input_filename = save_input_filename; + pedantic_lvalues = pedantic; make_fname_decl = c_make_fname_decl; diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 3d908e473252..e64932941aca 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -11493,7 +11493,8 @@ gen_compile_unit_die (filename) if (filename) { add_name_attribute (die, filename); - if (filename[0] != DIR_SEPARATOR) + /* Don't add cwd for . */ + if (filename[0] != DIR_SEPARATOR && filename[0] != '<') add_comp_dir_attribute (die); } @@ -13084,7 +13085,9 @@ dwarf2out_finish (filename) { size_t i; for (i = 1; i < VARRAY_ACTIVE_SIZE (file_table); i++) - if (VARRAY_CHAR_PTR (file_table, i)[0] != DIR_SEPARATOR) + if (VARRAY_CHAR_PTR (file_table, i)[0] != DIR_SEPARATOR + /* Don't add cwd for . */ + && VARRAY_CHAR_PTR (file_table, i)[0] != '<') { add_comp_dir_attribute (comp_unit_die); break; -- 2.43.5