[MacPorts] #53634: clang++-mp-4.0 -stdlib=macports-libstdc++ should be in C++11 mode by default

MacPorts noreply at macports.org
Tue May 9 17:15:00 UTC 2017


#53634: clang++-mp-4.0 -stdlib=macports-libstdc++ should be in C++11 mode by
default
------------------------+----------------------
  Reporter:  mojca      |      Owner:  mojca
      Type:  defect     |     Status:  assigned
  Priority:  Low        |  Milestone:
 Component:  ports      |    Version:
Resolution:             |   Keywords:
      Port:  clang-4.0  |
------------------------+----------------------

Comment (by kencu):

 I'm thinking that this bit in Marcus' patch:
 {{{
 +  case ToolChain::CST_MacPortsLibstdcxx:
 +    if (getVFS().exists("@@MACPORTS_libstdc++@@")) {
 +      CmdArgs.push_back("@@MACPORTS_libstdc++@@");
 +      return;
 +    }
 +    CmdArgs.push_back("-lstdc++");
 +    break;
 }}}

 could be this instead:
 {{{
 +    CmdArgs.push_back("-lstdc++");
 +    CmdArgs.push_back("-std=c++11");
 }}}

 there's another spot at the very end of the patch that does the same kind
 of push_back, and probably the same extra addition should go there,
 although the way it's written right now it might also affect CST_Libstdcxx
 and so we would need a separate break; item for each CST.

 {{{
    case ToolChain::CST_Libstdcxx:
 +  case ToolChain::CST_MacPortsLibstdcxx:
      CmdArgs.push_back("-lstdc++");
      break;
 }}}

 like this maybe:

 {{{
    case ToolChain::CST_Libstdcxx:
      CmdArgs.push_back("-lstdc++");
      break;
    case ToolChain::CST_MacPortsLibstdcxx:
      CmdArgs.push_back("-lstdc++");
      CmdArgs.push_back("-std=c++11");
      break;
 }}}

--
Ticket URL: <https://trac.macports.org/ticket/53634#comment:5>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list