From 1d5053d6b407b6fc493151a3581df7c628ffa72b Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Wed, 3 Mar 2010 14:02:08 -0500 Subject: re PR c++/12909 (ambiguity in mangling vector types) PR c++/12909 * lto-streamer.h (LTO_tags): Add LTO_var_decl_alias. * lto-streamer-in.c (lto_input_tree): Read it. * lto-streamer-out.c (output_unreferenced_globals): Write it. From-SVN: r157204 --- gcc/lto-streamer-in.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'gcc/lto-streamer-in.c') diff --git a/gcc/lto-streamer-in.c b/gcc/lto-streamer-in.c index 0955914..b098be2 100644 --- a/gcc/lto-streamer-in.c +++ b/gcc/lto-streamer-in.c @@ -2696,6 +2696,17 @@ lto_input_tree (struct lto_input_block *ib, struct data_in *data_in) the code and class. */ result = lto_get_builtin_tree (ib, data_in); } + else if (tag == LTO_var_decl_alias) + { + /* An extra_name alias for a variable. */ + unsigned HOST_WIDE_INT ix; + tree target; + ix = lto_input_uleb128 (ib); + result = lto_file_decl_data_get_var_decl (data_in->file_data, ix); + ix = lto_input_uleb128 (ib); + target = lto_file_decl_data_get_var_decl (data_in->file_data, ix); + varpool_extra_name_alias (result, target); + } else if (tag == lto_tree_code_to_tag (INTEGER_CST)) { /* For integer constants we only need the type and its hi/low -- cgit v1.1