commit:     6c936b92ef0757dbd6d46123124f4f898babadc8
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 27 06:59:46 2020 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Aug 27 07:00:03 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c936b92

dev-util/source-highlight: fix tests on clang

Reported-by: Agostino Sarubbo
Closes: https://bugs.gentoo.org/739036
Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 .../source-highlight-3.1.9-test-clang-p1.patch     | 30 +++++++++++++++++
 .../source-highlight-3.1.9-test-clang-p2.patch     | 39 ++++++++++++++++++++++
 .../source-highlight/source-highlight-3.1.9.ebuild |  5 +++
 3 files changed, 74 insertions(+)

diff --git 
a/dev-util/source-highlight/files/source-highlight-3.1.9-test-clang-p1.patch 
b/dev-util/source-highlight/files/source-highlight-3.1.9-test-clang-p1.patch
new file mode 100644
index 00000000000..6b0bad369b8
--- /dev/null
+++ b/dev-util/source-highlight/files/source-highlight-3.1.9-test-clang-p1.patch
@@ -0,0 +1,30 @@
+From b3481e66f2014dece48d8dfe8affa416d8d4e104 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <sly...@gentoo.org>
+Date: Thu, 27 Aug 2020 07:51:14 +0100
+Subject: [PATCH 1/2] lib/tests/stdboosterror.h: use unambiguous form of
+ variable declaration
+
+Original expression has an ambiguity and should not compile:
+https://gcc.gnu.org/PR86564
+
+Signed-off-by: Sergei Trofimovich <sly...@gentoo.org>
+---
+ lib/tests/stdboosterror.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/tests/stdboosterror.h b/lib/tests/stdboosterror.h
+index 568545b..d59bfa6 100644
+--- a/lib/tests/stdboosterror.h
++++ b/lib/tests/stdboosterror.h
+@@ -4,7 +4,7 @@
+ #include <boost/regex/pattern_except.hpp>
+ 
+ static boost::regex_error
+-        
std_boost_exception(boost::regex_error(boost::regex_constants::error_bad_pattern));
++        std_boost_exception = 
boost::regex_error(boost::regex_constants::error_bad_pattern);
+ 
+ /**
+  * returns the string representing a standard exception (which
+-- 
+2.28.0
+

diff --git 
a/dev-util/source-highlight/files/source-highlight-3.1.9-test-clang-p2.patch 
b/dev-util/source-highlight/files/source-highlight-3.1.9-test-clang-p2.patch
new file mode 100644
index 00000000000..4c34f9dcca5
--- /dev/null
+++ b/dev-util/source-highlight/files/source-highlight-3.1.9-test-clang-p2.patch
@@ -0,0 +1,39 @@
+From 4d53621557de31479dad3cb44b7fccba8277b76d Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <sly...@gentoo.org>
+Date: Thu, 27 Aug 2020 07:52:25 +0100
+Subject: [PATCH 2/2] lib/tests/test_wordtokenizer_main.cpp: insert overload to
+ std namespace
+
+Signed-off-by: Sergei Trofimovich <sly...@gentoo.org>
+---
+ lib/tests/test_wordtokenizer_main.cpp | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/lib/tests/test_wordtokenizer_main.cpp 
b/lib/tests/test_wordtokenizer_main.cpp
+index 40e23b1..02e8fd8 100644
+--- a/lib/tests/test_wordtokenizer_main.cpp
++++ b/lib/tests/test_wordtokenizer_main.cpp
+@@ -11,9 +11,9 @@
+ using namespace std;
+ using namespace srchilite;
+ 
+-static ostream &operator <<(ostream &os, const 
WordTokenizer::WordTokenizerResults::value_type &);
+-
+-ostream &operator <<(ostream &os, const 
WordTokenizer::WordTokenizerResults::value_type &token) {
++/* Argument-dependent lookup looks only at std:: namespace (ostream and 
value_type expansion) */
++namespace std {
++static ostream &operator <<(ostream &os, const 
WordTokenizer::WordTokenizerResults::value_type &token) {
+     if (token.first.size()) {
+         os << "space: \"" << token.first << "\"" << endl;
+     } else {
+@@ -22,6 +22,7 @@ ostream &operator <<(ostream &os, const 
WordTokenizer::WordTokenizerResults::val
+ 
+     return os;
+ }
++}
+ 
+ int main() {
+     WordTokenizer::WordTokenizerResults tokens;
+-- 
+2.28.0
+

diff --git a/dev-util/source-highlight/source-highlight-3.1.9.ebuild 
b/dev-util/source-highlight/source-highlight-3.1.9.ebuild
index cbf7b16e377..3568b4c32e0 100644
--- a/dev-util/source-highlight/source-highlight-3.1.9.ebuild
+++ b/dev-util/source-highlight/source-highlight-3.1.9.ebuild
@@ -18,6 +18,11 @@ RDEPEND=">=dev-libs/boost-1.62.0:=[threads]
 DEPEND="${RDEPEND}"
 BDEPEND=""
 
+PATCHES=(
+       "${FILESDIR}"/${PN}-3.1.9-test-clang-p1.patch
+       "${FILESDIR}"/${PN}-3.1.9-test-clang-p2.patch
+)
+
 src_configure() {
        # required as rev-dep of dev-libs/boost-1.62.0
        # https://wiki.gentoo.org/wiki/Project:C%2B%2B/Maintaining_ABI

Reply via email to