[Boost-bugs] [Boost C++ Libraries] #13627: "bcp --namespace=..." misses change in macro for "unordered".

Subject: [Boost-bugs] [Boost C++ Libraries] #13627: "bcp --namespace=..." misses change in macro for "unordered".
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2018-07-05 17:37:53


#13627: "bcp --namespace=..." misses change in macro for "unordered".
---------------------------------------------+--------------------------
 Reporter: Lou Barbieri <louis.barbieri@…> | Owner: John Maddock
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: bcp
  Version: Boost 1.63.0 | Severity: Problem
 Keywords: bcp namespace unordered graph |
---------------------------------------------+--------------------------
 Boost version: 1.67.0

 Steps to reproduce given below error message.

 Hello,

 I'm using bcp to put all of boost under a new namespace. bcp completes
 ok, but compilation of the new tree gives the following error (repeats
 several times - first instance shown):

 {{{
 gcc.compile.c++ build/boost/bin.v2/libs/graph/build/gcc-4.8.5/release
 /threading-multi/read_graphviz_new.o
 In file included from ./boost/unordered/detail/set.hpp:6:0,
                  from ./boost/unordered/unordered_set.hpp:20,
                  from ./boost/unordered_set.hpp:17,
                  from ./boost/graph/adjacency_list.hpp:21,
                  from ./boost/graph/graphviz.hpp:24,
                  from libs/graph/src/read_graphviz_new.cpp:50:
 ./boost/unordered/detail/implementation.hpp:1606:52: error: ‘boost’ has
 not been declared
          BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(1, 1, boost)
                                                     ^
 ./boost/unordered/detail/implementation.hpp:1583:5: note: in definition of
 macro ‘BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE’
      namespace_::tuple<BOOST_PP_ENUM_PARAMS_Z(z, n, A)> const& x)
 \
      ^
 ./boost/unordered/detail/implementation.hpp:1583:56: error: expected
 unqualified-id before ‘const’
      namespace_::tuple<BOOST_PP_ENUM_PARAMS_Z(z, n, A)> const& x)
 \
                                                         ^
 ./boost/unordered/detail/implementation.hpp:1606:9: note: in expansion of
 macro ‘BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE’
          BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(1, 1, boost)
          ^
 ./boost/unordered/detail/implementation.hpp:1583:56: error: expected ‘)’
 before ‘const’
      namespace_::tuple<BOOST_PP_ENUM_PARAMS_Z(z, n, A)> const& x)
 \
                                                         ^
 ./boost/unordered/detail/implementation.hpp:1606:9: note: in expansion of
 macro ‘BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE’
          BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(1, 1, boost)
          ^
 ./boost/unordered/detail/implementation.hpp:1583:63: error: expected
 initializer before ‘x’
      namespace_::tuple<BOOST_PP_ENUM_PARAMS_Z(z, n, A)> const& x)
 \
                                                                ^
 ./boost/unordered/detail/implementation.hpp:1606:9: note: in expansion of
 macro ‘BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE’
          BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE(1, 1, boost)
          ^

 }}}

 Steps to reproduce:
 {{{
 unzip boost_1_67_0.zip >/dev/null
 cd boost_1_67_0/
 ./bootstrap.sh --without-libraries=python
 ./b2 tools/bcp
 mkdir -p ddt
 ./dist/bin/bcp --namespace=ddtboost bin.v2 boost libs more status tools
 ddt
 cd ddt
 ./bootstrap.sh --without-libraries=python
 ./b2 -j4 --build-dir=build --without-python --layout=tagged
 variant=release link=shared threading=multi runtime-link=shared
 }}}

 Changing the third parameter from {{{boost}}} to {{{ddtboost}}} in the
 calls to {{{BOOST_UNORDERED_CONSTRUCT_FROM_TUPLE()}}} starting at lines
 1606 and 1695 fixed the issue (given my --namespace).

 I've attempted to attach a patch file showing the differences, but chances
 are outstanding I screwed it up.

 If I can provide any more info, please let me know.

 Thanks
 Lou

-- 
Ticket URL: <https://svn.boost.org/trac10/ticket/13627>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2018-07-05 17:44:23 UTC