Opened 5 years ago
Closed 17 months ago
#60158 closed defect (fixed)
openjade @1.3.2_11: build fails with clang-9.0
Reported by: | kencu (Ken) | Owned by: | lockhart (Thomas Lockhart) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | mascguy (Christopher Nielsen) | |
Port: | openjade |
Description
builds if compiler is forced to clang-5.0
:info:build In file included from Node.cxxIn file included from LocNode.cxx:6: :info:build In file included from ./LocNode.h:8: :info:build In file included from ./Node.h:12: :info:build /opt/local/include/OpenSP/../OpenSP/IList.h:29:14: error: ISO C++11 does not allow access declarations; use using declarations instead :info:build :10 IListBase::clear;: :info:build In file included from ^ :info:build ./Node.h:12: :info:build /opt/local/include/OpenSP/../OpenSP/IList.h:29:14: error: ISO C++11 does not allow access declarations; use using declarations instead :info:build IListBase::clear; :info:build ^ :info:build /opt/local/include/OpenSP/../OpenSP/IList.h:30:14: error: ISO C++11 does not allow access declarations; use using declarations instead :info:build IListBase::empty; :info:build ^ :info:build /opt/local/include/OpenSP/../OpenSP/IList.h:30:14: error: ISO C++11 does not allow access declarations; use using declarations instead :info:build IListBase::empty; :info:build ^ :info:build 1 warning and 2 errors generated.
Attachments (1)
Change History (8)
Changed 5 years ago by kencu (Ken)
Attachment: | openjade-build-fail-clang9.log added |
---|
comment:1 Changed 5 years ago by lockhart (Thomas Lockhart)
comment:2 Changed 5 years ago by jmroot (Joshua Root)
This is literally the same problem as fixed in [0d29c8f434da8135ac75bbed3404a6d5570fcf1f/macports-ports], since the error is happening in the opensp headers. The same fix is appropriate here. I'd say that upstream should either add the -std option or fix the code to be compatible with later standards, but the last release was in 2003.
comment:3 Changed 5 years ago by kencu (Ken)
I put these up for you guys so you know what will be coming in the next few years.
Although 10.6.8 is old, the compiler is brand-spanking-new-much-much-newer than any Xcode, and what clang-9.0 shows now, Xcode will show in a year or two.
comment:4 Changed 5 years ago by lockhart (Thomas Lockhart)
Yeah, specifying the c++03 standard seems to be the way to go given the "mature" code base. Thanks kencu for bringing the problem to my attention. I'll try to develop a patch though the current scheme of needing to fork the entire repo to send in a one-line patch is painful. Very painful.
comment:5 Changed 5 years ago by lockhart (Thomas Lockhart)
I've submitted a pull request on github after verifying that the options get passed to the compiler.
comment:6 Changed 17 months ago by mascguy (Christopher Nielsen)
Cc: | mascguy added |
---|
comment:7 Changed 17 months ago by Christopher Nielsen <mascguy@…>
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
You are on a very old version of MacOS (10.6). On my somewhat-old 10.13, the preferred compiler is clang in /usr/bin/clang and openjade compiles just fine. Would you like to develop a patch which might work on your older machine? I'd suggest trying to pass a --std=C++03 on the compiler command line. I'm happy to give you some more details if needed.