Where is boost/detail/limits.hpp used?

I'm playing with a dependency checker I wrote that tells me what Boost module depends on what. Starting with the basics: Dependencies for config: detail: boost/detail/endian.hpp A dependency from config to detail is not a good thing because detail depends on too much. boost/detail/endian.hpp is now only a forwarding header to predef, so it could and probably should be moved to predef, which seems to depend on nothing. But I was wondering what in config uses endian.hpp. Turns out the only use is in boost/detail/limits.hpp, a file that has been put into config for some reason. I can't find anything in config or in Boost that uses this file. What is its purpose?

On 2/10/2014 8:17 AM, Peter Dimov wrote:
I'm playing with a dependency checker I wrote that tells me what Boost module depends on what. Starting with the basics:
Dependencies for config:
detail: boost/detail/endian.hpp
A dependency from config to detail is not a good thing because detail depends on too much.
The 'boost/detail' really isn't a library as it is just a number of individual header files none of which belong to any particular library. So thinking about what 'boost/detail' as a whole depends on does not seem worthwhile.
boost/detail/endian.hpp is now only a forwarding header to predef, so it could and probably should be moved to predef, which seems to depend on nothing.
OK.
But I was wondering what in config uses endian.hpp. Turns out the only use is in boost/detail/limits.hpp, a file that has been put into config for some reason.
I don't see where endian.hpp is being included by limits.hpp.
I can't find anything in config or in Boost that uses this file. What is its purpose?
John or Dave should know. Hopefully one of them will answer that.

Edward Diener wrote:
The 'boost/detail' really isn't a library as it is just a number of individual header files none of which belong to any particular library. So thinking about what 'boost/detail' as a whole depends on does not seem worthwhile.
These are module-level dependencies, as I said. The superproject has a submodule named "detail".

On 10 February 2014 13:17, Peter Dimov
But I was wondering what in config uses endian.hpp. Turns out the only use is in boost/detail/limits.hpp, a file that has been put into config for some reason. I can't find anything in config or in Boost that uses this file. What is its purpose?
boost/detail/limits.hpp was deleted on trunk in subversion because it had a non-boost license. It should probably should also be deleted from master, it used to be included from boost/limits.hpp when BOOST_NO_LIMITS is defined. The original change is at: https://github.com/boostorg/config/commit/3ce54f0e8bcb173989f9632d41e966f65d...

Daniel James wrote:
boost/detail/limits.hpp was deleted on trunk in subversion because it had a non-boost license. It should probably should also be deleted from master, it used to be included from boost/limits.hpp when BOOST_NO_LIMITS is defined. The original change is at:
https://github.com/boostorg/config/commit/3ce54f0e8bcb173989f9632d41e966f65d...
It does look like a leftover. This change appears to be merged to master, and does show up in the list of commits to master: https://github.com/boostorg/config/commits/master?page=3 but the file is still there. It should probably be deleted.

It does look like a leftover. This change appears to be merged to master, and does show up in the list of commits to master:
https://github.com/boostorg/config/commits/master?page=3
but the file is still there. It should probably be deleted.
Done. Not sure why it wasn't removed by the git merge? That's a little worrying. John.

On 10 February 2014 19:09, John Maddock
It does look like a leftover. This change appears to be merged to master, and does show up in the list of commits to master:
https://github.com/boostorg/config/commits/master?page=3
but the file is still there. It should probably be deleted.
Done. Not sure why it wasn't removed by the git merge? That's a little worrying.
It was from before the merge point you created so git considered it already merged. Also, you've deleted 'include/boost/limits.hpp' which is still used.

On 10 February 2014 19:35, Daniel James
On 10 February 2014 19:09, John Maddock
wrote: It does look like a leftover. This change appears to be merged to master, and does show up in the list of commits to master:
https://github.com/boostorg/config/commits/master?page=3
but the file is still there. It should probably be deleted.
Done. Not sure why it wasn't removed by the git merge? That's a little worrying.
It was from before the merge point you created so git considered it already merged. Also, you've deleted 'include/boost/limits.hpp' which is still used.
I went ahead and reverted that, as it'll break some libraries' tests.

Done. Not sure why it wasn't removed by the git merge? That's a little worrying.
It was from before the merge point you created so git considered it already merged. Also, you've deleted 'include/boost/limits.hpp' which is still used.
Oh shucks, looks like I hit the wrong one :-(
I went ahead and reverted that, as it'll break some libraries' tests.
Many thanks! John.

From: lists@pdimov.com To: boost@lists.boost.org Date: Mon, 10 Feb 2014 15:17:20 +0200 Subject: [boost] Where is boost/detail/limits.hpp used?
I'm playing with a dependency checker I wrote that tells me what Boost module depends on what. Starting with the basics:
Is the dependency tracker public at all?
participants (5)
-
Ahmed Charles
-
Daniel James
-
Edward Diener
-
John Maddock
-
Peter Dimov