summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@chromium.org>2018-01-31 10:55:37 -0500
committerMike Frysinger <vapier@gentoo.org>2018-01-31 10:55:53 -0500
commit688d9675782dfc162d4e6cff04c668f7516118d0 (patch)
treeb1207c3ec08feedc0b8f48ad00fcaffb39177b22 /app-text/opensp
parentapp-arch/pbzip2: fix builds w/newer clang (diff)
downloadgentoo-688d9675782dfc162d4e6cff04c668f7516118d0.tar.gz
gentoo-688d9675782dfc162d4e6cff04c668f7516118d0.tar.bz2
gentoo-688d9675782dfc162d4e6cff04c668f7516118d0.zip
app-test/opensp: fix builds w/newer clang
Bug: https://crbug.com/806958
Diffstat (limited to 'app-text/opensp')
-rw-r--r--app-text/opensp/files/opensp-1.5.2-c11-using.patch77
-rw-r--r--app-text/opensp/opensp-1.5.2-r6.ebuild1
2 files changed, 78 insertions, 0 deletions
diff --git a/app-text/opensp/files/opensp-1.5.2-c11-using.patch b/app-text/opensp/files/opensp-1.5.2-c11-using.patch
new file mode 100644
index 000000000000..a12bf9a9b55d
--- /dev/null
+++ b/app-text/opensp/files/opensp-1.5.2-c11-using.patch
@@ -0,0 +1,77 @@
+Fix build issues due to access declarations: https://crbug.com/806958
+ ISO C++11 does not allow access declarations; use using declarations instead.
+
+The link to "Bug Tracker" on http://openjade.sourceforge.net/bugs.html
+is not working. Sent a mail containing bug report to the Openjade-devel@
+address on that page.
+
+Patch by Rahul Chaudhry <rahulchaudhry@chromium.org>
+
+--- a/include/IList.h
++++ b/include/IList.h
+@@ -26,8 +26,8 @@ public:
+ void swap(IList<T> &list) { IListBase::swap(list); }
+ T *head() const { return (T *)IListBase::head(); }
+ T *get() { return (T *)IListBase::get(); }
+- IListBase::clear;
+- IListBase::empty;
++ using IListBase::clear;
++ using IListBase::empty;
+ friend class IListIter<T>;
+ private:
+ IList(const IList<T> &); // undefined
+--- a/include/IListIter.h
++++ b/include/IListIter.h
+@@ -17,8 +17,8 @@ public:
+ IListIter(const IList<T> &list) : IListIterBase(list) { }
+ T *cur() const { return (T *)IListIterBase::cur(); }
+
+- IListIterBase::next;
+- IListIterBase::done;
++ using IListIterBase::next;
++ using IListIterBase::done;
+ };
+
+ #ifdef SP_NAMESPACE
+--- a/include/Ptr.h
++++ b/include/Ptr.h
+@@ -69,8 +69,8 @@ public:
+ const T *operator->() const { return Ptr<T>::pointer(); }
+ const T &operator*() const { return *Ptr<T>::pointer(); }
+ void swap(ConstPtr<T> &p) { Ptr<T>::swap(p); }
+- Ptr<T>::isNull;
+- Ptr<T>::clear;
++ using Ptr<T>::isNull;
++ using Ptr<T>::clear;
+ Boolean operator==(const Ptr<T> &p) const { return Ptr<T>::operator==(p); }
+ Boolean operator!=(const Ptr<T> &p) const { return Ptr<T>::operator!=(p); }
+ Boolean operator==(const ConstPtr<T> &p) const {
+--- a/lib/Parser.h
++++ b/lib/Parser.h
+@@ -62,16 +62,16 @@ public:
+ Parser(const SgmlParser::Params &);
+ Event *nextEvent();
+ void parseAll(EventHandler &, const volatile sig_atomic_t *cancelPtr);
+- ParserState::sdPointer;
+- ParserState::instanceSyntaxPointer;
+- ParserState::prologSyntaxPointer;
+- ParserState::activateLinkType;
+- ParserState::allLinkTypesActivated;
+- ParserState::entityManager;
+- ParserState::entityCatalog;
+- ParserState::baseDtd;
+- ParserState::options;
+- ParserState::instantiateDtd;
++ using ParserState::sdPointer;
++ using ParserState::instanceSyntaxPointer;
++ using ParserState::prologSyntaxPointer;
++ using ParserState::activateLinkType;
++ using ParserState::allLinkTypesActivated;
++ using ParserState::entityManager;
++ using ParserState::entityCatalog;
++ using ParserState::baseDtd;
++ using ParserState::options;
++ using ParserState::instantiateDtd;
+ friend class PiAttspecParser;
+ private:
+ Parser(const Parser &); // undefined
diff --git a/app-text/opensp/opensp-1.5.2-r6.ebuild b/app-text/opensp/opensp-1.5.2-r6.ebuild
index bb6d63be113b..738ed37fc6b2 100644
--- a/app-text/opensp/opensp-1.5.2-r6.ebuild
+++ b/app-text/opensp/opensp-1.5.2-r6.ebuild
@@ -34,6 +34,7 @@ S=${WORKDIR}/${MY_P}
src_prepare() {
epatch "${FILESDIR}"/${P}-fix-segfault.patch
+ epatch "${FILESDIR}"/${P}-c11-using.patch
use prefix && eautoreconf
}