From patchwork Thu Nov 18 03:01:15 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Guillermo E. Martinez" X-Patchwork-Id: 47866 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id EC7033858402 for ; Thu, 18 Nov 2021 03:01:50 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EC7033858402 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1637204511; bh=oEsOMi5RVHyvhy42/eFhj+VClfJbco0y1PebV8fViI8=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Help:List-Subscribe:From:Reply-To:From; b=PaRxxh8GT6F+TyrmJ7UveQLyZ1juPEPQQSHMXJ4stagC/cCJrnWA/Ar4+VRGdWTQ1 omySWy0Qbax6kenE/CksOo6FKpH2bL9iv7eUNeX82hZTWCZjZIbkiDh0OrDazqzLUg ysDep5sXisUYE8AzNzyYUKDQVAbGbG7Ohm7Hqxjs= X-Original-To: libabigail@sourceware.org Delivered-To: libabigail@sourceware.org Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id 2F1E63858406 for ; Thu, 18 Nov 2021 03:01:41 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 2F1E63858406 Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 1AI1YAlf020985 for ; Thu, 18 Nov 2021 03:01:40 GMT Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by mx0b-00069f02.pphosted.com with ESMTP id 3cd4qykc2a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 18 Nov 2021 03:01:40 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 1AI30iuf028236 for ; Thu, 18 Nov 2021 03:01:39 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2172.outbound.protection.outlook.com [104.47.57.172]) by aserp3020.oracle.com with ESMTP id 3ca567whb8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 18 Nov 2021 03:01:39 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=msLq323EktMNHKKE5GkVpxlf92274WWSDKM6LJung7YykoMmMJ2t1zP3fKzCsA8xQxmv9+6KN1xMLeRchR9RzC6HgRNfFoUIyaaviBL2S2BnSJQHkU9yf+jIMzjly+c8/ujene7DiwnVpA+mlsWrTq6Lf9KFcVRMVMpjsVeV8BE2T98yu0dQAK1piuI7YKUZtErcLWuKtNbM/XaSZWU6pG54JSHvJRVx2yKr5KtwDKao8p/O++a10xj2T2DzLmVjLAR8fS9/dFLjZp/CEg916Z7hp0jo07xoK8XJbBCw5QE8dur5Gvi8KmjJsCOaxF0MGgq6PwRqf57WXWUkkqwTRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=oEsOMi5RVHyvhy42/eFhj+VClfJbco0y1PebV8fViI8=; b=fp5HELaTaoD2lOtAq0vGlEpmEn9r7qVhZEejQLV+HVaK2CNabTBSoUlAX5kHHR/wbOWZlK+p9pGu7Y96KaBujbJy1OJxPKUjLYkXVf5zyF9JvJd11WwOmDO0sat52dhkAfpNZ1by8wvxl6jqZVY2qU6zUCF4XgjVkw76Cpjb44c6sNSRDyMLfXKpphE23iKQk2aJFgxjfq/PU0j9+Dh5e5fAQskR/A0CiC8L1OZCuG9zSKlo5xPjytL3M/AlAFUEz+xMKm6P/inFRGdrL1QWtjNKqJa+p3YqJGWCTsuRY2dYUc20dUTeauzghSiUr7Kr3WyknMHCenRxDG1ZNbJwSA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none Received: from BL0PR10MB2852.namprd10.prod.outlook.com (2603:10b6:208:76::22) by MN2PR10MB3982.namprd10.prod.outlook.com (2603:10b6:208:1bc::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.26; Thu, 18 Nov 2021 03:01:38 +0000 Received: from BL0PR10MB2852.namprd10.prod.outlook.com ([fe80::7126:e98e:9cff:8765]) by BL0PR10MB2852.namprd10.prod.outlook.com ([fe80::7126:e98e:9cff:8765%7]) with mapi id 15.20.4713.021; Thu, 18 Nov 2021 03:01:38 +0000 To: libabigail@sourceware.org Subject: [PATCH 2/3] ctf-reader: Use smart pointers in create_read_context Date: Wed, 17 Nov 2021 21:01:15 -0600 Message-Id: <20211118030116.564632-3-guillermo.e.martinez@oracle.com> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20211118030116.564632-1-guillermo.e.martinez@oracle.com> References: <20211118030116.564632-1-guillermo.e.martinez@oracle.com> X-ClientProxiedBy: BYAPR05CA0099.namprd05.prod.outlook.com (2603:10b6:a03:e0::40) To BL0PR10MB2852.namprd10.prod.outlook.com (2603:10b6:208:76::22) MIME-Version: 1.0 Received: from sali.us.oracle.com (2606:b400:8004:44::13) by BYAPR05CA0099.namprd05.prod.outlook.com (2603:10b6:a03:e0::40) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.17 via Frontend Transport; Thu, 18 Nov 2021 03:01:37 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1a24b067-467b-44de-43d0-08d9aa3fbd18 X-MS-TrafficTypeDiagnostic: MN2PR10MB3982: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:639; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VuOTeqFMiLXovT0SiGOfmmqnRBXobiPQY7Ywj/fp0+SckOhpE1uSHcuBpEsjoS0M3mXoYo0M9kB+zxXs2uyMEZ+BVjGAZer2SiDyG6Ak+Nzk4US9PsfglZ4V18MUUyDnFzO3wGOuLvYq4zGPsvrBlf9+KBVfX5aQJCwp68jJI8BYFv2ge+x3IyUyt9mwSDemCMwGLxU8HsrDQogIYO7YTt3ChgS79jq++ptKzDr5Ezy/cjaK3VjTSTKSrpCt2wOQpgCbiJ9efupoKY3f9VXyqgw//Ljl9c4JMLfo9X8h5yKUbbhts7pXF2F6UTYNLEm6MJN108qOAwqxaDAIrSZQ0qLbeiu3lYDEVTd4tu+bnoFClj1K0fe1SF4cU2Q8esy+dA9SHNIWs9t+I5u7j5HRbhvCJios6jAwCN618sgvZPZIZZ/szGXR3WgoaHnDV/r6Z1v6uyXWVip1SXW+IdVSemeeIUNElIAOs5D9523U42aqQkHMIsLy374pYHHFQXdwV1UZR+q0kZqHCFMQGKPgBfxfwA1VVNInnmsicQyXW2FV/iaMK8Z8vUCrFO8rOkfmGoSv8UIoUkm2GgrDRP0mtOt7HYgTTdSmAT5p1SA/TESTQT0qtjyehtCoL0MxA1HcAC7uDFfIeKtccSeqtATuYQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BL0PR10MB2852.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(5660300002)(6666004)(508600001)(7696005)(186003)(6916009)(66556008)(52116002)(316002)(2616005)(8676002)(2906002)(66946007)(66476007)(103116003)(6486002)(38100700002)(107886003)(86362001)(8936002)(4326008)(83380400001)(36756003)(1076003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 603VMnXma3e/Rd9/MMp5ea/jvYnUYVsJJNpSFV4fCCbod6ix2WQ0JJUym0TsoBJny05LZHIMGh/qiR+cubME2O9fKqSnROPe1TW916w8FY5ehjKy9ArC/u0LLOxOo2h9tSy9B62UpNp+uecIrBahuBRWHZIfm3T4GmgtVHMlqONcViNKGmh+jrljKqD783DQpQZJA7CDOenY+bIllevTGR4Oe8oxhM1OPEemkFae59ogfPnCMSmPJxiw5AoyGBYGxo3SEKQ7KcYTPM2s099IBtnTxCGvMdboEXTEZ0/mVcgNSwieNcgmO4iTA2ndc89vr4BM3dSNxaH3QpL+xHWMOnULiZORLGEIsCB/ONeDHWjgxNiJdpqMGmenKv6MKBXU8RZQkojPp/b0ULTHsv5fV8pN6WGAFEu81sO6pENQQImQN+5Rject5wGKRbL2yE57EaWQ1ivKO8a9y28VfVvXlgVcUWbeFKhlFmcPM5U1xRVSDsAtSrIsQdiwNjis43GfEvpU1U03cvIU19FCqlUkseU9NAWXnLS2aLjxbiVvR1pVI6JMOz8k0pibv4qSPPtvhlQIU1tEQhGQ8H66eBpYvbPfyZX2/rTww6C38hK1EKx5a3fa/QxgYRhGbaIh6O+4hMcMKmMgcLBMwFUIbyAmAg9oxJcIrf4lgBrH8vLFHDPSbPJ8xoVC/H/9PygOKNP8QajQ7QIoBhOGq/AJIO0Z/BkuiEGGqoEqj3aUIQXCawk/LIvsAZdsMQSaZ6apAR1IKuMFOqSCTN7QAa7obapiFxXNgctm+gbw6YlKCeR08Juxbr7SIX/ikI0G2G0N5DPQjKUwqwShsMfCGr+5fDoMu0AaWov4k9L5fzzCPAfYa2gSYAXUNi14TBXE3QPMjecbbm0m+qjbRJmErlP/N2qUJ68uF+NduBMwd1Efa/EYGrIaIgXVObh6VapS8nYgBt0BN571eYrtBnd7WJ++DeGbKxOTRa1nq+rBXHCR7XvaqNE3O36Yh2iGuLCBJMiLflGKYEJdLZwsSOySYvCN6ksMUTvTA7is7F2DHZo8hhFykUzdA3TyAqDBsYNVkuaJzfNzdEVROCuULTsIV5toIWJDQuvvZ+tgCjAa5AJfN29wDErdd61lnKn9oWEd8KrHVHMkaf2WyIUL+BI0zG6MAMujqBYZMwQYKco0N58ru1+6YGz7PZn9qNYXdiu8TuVxfhmHLePnX8ljA5UPlQtzk6AOcToeN9jwxVBhfjoj632Aj5mv9qzoVigIKhLGSoDP6E8xzGXW0YIiEVaa0n/6dYbnETkzRFkrRH07I5ys8EDZ4HCj/mStzgsolYgO713hXqVd9i/4HKnnJislKPr1ZgdSxzMVy9vQwnz89ROQT4Nx1QoVcsr29H8SLJsDe6ZBffMffemcCh6X+maIDPEIAxQJ+mQSn3Q8rmX1mEw78HJe/AXIdUNUqUU0hSuzTv+9H4UUaKb9NM6tnTYvw1JsA/Xcbol5STVutjTzd8ES+kpMDXAXmTFUgnWbwK/dNi3LTGTIVlt7FkJZSM1p1ojQ5Nj4mTMNXPgxRg8ZB2a91VTMI7Mt/bWKsVKz435ViN8JKA0Pm0LlH6O+gAMRLt42PvozejaU4x6XXBK/acpFflDWDS8cKW1ScNapmCbd1Gg9UYNZ51iHpqnP8jDvPnSm2cm9hXRdRN8g3WWftVip33IPhRk= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1a24b067-467b-44de-43d0-08d9aa3fbd18 X-MS-Exchange-CrossTenant-AuthSource: BL0PR10MB2852.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Nov 2021 03:01:38.3580 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: s4SU1KrEHiBd6ZW9mO3ILv244Rtyx8XGKKrGIAbVUiaXlMdAk8A/Zp4ehxMmQX6PUB+eVBieCSNqBYN+oQqo8g0C2n0TzibxYSybjeNaJTk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR10MB3982 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10171 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 adultscore=0 mlxscore=0 spamscore=0 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2111180016 X-Proofpoint-ORIG-GUID: E2CCw6VFVVlH5ed50k-rSLJGAfXiFROL X-Proofpoint-GUID: E2CCw6VFVVlH5ed50k-rSLJGAfXiFROL X-Spam-Status: No, score=-12.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, MSGID_FROM_MTA_HEADER, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libabigail@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Mailing list of the Libabigail project List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-Patchwork-Original-From: "Guillermo E. Martinez via Libabigail" From: "Guillermo E. Martinez" Reply-To: "Guillermo E. Martinez" Errors-To: libabigail-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libabigail" * include/abg-ctf-reader.h (read_context_sptr): New typedef. (create_read_context): Use smart pointer as return value. * src/abg-ctf-reader.cc: Likewise. * tools/abidiff.cc (main): Use read_context_sptr. * tools/abilint.cc: Likewise. --- include/abg-ctf-reader.h | 7 +++++-- src/abg-ctf-reader.cc | 5 +++-- tools/abidiff.cc | 18 ++++++++++-------- tools/abilint.cc | 8 ++++---- 4 files changed, 22 insertions(+), 16 deletions(-) diff --git a/include/abg-ctf-reader.h b/include/abg-ctf-reader.h index 56b2bf91..c527c2ff 100644 --- a/include/abg-ctf-reader.h +++ b/include/abg-ctf-reader.h @@ -25,8 +25,11 @@ namespace ctf_reader { class read_context; -read_context *create_read_context(const std::string& elf_path, - ir::environment *env); +typedef shared_ptr read_context_sptr; + +read_context_sptr +create_read_context(const std::string& elf_path, + ir::environment *env); corpus_sptr read_corpus(read_context *ctxt, elf_reader::status& status); diff --git a/src/abg-ctf-reader.cc b/src/abg-ctf-reader.cc index 2c2c204d..3e17e049 100644 --- a/src/abg-ctf-reader.cc +++ b/src/abg-ctf-reader.cc @@ -1059,11 +1059,12 @@ slurp_elf_info(read_context *ctxt, corpus_sptr corp) /// @param elf_path the patch of some ELF file. /// @param env a libabigail IR environment. -read_context * +read_context_sptr create_read_context(const std::string& elf_path, ir::environment *env) { - return new read_context(elf_path, env); + read_context_sptr result(new read_context(elf_path, env)); + return result; } /// Read the CTF information from some source described by a given diff --git a/tools/abidiff.cc b/tools/abidiff.cc index f145f4f1..30959616 100644 --- a/tools/abidiff.cc +++ b/tools/abidiff.cc @@ -1169,12 +1169,13 @@ main(int argc, char* argv[]) #ifdef WITH_CTF if (opts.use_ctf) { - abigail::ctf_reader::read_context *ctxt - = abigail::ctf_reader::create_read_context (opts.file1, - env.get()); + abigail::ctf_reader::read_context_sptr ctxt + = abigail::ctf_reader::create_read_context(opts.file1, + env.get()); assert (ctxt); - c1 = abigail::ctf_reader::read_corpus (ctxt, c1_status); + c1 = abigail::ctf_reader::read_corpus(ctxt.get(), + c1_status); } else #endif @@ -1252,12 +1253,13 @@ main(int argc, char* argv[]) #ifdef WITH_CTF if (opts.use_ctf) { - abigail::ctf_reader::read_context *ctxt - = abigail::ctf_reader::create_read_context (opts.file2, - env.get()); + abigail::ctf_reader::read_context_sptr ctxt + = abigail::ctf_reader::create_read_context(opts.file2, + env.get()); assert (ctxt); - c2 = abigail::ctf_reader::read_corpus (ctxt, c2_status); + c2 = abigail::ctf_reader::read_corpus (ctxt.get(), + c2_status); } else #endif diff --git a/tools/abilint.cc b/tools/abilint.cc index 49643b66..2e9bae49 100644 --- a/tools/abilint.cc +++ b/tools/abilint.cc @@ -370,12 +370,12 @@ main(int argc, char* argv[]) #ifdef WITH_CTF if (opts.use_ctf) { - abigail::ctf_reader::read_context *ctxt - = abigail::ctf_reader::create_read_context (opts.file_path, - env.get()); + abigail::ctf_reader::read_context_sptr ctxt + = abigail::ctf_reader::create_read_context(opts.file_path, + env.get()); assert (ctxt); - corp = abigail::ctf_reader::read_corpus (ctxt, s); + corp = abigail::ctf_reader::read_corpus (ctxt.get(), s); } else #endif