From 5c06e2947b9061dae6443f98535a61638ccb474e Mon Sep 17 00:00:00 2001 From: Jan Beich Date: Fri, 5 Jan 2018 10:30:20 +0000 Subject: [PATCH] textproc/jade: unbreak build with Clang 6 (C++14 by default) In file included from EntityCatalog.cxx:9: In file included from ./../include/EntityDecl.h:12: ./../include/Ptr.h:73:11: error: ISO C++11 does not allow access declarations; use using declarations instead Ptr::isNull; ^ using ./../include/Ptr.h:74:11: error: ISO C++11 does not allow access declarations; use using declarations instead Ptr::clear; ^ using In file included from DescriptorManager.cxx:5: In file included from ./../include/DescriptorManager.h:8: In file included from ./../include/List.h:7: ./../include/IList.h:29:14: error: ISO C++11 does not allow access declarations; use using declarations instead IListBase::clear; ^ using ./../include/IList.h:30:14: error: ISO C++11 does not allow access declarations; use using declarations instead IListBase::empty; ^ using In file included from DescriptorManager.cxx:6: In file included from ./../include/ListIter.h:8: ./../include/IListIter.h:20:18: error: ISO C++11 does not allow access declarations; use using declarations instead IListIterBase::next; ^ using ./../include/IListIter.h:21:18: error: ISO C++11 does not allow access declarations; use using declarations instead IListIterBase::done; ^ using In file included from parseSd.cxx:5: ./Parser.h:65:16: error: ISO C++11 does not allow access declarations; use using declarations instead ParserState::sdPointer; ^ using ./Parser.h:66:16: error: ISO C++11 does not allow access declarations; use using declarations instead ParserState::instanceSyntaxPointer; ^ using ./Parser.h:67:16: error: ISO C++11 does not allow access declarations; use using declarations instead ParserState::prologSyntaxPointer; ^ using ./Parser.h:68:16: error: ISO C++11 does not allow access declarations; use using declarations instead ParserState::activateLinkType; ^ using ./Parser.h:69:16: error: ISO C++11 does not allow access declarations; use using declarations instead ParserState::allLinkTypesActivated; ^ using ./Parser.h:70:16: error: ISO C++11 does not allow access declarations; use using declarations instead ParserState::entityManager; ^ using ./Parser.h:71:16: error: ISO C++11 does not allow access declarations; use using declarations instead ParserState::entityCatalog; ^ using ./Parser.h:72:16: error: ISO C++11 does not allow access declarations; use using declarations instead ParserState::baseDtd; ^ using ./Parser.h:73:16: error: ISO C++11 does not allow access declarations; use using declarations instead ParserState::options; ^ using PR: 224929 Reported by: antoine (via bug 224669) --- textproc/jade/files/patch-Ptr.h | 11 +++++++++++ textproc/jade/files/patch-include_IList.h | 13 +++++++++++++ textproc/jade/files/patch-include_IListIter.h | 13 +++++++++++++ textproc/jade/files/patch-lib_Parser.h | 27 +++++++++++++++++++++++++++ 4 files changed, 64 insertions(+) create mode 100644 textproc/jade/files/patch-include_IList.h create mode 100644 textproc/jade/files/patch-include_IListIter.h create mode 100644 textproc/jade/files/patch-lib_Parser.h diff --git a/textproc/jade/files/patch-Ptr.h b/textproc/jade/files/patch-Ptr.h index c726cfed4aa6..09c8940b63de 100644 --- a/textproc/jade/files/patch-Ptr.h +++ b/textproc/jade/files/patch-Ptr.h @@ -8,3 +8,14 @@ // T must have Resource as a public base class // T may be an incomplete type +@@ -69,8 +70,8 @@ class ConstPtr : private Ptr { (public) + const T *operator->() const { return Ptr::pointer(); } + const T &operator*() const { return *Ptr::pointer(); } + void swap(ConstPtr &p) { Ptr::swap(p); } +- Ptr::isNull; +- Ptr::clear; ++ using Ptr::isNull; ++ using Ptr::clear; + Boolean operator==(const Ptr &p) const { return Ptr::operator==(p); } + Boolean operator!=(const Ptr &p) const { return Ptr::operator!=(p); } + Boolean operator==(const ConstPtr &p) const { diff --git a/textproc/jade/files/patch-include_IList.h b/textproc/jade/files/patch-include_IList.h new file mode 100644 index 000000000000..71a1e7c1c62d --- /dev/null +++ b/textproc/jade/files/patch-include_IList.h @@ -0,0 +1,13 @@ +--- include/IList.h.orig 1998-10-07 05:15:50 UTC ++++ include/IList.h +@@ -26,8 +26,8 @@ class IList : private IListBase { (public) + void swap(IList &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; + private: + IList(const IList &); // undefined diff --git a/textproc/jade/files/patch-include_IListIter.h b/textproc/jade/files/patch-include_IListIter.h new file mode 100644 index 000000000000..54a57e5285b1 --- /dev/null +++ b/textproc/jade/files/patch-include_IListIter.h @@ -0,0 +1,13 @@ +--- include/IListIter.h.orig 1998-10-07 05:15:50 UTC ++++ include/IListIter.h +@@ -17,8 +17,8 @@ class IListIter : private IListIterBase { (public) + IListIter(const IList &list) : IListIterBase(list) { } + T *cur() const { return (T *)IListIterBase::cur(); } + +- IListIterBase::next; +- IListIterBase::done; ++ using IListIterBase::next; ++ using IListIterBase::done; + }; + + #ifdef SP_NAMESPACE diff --git a/textproc/jade/files/patch-lib_Parser.h b/textproc/jade/files/patch-lib_Parser.h new file mode 100644 index 000000000000..182ebce0d532 --- /dev/null +++ b/textproc/jade/files/patch-lib_Parser.h @@ -0,0 +1,27 @@ +--- lib/Parser.h~ 1998-10-01 05:13:28 UTC ++++ lib/Parser.h +@@ -62,15 +62,15 @@ class Parser : private ParserState { (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; ++ 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; + private: + Parser(const Parser &); // undefined + void operator=(const Parser &); // undefined