diff mbox

Fix transparent alias chain construction in change_decl_assembler_name

Message ID 20140318082011.GA18647@msticlxl57.ims.intel.com
State New
Headers show

Commit Message

Ilya Enkovich March 18, 2014, 8:20 a.m. UTC
Hi,

Here is a small patch to fix ICE in change_decl_assembler_name.  I found this problem working on my experimental branch which uses transparent alias chains heavily and I don't have reproducer for the trunk.

Bootstrapped and checked on linux-x86_64.

Thanks,
Ilya
--

2014-03-17  Ilya Enkovich  <ilya.enkovich@intel.com>

       * symtab.c (change_decl_assembler_name): Fix transparent alias
       chain construction.

Comments

Richard Biener March 18, 2014, 9:12 a.m. UTC | #1
On Tue, Mar 18, 2014 at 9:20 AM, Ilya Enkovich <enkovich.gnu@gmail.com> wrote:
> Hi,
>
> Here is a small patch to fix ICE in change_decl_assembler_name.  I found this problem working on my experimental branch which uses transparent alias chains heavily and I don't have reproducer for the trunk.
>
> Bootstrapped and checked on linux-x86_64.

Ok.

Thanks,
Richard.

> Thanks,
> Ilya
> --
>
> 2014-03-17  Ilya Enkovich  <ilya.enkovich@intel.com>
>
>        * symtab.c (change_decl_assembler_name): Fix transparent alias
>        chain construction.
>
>
> diff --git a/gcc/symtab.c b/gcc/symtab.c
> index 5d69803..2d6f665 100644
> --- a/gcc/symtab.c
> +++ b/gcc/symtab.c
> @@ -492,7 +492,7 @@ change_decl_assembler_name (tree decl, tree name)
>        if (alias)
>         {
>           IDENTIFIER_TRANSPARENT_ALIAS (name) = 1;
> -         TREE_CHAIN (DECL_ASSEMBLER_NAME (name)) = alias;
> +         TREE_CHAIN (name) = alias;
>         }
>        if (node)
>         insert_to_assembler_name_hash (node, true);
diff mbox

Patch

diff --git a/gcc/symtab.c b/gcc/symtab.c
index 5d69803..2d6f665 100644
--- a/gcc/symtab.c
+++ b/gcc/symtab.c
@@ -492,7 +492,7 @@  change_decl_assembler_name (tree decl, tree name)
       if (alias)
        {
          IDENTIFIER_TRANSPARENT_ALIAS (name) = 1;
-         TREE_CHAIN (DECL_ASSEMBLER_NAME (name)) = alias;
+         TREE_CHAIN (name) = alias;
        }
       if (node)
        insert_to_assembler_name_hash (node, true);