All users of physfs_list.h included fwd-partial_range.h or
partial_range.h; physfs_list.h did not include either, but assumed one
would be available. Include fwd to fix check_header_includes=1 build.
Fixes: ff67afd440 ("Propagate partial_range up into PHYSFSX_findFiles family")
Building with Boost.Array fails due to name lookup errors. These could
be fixed, but since no one has reported them and they are fairly old,
Boost.Array appears to be unused. Remove support for it.
Building with std::tr1::array fails due to missing features in
std::tr1:array relative to std::array. No one has reported this either,
so remove support for std::tr1:array.
Move the test for std::array into the Cxx11RequiredFeature list so that
it is run as part of the group test, rather than as a separate
statement.
Callers are expected to filter out invalid numbers. Even if they do
not, the only use of the number is to match entries in Stuck_objects.
An invalid match could cause a call to vobjptr() with an invalid index,
but that would be diagnosed by the valptridx checking, so no invalid
memory access will occur.
Boost enable_if works differently from std::enable_if, so the build is
broken when using Boost.TypeTraits. The broken code has been present
for a long time and no one reported it. Remove the fallback to Boost.
All callers of MultiLevelInv_Count passed a constant value. Factor
out the top level blocks of MultiLevelInv_Count into helper functions,
then create two new functions corresponding to MultiLevelInv_Count(0)
and MultiLevelInv_Count(1), implemented by calling the appropriate new
helper functions.