From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 70260 invoked by alias); 5 Sep 2018 14:58:09 -0000 Mailing-List: contact fortran-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: fortran-owner@gcc.gnu.org Received: (qmail 69073 invoked by uid 89); 5 Sep 2018 14:57:58 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-26.8 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy=ns, HContent-Transfer-Encoding:8bit X-HELO: mail-wr1-f42.google.com Received: from mail-wr1-f42.google.com (HELO mail-wr1-f42.google.com) (209.85.221.42) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 05 Sep 2018 14:57:57 +0000 Received: by mail-wr1-f42.google.com with SMTP id v16-v6so7975290wro.11; Wed, 05 Sep 2018 07:57:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=UA6TKyPdpvGAd8q6+7guKUT9PMMFzhPiYspOw5g6uC0=; b=jOTwlOhhYAL6pdHOlcgmozyWtYz/zeYC1aKbeMeFkjIrktovRMF5XUcAvNuMAwL9ZV bevGk5xKtxN5sAaQ5Z0/s3B65PTdncfsyqZQp1/nX8HYBUPDiGD3VD4UxmCEu6SOdSvA ePUutWWGttUhzCAe3w8kh6ETR72ut4cYf+wjh9pTHTGjTZ1A1o6kQ9uHM2zy8o1hSvy+ Z6c0+XbPKU9EqTG2wd257m5A8h2ja0UwqkkNRpze4Co6iUDwrKpJICRuCDUKGyhC4D0C Wy3ftqC7qgl/Zd/ig2AR6+dehtw2kE9bPettP3XBz2FuqQMIUqBuQ2lOiCCbDs6zEeXn xs3A== Return-Path: Received: from s46.loc (91-119-125-11.dsl.dynamic.surfer.at. [91.119.125.11]) by smtp.gmail.com with ESMTPSA id k5-v6sm5162657wrm.96.2018.09.05.07.57.48 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 05 Sep 2018 07:57:51 -0700 (PDT) Received: from cow by s46.loc with local (Exim 4.91) (envelope-from ) id 1fxZFb-00008R-B8; Wed, 05 Sep 2018 14:57:47 +0000 From: Bernhard Reutner-Fischer To: fortran@gcc.gnu.org Cc: Bernhard Reutner-Fischer , gcc-patches@gcc.gnu.org Subject: [PATCH,FORTRAN 25/29] Use stringpool on loading module symbols Date: Wed, 05 Sep 2018 14:58:00 -0000 Message-Id: <20180905145732.404-26-rep.dot.nop@gmail.com> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes X-SW-Source: 2018-09/txt/msg00039.txt.bz2 From: Bernhard Reutner-Fischer gcc/fortran/ChangeLog: 2017-11-29 Bernhard Reutner-Fischer * module.c (load_needed): Use stringpool when generating symbols and module names. --- gcc/fortran/module.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c index 8f6dc9f2864..ebfcd62801d 100644 --- a/gcc/fortran/module.c +++ b/gcc/fortran/module.c @@ -4857,6 +4857,7 @@ load_needed (pointer_info *p) pointer_info *q; gfc_symbol *sym; int rv; + const char *true_name, *module; rv = 0; if (p == NULL) @@ -4888,15 +4889,21 @@ load_needed (pointer_info *p) associate_integer_pointer (q, ns); } + true_name = p->u.rsym.true_name; + if (true_name[0] != '\0') + true_name = gfc_get_string ("%s", true_name); + module = p->u.rsym.module; + if (module[0] != '\0') + module = gfc_get_string ("%s", module); + /* Use the module sym as 'proc_name' so that gfc_get_symbol_decl doesn't go pear-shaped if the symbol is used. */ if (!ns->proc_name) - gfc_find_symbol (p->u.rsym.module, gfc_current_ns, - 1, &ns->proc_name); + gfc_find_symbol (module, gfc_current_ns, 1, &ns->proc_name); - sym = gfc_new_symbol (p->u.rsym.true_name, ns); - sym->name = gfc_dt_lower_string (p->u.rsym.true_name); - sym->module = gfc_get_string ("%s", p->u.rsym.module); + sym = gfc_new_symbol (true_name, ns); + sym->name = gfc_dt_lower_string (true_name); + sym->module = module; if (p->u.rsym.binding_label) sym->binding_label = p->u.rsym.binding_label; -- 2.19.0.rc1