From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by sourceware.org (Postfix) with ESMTP id 5FD333851C27 for ; Thu, 4 Jun 2020 11:16:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 5FD333851C27 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-407-0l2vBb4eOI66c-Ilpw8mJg-1; Thu, 04 Jun 2020 07:16:14 -0400 X-MC-Unique: 0l2vBb4eOI66c-Ilpw8mJg-1 Received: by mail-wr1-f72.google.com with SMTP id p9so2299144wrx.10 for ; Thu, 04 Jun 2020 04:16:14 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=8+Dv6DZv9JKPoXP0vTy2iTU1FWQDBUZ6A7Z6P0/qP6k=; b=B6uD5MZzv2U1DAuhQG54pdjUVo+pEpC53kW7qGvGlU6vQaSYelcE8wWmIT53dpqKjC Z4EF8/3gGviD1j8Md1RvvHVF6OzucZLr3t2SXBGQLkCO8GIhwX6YwmSxB1UsJXOPiNkp 4+B2x6Hsy37J8rNi9Eophe6q2zyIysFKURLRIJsqgN1lnIEsrAB2Fus2CCzEw6IeR6Ec KCYqHW/qFVjIUNIAY6Gq99mft3eCI8hiPB7Edc/9lrzmR6Qgrv3qUqmdLiFqBskNaQ8P /aQE2JswhIOfdptj9oV4js1hpnqaSJeFZ+G9+idiFye3XlCJZr07hWGDQYneACg5Sb9U DNAA== X-Gm-Message-State: AOAM530t/d1O5xUw3cRFo1/FtT7/RM7N9meFhclCyDiHdIe/IlqkZHMs KgNX2V/NsZHiEZjd9SicyMpEtdOFsJso3gt6N9dJboj7FnOEZoTYEuokdusoPXiFS0YONU7Y8+l SBcbAD+XRE0sJSeJs/+0JHg== X-Received: by 2002:adf:82f8:: with SMTP id 111mr3850588wrc.257.1591269373095; Thu, 04 Jun 2020 04:16:13 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwdS4SoT1PUSE5GYkYoLvDH+JAxBgB5yU6pkCoq+PY3Kmsm6y/ws+l9k9uNJDBDF8USAJ/l5A== X-Received: by 2002:adf:82f8:: with SMTP id 111mr3850565wrc.257.1591269372663; Thu, 04 Jun 2020 04:16:12 -0700 (PDT) Received: from ?IPv6:2001:8a0:f922:c400:56ee:75ff:fe8d:232b? ([2001:8a0:f922:c400:56ee:75ff:fe8d:232b]) by smtp.gmail.com with ESMTPSA id a1sm6898762wmj.29.2020.06.04.04.16.11 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 04 Jun 2020 04:16:11 -0700 (PDT) Subject: Re: [PATCH 3/3][gdb/testsuite] Warn about leaked global array To: Tom de Vries , Andrew Burgess References: <20200519163004.GA9045@delia> <20200602153830.GZ3522@embecosm.com> <20200602155211.GA3522@embecosm.com> <6382e582-c2f3-a999-f604-979958d6a064@suse.de> <20200602170139.GB3522@embecosm.com> <20200602201829.GC3522@embecosm.com> <191ae1d7-3363-08a9-b9fe-f006f9186708@suse.de> <20200603125412.GD3522@embecosm.com> <002b67f7-6966-5c91-a995-59556fb8afba@suse.de> Cc: gdb-patches@sourceware.org From: Pedro Alves Message-ID: Date: Thu, 4 Jun 2020 12:16:11 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1 MIME-Version: 1.0 In-Reply-To: <002b67f7-6966-5c91-a995-59556fb8afba@suse.de> Content-Language: en-US X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-8.7 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Jun 2020 11:16:17 -0000 On 6/3/20 4:35 PM, Tom de Vries wrote: > @@ -47,6 +47,10 @@ proc pascal_init {} { > set pascal_compiler_is_fpc 0 > set gpc_compiler [transform gpc] > set fpc_compiler [transform fpc] > + gdb_persistent_global pascal_compiler_is_gpc > + gdb_persistent_global pascal_compiler_is_fpc > + gdb_persistent_global gpc_compiler > + gdb_persistent_global fpc_compiler > @@ -47,6 +47,10 @@ proc pascal_init {} { > set pascal_compiler_is_fpc 0 > set gpc_compiler [transform gpc] > set fpc_compiler [transform fpc] > + gdb_persistent_global pascal_compiler_is_gpc > + gdb_persistent_global pascal_compiler_is_fpc > + gdb_persistent_global gpc_compiler > + gdb_persistent_global fpc_compiler Can we make gdb_persistent_global proc also do the "global $var" in the caller's scope, so that it could be used to replace the "global" statement? With that, you would only have to declare the variable once, and this hunk here would instead be: diff --git c/gdb/testsuite/lib/pascal.exp w/gdb/testsuite/lib/pascal.exp index aad69a2de0..ff11864294 100644 --- c/gdb/testsuite/lib/pascal.exp +++ w/gdb/testsuite/lib/pascal.exp @@ -33,10 +33,10 @@ set pascal_init_done 0 proc pascal_init {} { global pascal_init_done - global pascal_compiler_is_gpc - global pascal_compiler_is_fpc - global gpc_compiler - global fpc_compiler + gdb_persistent_global pascal_compiler_is_gpc + gdb_persistent_global pascal_compiler_is_fpc + gdb_persistent_global gpc_compiler + gdb_persistent_global fpc_compiler global env Thanks, Pedro Alves