Created attachment 189438 [details] blind fix: prepend "using " FreeBSD -CURRENT plans to update base Clang to 6.0.0 soon. While testing this port failed to build. 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<T>::isNull; ^ using ./../include/Ptr.h:74:11: error: ISO C++11 does not allow access declarations; use using declarations instead Ptr<T>::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 To reproduce: $ poudriere jail -cj clang6-amd64 -a amd64 -v projects/clang600-import -m svn+https $ poudriere bulk -Ctj clang6-amd64 textproc/jade http://package18.nyi.freebsd.org/data/headamd64PR224669-default/2018-01-02_08h32m49s/logs/errors/jade-1.2.1_10.log
This could also be fixed by USING_CXXSTD=gnu++98. It will still warn lots of times about the access declarations, but will not error out. That said, Jan's patch looks fine to me, and builds for me too.
A commit references this bug: Author: jbeich Date: Wed Jan 10 14:17:14 UTC 2018 New revision: 458643 URL: https://svnweb.freebsd.org/changeset/ports/458643 Log: 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<T>::isNull; ^ using ./../include/Ptr.h:74:11: error: ISO C++11 does not allow access declarations; use using declarations instead Ptr<T>::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) Reviewed by: dim Approved by: portmgr blanket Changes: head/textproc/jade/files/patch-Ptr.h head/textproc/jade/files/patch-include_IList.h head/textproc/jade/files/patch-include_IListIter.h head/textproc/jade/files/patch-lib_Parser.h