Opened 5 years ago

Closed 5 years ago

#9783 closed Bugs (fixed)

Public headers should go through some sort of deprecation before removal.

Reported by: Daniel James Owned by: John Maddock
Milestone: To Be Determined Component: type_traits
Version: Boost 1.54.0 Severity: Problem
Keywords: Cc:

Description

A couple of headers were removed in this change:

https://github.com/boostorg/type_traits/commit/d5c5988d92871f5474646dc4e9a6cb9d6809f460

This is causing test failures for the iterator library which includes boost/type_traits/broken_compiler_spec.hpp. Obviously that can be easily fixed, but these are public headers so there could be other places that depend on them, so I don't think they should be deleted without warning.

Change History (3)

comment:1 Changed 5 years ago by John Maddock

I would prefer this to be fixed in the iterator lib as these headers have never been documented as far as I know. Accepted they should have been placed in a detail/ directory in the first place, none the less they were always internal headers which were included by other type traits headers, but which should not have been used outside of that IMO.

comment:2 Changed 5 years ago by Daniel James

BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION is documented here:

http://www.boost.org/doc/libs/1_55_0/libs/type_traits/doc/html/boost_typetraits/category/transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_

Either the headers or macros are mentioned by quite a few library files, so it's not just the iterator library:

$ ag -l 'BOOST_TT_BROKEN_COMPILER_SPEC|BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION|boost/type_traits/broken_compiler_spec.hpp|boost/type_traits/transform_traits_spec.hpp' libs/
libs/algorithm/minmax/test/minmax_element_test.cpp
libs/iterator/doc/iterator_traits.html
libs/iterator/doc/iterator_traits.rst
libs/iterator/doc/quickbook/traits.qbk
libs/iterator/include/boost/pending/iterator_tests.hpp
libs/iterator/test/indirect_iter_member_types.cpp
libs/iterator/test/indirect_iterator_test.cpp
libs/iterator/test/is_lvalue_iterator.cpp
libs/iterator/test/is_readable_iterator.cpp
libs/iterator/test/iterator_adaptor_test.cpp
libs/iterator/test/pointee.cpp
libs/iterator/test/unit_tests.cpp
libs/mpi/include/boost/mpi/packed_iarchive.hpp
libs/python/include/boost/python/object/iterator.hpp
libs/python/include/boost/python/type_id.hpp
libs/python/test/const_argument.cpp
libs/serialization/doc/implementation.html
libs/serialization/doc/smart_cast.html
libs/type_traits/doc/html/boost_typetraits/category/transform.html
libs/type_traits/doc/html/index/s13.html
libs/type_traits/doc/html/index/s14.html
libs/type_traits/doc/transform_traits.qbk

comment:3 Changed 5 years ago by John Maddock

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.