Andrey Semashev wrote:
Ok, let's give it a try and see what happens. :) First, we need a new submodule...
We have it, in develop. I've seeded it with a few headers from utility that met the criteria: - boost/utility/addressof.hpp - boost/checked_delete.hpp - boost/utility/enable_if.hpp - boost/noncopyable.hpp - boost/ref.hpp. Of these, noncopyable.hpp may be a bit controversial, being arguably an end-user header and not a core utility. It is, however, used by the Type Traits library: http://www.pdimov.com/tmp/report/type_traits.html#utility along with enable_if.hpp and declval.hpp. enable_if is now in core, declval.hpp both uses and is used by Type Traits and will migrate there earlier or later, so moving noncopyable into core allows us to cut the link between Type Traits and Utility. Next obvious targets: boost/iterator.hpp, boost/detail/iterator.hpp, boost/detail/lightweight_test.hpp, boost/cstdint.hpp (if it doesn't go into Config). Then we probably need to look at http://www.pdimov.com/tmp/report/mpl.html#detail and http://www.pdimov.com/tmp/report/mpl.html#utility That last dependency, on value_init.hpp, I had missed. Oh well.