From patchwork Fri May 29 20:17:22 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Matthias_M=C3=A4nnich?= X-Patchwork-Id: 39383 X-Patchwork-Delegate: dodji@seketeli.org 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 44073386F439; Fri, 29 May 2020 20:17:53 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 44073386F439 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1590783473; bh=WJPi/9TfT55WtaSso4OGbYiqqkKf19EYcT3vnJccWzo=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Help: List-Subscribe:From:Reply-To:Cc:From; b=xm+MAwNpNe3CgMGmnWzaUbEV1wJn+8RMw5sBY7wfJKr9AfYRPuWnEaqLPpbdYN36H XJ8KTkWO7DPKvjd1WVtu4h3KE5DagSVV7UP/+PNWnhYCXF1zkosUWFvwbKgR79UuKz 5sBwXDrQXXB1WRAd2DfZPEzh4zAWJ9Tmf9bD56VQ= X-Original-To: libabigail@sourceware.org Delivered-To: libabigail@sourceware.org Received: from mail-qv1-xf4a.google.com (mail-qv1-xf4a.google.com [IPv6:2607:f8b0:4864:20::f4a]) by sourceware.org (Postfix) with ESMTPS id 5438E386F439 for ; Fri, 29 May 2020 20:17:50 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 5438E386F439 Received: by mail-qv1-xf4a.google.com with SMTP id w6so3309705qvj.4 for ; Fri, 29 May 2020 13:17:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=WJPi/9TfT55WtaSso4OGbYiqqkKf19EYcT3vnJccWzo=; b=PBnyoKRYr6bfFsVEwel7kMUSbgKXYnQuI/AMfUKV4oVcFUm7fJ+UthUToovhsIY+wq MtXV1OlkUayn/eIccpUs0zWHOjc7Us1E2aeAJGszOb21rcTi5qiG71t8dx0ajciT66Mm xjCgAPx5X4JZsOg0yfTxK1H6HHj8dC8/VOr3PsU5Mdb5qt5E+9J3F/5Qmg4ZTWLq6Hbm aZuHMOcgPhTyicnLGqeSN4yrCEIihk2e6gDsUQ0ZNna7oUmJx6QwfpRXK8MCTyumwWOl zjCpMY4gg81pQeqYeXa66fiFMm2drjUfRmSFtHKFBHqhK7rnnizryqOLVdxvaGTNIkSl TEhA== X-Gm-Message-State: AOAM530fbN8f/OYqwCB5pqwTbIG21Iku25zoFmuLtNDeXNWSJoZLfU8b d1v7Ay+9aT0G5MjAt4QBauUxJz86n0WsUGNlLTfRJxjP1F4Qyx1gscmSEic9n1d2BQulWrsMcs3 eiPTlBZlIoChhHz46UtZe7zBppIfZLD0t2YSAgUw7C6OzgACA5VqT8SclBEA36QhLHa05/TQ= X-Google-Smtp-Source: ABdhPJzS4/USKpH5F4NalrB/YXC9K+/llZmR4uHfpZVjvfHfBUWQEWRjC4zDbYdm7fH0dZCy9JGLPN/ql67zHQ== X-Received: by 2002:a0c:a899:: with SMTP id x25mr9711657qva.114.1590783469800; Fri, 29 May 2020 13:17:49 -0700 (PDT) Date: Fri, 29 May 2020 22:17:22 +0200 Message-Id: <20200529201721.225069-1-maennich@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.27.0.rc0.183.gde8f92d652-goog Subject: [PATCH] abg-reporter: fully qualify std::string and std::ostream To: libabigail@sourceware.org X-Spam-Status: No, score=-24.0 required=5.0 tests=BAYES_00, DKIMWL_WL_MED, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, USER_IN_DEF_DKIM_WL 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: 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: Matthias Maennich via Libabigail From: =?utf-8?q?Matthias_M=C3=A4nnich?= Reply-To: Matthias Maennich Cc: maennich@google.com, gprocida@google.com, kernel-team@android.com, Mark Barolak Errors-To: libabigail-bounces@sourceware.org Sender: "Libabigail" In order to not unnecessarily pollute the abigail namespace and to avoid ambiguity at compile time, fully qualify std::string and std::string. This also resolves the issue that include/abg-reporter.h could not be compiled standalone and therefore was broken as a public header. It required a `using std::string` from a prior include. * include/abg-reporter.h (reporter_base::report) fully qualify std::string and std::ostream for all overloads. (default_reporter::report_local_typedef_changes): Likewise. (default_reporter::report_local_qualified_type_changes): Likewise. (default_reporter::report_local_reference_type_changes): Likewise. (default_reporter::report_local_function_type_changes): Likewise. (default_reporter::report): Likewise. (leaf_reporter::report_changes_from_diff_maps): Likewise. (leaf_reporter::report): Likewise. Suggested-by: Mark Barolak Signed-off-by: Matthias Maennich Acked-by: Dodji Seketeli --- include/abg-reporter.h | 223 ++++++++++++++++++++++------------------- 1 file changed, 118 insertions(+), 105 deletions(-) diff --git a/include/abg-reporter.h b/include/abg-reporter.h index 6254be6a49f5..e0d9e66a69a8 100644 --- a/include/abg-reporter.h +++ b/include/abg-reporter.h @@ -35,7 +35,6 @@ namespace abigail { -using std::ostream; using abg_compat::shared_ptr; namespace comparison @@ -75,79 +74,80 @@ public: virtual bool diff_to_be_reported(const diff *d) const; virtual void - report(const type_decl_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const type_decl_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const enum_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const enum_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const typedef_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const typedef_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const qualified_type_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const qualified_type_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const distinct_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const distinct_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const pointer_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const pointer_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const reference_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const reference_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const array_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const array_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const base_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const base_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const class_or_union_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const class_or_union_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const class_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const class_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const union_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const union_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const scope_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const scope_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const fn_parm_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const fn_parm_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const function_type_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const function_type_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const function_decl_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const function_decl_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const var_diff& d, ostream& out, const string& indent = "") const = 0; + report(const var_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const translation_unit_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const translation_unit_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual void - report(const corpus_diff& d, ostream& out, - const string& indent = "") const = 0; + report(const corpus_diff& d, std::ostream& out, + const std::string& indent = "") const = 0; virtual ~reporter_base() {} }; //end class reporter_base @@ -163,92 +163,100 @@ class default_reporter : public reporter_base public: virtual void - report(const type_decl_diff& d, ostream& out, - const string& indent = "") const; + report(const type_decl_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const enum_diff& d, ostream& out, - const string& indent = "") const; + report(const enum_diff& d, std::ostream& out, + const std::string& indent = "") const; void report_local_typedef_changes(const typedef_diff &d, - ostream& out, - const string& indent) const; + std::ostream& out, + const std::string& indent) const; virtual void - report(const typedef_diff& d, ostream& out, - const string& indent = "") const; + report(const typedef_diff& d, std::ostream& out, + const std::string& indent = "") const; bool report_local_qualified_type_changes(const qualified_type_diff& d, - ostream& out, - const string& indent) const; + std::ostream& out, + const std::string& indent) const; virtual void - report(const qualified_type_diff& d, ostream& out, - const string& indent = "") const; + report(const qualified_type_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const pointer_diff& d, ostream& out, const string& indent = "") const; + report(const pointer_diff& d, std::ostream& out, + const std::string& indent = "") const; void report_local_reference_type_changes(const reference_diff& d, - ostream& out, - const string& indent) const; + std::ostream& out, + const std::string& indent) const; virtual void - report(const reference_diff& d, ostream& out, - const string& indent = "") const; + report(const reference_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const fn_parm_diff& d, ostream& out, - const string& indent = "") const; + report(const fn_parm_diff& d, std::ostream& out, + const std::string& indent = "") const; void report_local_function_type_changes(const function_type_diff& d, - ostream& out, - const string& indent) const; + std::ostream& out, + const std::string& indent) const; virtual void - report(const function_type_diff& d, ostream& out, - const string& indent = "") const; + report(const function_type_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const array_diff& d, ostream& out, const string& indent = "") const; + report(const array_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const base_diff& d, ostream& out, const string& indent = "") const; + report(const base_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const scope_diff& d, ostream& out, const string& indent = "") const; + report(const scope_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const class_or_union_diff& d, ostream& out, - const string& indent = "") const; + report(const class_or_union_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const class_diff& d, ostream& out, const string& indent = "") const; + report(const class_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const union_diff& d, ostream& out, const string& indent = "") const; + report(const union_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const distinct_diff& d, ostream& out, const string& indent = "") const; + report(const distinct_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const function_decl_diff& d, ostream& out, - const string& indent = "") const; + report(const function_decl_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const var_diff& d, ostream& out, const string& indent = "") const; + report(const var_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const translation_unit_diff& d, ostream& out, - const string& indent = "") const; + report(const translation_unit_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const corpus_diff& d, ostream& out, - const string& indent = "") const; + report(const corpus_diff& d, std::ostream& out, + const std::string& indent = "") const; }; // end class default_reporter /// A reporter that only reports leaf changes @@ -259,67 +267,72 @@ public: virtual bool diff_to_be_reported(const diff *d) const; void - report_changes_from_diff_maps(const diff_maps&, - ostream& out, - const string& indent) const; + report_changes_from_diff_maps(const diff_maps&, std::ostream& out, + const std::string& indent) const; virtual void - report(const typedef_diff& d, ostream& out, - const string& indent = "") const; + report(const typedef_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const qualified_type_diff& d, ostream& out, - const string& indent = "") const; + report(const qualified_type_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const pointer_diff& d, ostream& out, - const string& indent = "") const; + report(const pointer_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const reference_diff& d, ostream& out, - const string& indent = "") const; + report(const reference_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const fn_parm_diff& d, ostream& out, - const string& indent = "") const; + report(const fn_parm_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const function_type_diff& d, ostream& out, - const string& indent = "") const; + report(const function_type_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const array_diff& d, ostream& out, const string& indent = "") const; + report(const array_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const scope_diff& d, ostream& out, const string& indent = "") const; + report(const scope_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const class_or_union_diff& d, ostream& out, - const string& indent = "") const; + report(const class_or_union_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const class_diff& d, ostream& out, const string& indent = "") const; + report(const class_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const union_diff& d, ostream& out, const string& indent = "") const; + report(const union_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const distinct_diff& d, ostream& out, const string& indent = "") const; + report(const distinct_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const function_decl_diff& d, ostream& out, - const string& indent = "") const; + report(const function_decl_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const var_diff& d, ostream& out, const string& indent = "") const; + report(const var_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const translation_unit_diff& d, ostream& out, - const string& indent = "") const; + report(const translation_unit_diff& d, std::ostream& out, + const std::string& indent = "") const; virtual void - report(const corpus_diff& d, ostream& out, - const string& indent = "") const; + report(const corpus_diff& d, std::ostream& out, + const std::string& indent = "") const; }; // end class leaf_reporter } // end namespace comparison