{"id":813702,"url":"http://patchwork.ozlabs.org/api/patches/813702/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/patch/CAOyqgcUmA1gMxeE=YSFyBVWVMaehL8U2dWCW=8VD345QNX9gOA@mail.gmail.com/","project":{"id":17,"url":"http://patchwork.ozlabs.org/api/projects/17/?format=json","name":"GNU Compiler Collection","link_name":"gcc","list_id":"gcc-patches.gcc.gnu.org","list_email":"gcc-patches@gcc.gnu.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<CAOyqgcUmA1gMxeE=YSFyBVWVMaehL8U2dWCW=8VD345QNX9gOA@mail.gmail.com>","list_archive_url":null,"date":"2017-09-14T03:51:24","name":"Go patch committed: emit type specific functions for aliases","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"0f0f93cc72967c3bd594c20e46a5782809821d12","submitter":{"id":36501,"url":"http://patchwork.ozlabs.org/api/people/36501/?format=json","name":"Ian Lance Taylor","email":"iant@golang.org"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/gcc/patch/CAOyqgcUmA1gMxeE=YSFyBVWVMaehL8U2dWCW=8VD345QNX9gOA@mail.gmail.com/mbox/","series":[{"id":3024,"url":"http://patchwork.ozlabs.org/api/series/3024/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/list/?series=3024","date":"2017-09-14T03:51:24","name":"Go patch committed: emit type specific functions for aliases","version":1,"mbox":"http://patchwork.ozlabs.org/series/3024/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/813702/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/813702/checks/","tags":{},"related":[],"headers":{"Return-Path":"<gcc-patches-return-462101-incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","mailing list gcc-patches@gcc.gnu.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org\n\t(client-ip=209.132.180.131; helo=sourceware.org;\n\tenvelope-from=gcc-patches-return-462101-incoming=patchwork.ozlabs.org@gcc.gnu.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org\n\theader.b=\"AUR3fG7C\"; dkim-atps=neutral","sourceware.org; auth=none"],"Received":["from sourceware.org (server1.sourceware.org [209.132.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xt4Mv32Bmz9sBZ\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 14 Sep 2017 13:51:37 +1000 (AEST)","(qmail 352 invoked by alias); 14 Sep 2017 03:51:29 -0000","(qmail 341 invoked by uid 89); 14 Sep 2017 03:51:28 -0000","from mail-pg0-f48.google.com (HELO mail-pg0-f48.google.com)\n\t(74.125.83.48) by sourceware.org\n\t(qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP;\n\tThu, 14 Sep 2017 03:51:26 +0000","by mail-pg0-f48.google.com with SMTP id 188so4157386pgb.2 for\n\t<gcc-patches@gcc.gnu.org>; Wed, 13 Sep 2017 20:51:26 -0700 (PDT)","by 10.100.182.173 with HTTP; Wed, 13 Sep 2017 20:51:24 -0700 (PDT)"],"DomainKey-Signature":"a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id\n\t:list-unsubscribe:list-archive:list-post:list-help:sender\n\t:mime-version:from:date:message-id:subject:to:content-type; q=\n\tdns; s=default; b=dtl8mGTdsQgouJF7J6sijC3ymsSuTxUiW7UiQQNar0yqIp\n\tMcORlychwM/jXQ/dvNuLxnDjDkukz0EtxzZFXHvyTFjkb42I/KJ8vGTfbTskUsEO\n\tnPe703m1JLQ/anFXrMK962Ba1OPiUaFYjXkv43LnRTkMNeDzkxs/jAkEX4Nbc=","DKIM-Signature":"v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id\n\t:list-unsubscribe:list-archive:list-post:list-help:sender\n\t:mime-version:from:date:message-id:subject:to:content-type; s=\n\tdefault; bh=XH5OUAoAL4hUqDHo84PrpAlq2bk=; b=AUR3fG7Cd4zSbjIAp0u9\n\tAuU3vTzZj/z1Lif8t17hdJd/ip6KS3zaN1PCm0e1ipzpZ5rmVItxtS+93qasRAne\n\tvzoL1TURcbhodN/S7EU/8qQg3roU/qX0oaiycudBXs3pTTJw/ri7lL7N1KSq4Xpf\n\tbJdeP8jdv75QQ3ijzZJG/8k=","Mailing-List":"contact gcc-patches-help@gcc.gnu.org; run by ezmlm","Precedence":"bulk","List-Id":"<gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<mailto:gcc-patches-unsubscribe-incoming=patchwork.ozlabs.org@gcc.gnu.org>","List-Archive":"<http://gcc.gnu.org/ml/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-help@gcc.gnu.org>","Sender":"gcc-patches-owner@gcc.gnu.org","X-Virus-Found":"No","X-Spam-SWARE-Status":"No, score=-11.0 required=5.0 tests=AWL, BAYES_00,\n\tGIT_PATCH_2, GIT_PATCH_3, KAM_ASCII_DIVIDERS,\n\tRCVD_IN_DNSWL_NONE,\n\tSPF_PASS autolearn=ham version=3.3.2 spammy=","X-HELO":"mail-pg0-f48.google.com","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net;\n\ts=20161025;\n\th=x-gm-message-state:mime-version:from:date:message-id:subject:to;\n\tbh=8NcKJ7W70xyl912WTUZ7Y9sM7dd0TWSc9Mtvsoz2x5U=;\n\tb=Wy/ZIxHcrR1y2RCsH8e3zv/bPTRTFvC/ZIz9N1nviftdrw8Q1T5kUPD92LZjFbAqdu\n\tdDTmbteC0iU63RA+qOXVkRPhQbgYZxHPilZ6Lz+ZWJWpRMkpNhlY7vZKC5WeR2HTYzZ1\n\t97JpjG8MilySX33AhoQKLZcX3sEjacbfAzWP6z4Z9zhq6rvUhZtfrqVIE0NN0BFmcanv\n\tRPKs6f9Wmz7Q0KOqTd3SkM4tECGmp+nIQTJw/r0tFeEGZxIci9axRhY6H8VHNKpAXm51\n\txCqFhRsdW0TLl/5mJ0xa0TBVhv0AmmBzsZQEVOE0A47scPmUTY47Ahxtu9XyCfYAavv5\n\tsl/w==","X-Gm-Message-State":"AHPjjUgiC5bKWu81xjXo3eze/V+cnhkoJX25ihYmrwTzDpB2gQtPf+Ki\tMOCLdUD4pwAgMTTMgjVc2YAnqew72OLHjKZo+2/+ZFpI","X-Google-Smtp-Source":"ADKCNb5PvyYsiCIfKfKjHbXUH4adrW/5vid9TmxNeVRqEqChuIgmbOWDeeDQ44bE5MZD62vTHITioaXWDIFu0JM2TLk=","X-Received":"by 10.84.229.79 with SMTP id d15mr22400184pln.397.1505361084636;\n\tWed, 13 Sep 2017 20:51:24 -0700 (PDT)","MIME-Version":"1.0","From":"Ian Lance Taylor <iant@golang.org>","Date":"Wed, 13 Sep 2017 20:51:24 -0700","Message-ID":"<CAOyqgcUmA1gMxeE=YSFyBVWVMaehL8U2dWCW=8VD345QNX9gOA@mail.gmail.com>","Subject":"Go patch committed: emit type specific functions for aliases","To":"gcc-patches <gcc-patches@gcc.gnu.org>,\n\t\"gofrontend-dev@googlegroups.com\" <gofrontend-dev@googlegroups.com>","Content-Type":"multipart/mixed; boundary=\"94eb2c19ecb4b5aba105591e30b5\""},"content":"When the Go frontend has an alias for a struct or array that requires\na type-specific function, don't emit the function with the alias name.\nEmit it with the struct/array as usual.\n\nThe test case is for this is https://golang.org/cl/62531.\n\nBootstrapped and ran Go testsuite on x86_64-pc-linux-gnu.  Committed\nto mainline.\n\nIan","diff":"Index: gcc/go/gofrontend/MERGE\n===================================================================\n--- gcc/go/gofrontend/MERGE\t(revision 252746)\n+++ gcc/go/gofrontend/MERGE\t(working copy)\n@@ -1,4 +1,4 @@\n-b0a46c2cdb915ddc4a4e401af9ef6eb2bcd4d4ea\n+89e46ae0cde7bebd8e97434355c5b7e57d902613\n \n The first line of this file holds the git revision number of the last\n merge done from the gofrontend repository.\nIndex: gcc/go/gofrontend/gogo.cc\n===================================================================\n--- gcc/go/gofrontend/gogo.cc\t(revision 251948)\n+++ gcc/go/gofrontend/gogo.cc\t(working copy)\n@@ -2498,6 +2498,8 @@ Specific_type_functions::type(Type* t)\n     case Type::TYPE_NAMED:\n       {\n \tNamed_type* nt = t->named_type();\n+\tif (nt->is_alias())\n+\t  return TRAVERSE_CONTINUE;\n \tif (t->needs_specific_type_functions(this->gogo_))\n \t  t->type_functions(this->gogo_, nt, NULL, NULL, &hash_fn, &equal_fn);\n \n","prefixes":[]}