From: Kaz Kojima Date: Mon, 7 Jun 2010 22:15:47 +0000 (+0000) Subject: sh.c (sh_build_builtin_va_list): Set tree type name of RECORD. X-Git-Tag: releases/gcc-4.6.0~6689 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=10575b5dc4edd7e12b480ea0e1ce1c6de8be7d5c;p=thirdparty%2Fgcc.git sh.c (sh_build_builtin_va_list): Set tree type name of RECORD. * config/sh/sh.c (sh_build_builtin_va_list): Set tree type name of RECORD. From-SVN: r160409 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2037e82dca20..6268186dbd66 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2010-06-07 Kaz Kojima + + * config/sh/sh.c (sh_build_builtin_va_list): Set tree type + name of RECORD. + 2010-06-07 Rainer Orth * doc/sourcebuild.texi (Effective-Target Keywords, Other diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index abd579ae1a7a..e186a108fb45 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -7636,13 +7636,15 @@ static tree sh_build_builtin_va_list (void) { tree f_next_o, f_next_o_limit, f_next_fp, f_next_fp_limit, f_next_stack; - tree record; + tree record, type_decl; if (TARGET_SH5 || (! TARGET_SH2E && ! TARGET_SH4) || TARGET_HITACHI || sh_cfun_attr_renesas_p ()) return ptr_type_node; record = (*lang_hooks.types.make_type) (RECORD_TYPE); + type_decl = build_decl (BUILTINS_LOCATION, + TYPE_DECL, get_identifier ("__va_list_tag"), record); f_next_o = build_decl (BUILTINS_LOCATION, FIELD_DECL, get_identifier ("__va_next_o"), @@ -7668,6 +7670,8 @@ sh_build_builtin_va_list (void) DECL_FIELD_CONTEXT (f_next_fp_limit) = record; DECL_FIELD_CONTEXT (f_next_stack) = record; + TREE_CHAIN (record) = type_decl; + TYPE_NAME (record) = type_decl; TYPE_FIELDS (record) = f_next_o; TREE_CHAIN (f_next_o) = f_next_o_limit; TREE_CHAIN (f_next_o_limit) = f_next_fp;