//  Boost large_file_support_test.cpp  ---------------------------------------//

//  Copyright Beman Dawes 2004.
//  Use, modification, and distribution is subject to the Boost Software
//  License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
//  http://www.boost.org/LICENSE_1_0.txt)

//  See library home page at http://www.boost.org/libs/filesystem

//  See deprecated_test for tests of deprecated features
#define BOOST_FILESYSTEM_NO_DEPRECATED
#define BOOST_SYSTEM_NO_DEPRECATED

#include <boost/filesystem/operations.hpp>

#include <boost/config.hpp>
# if defined( BOOST_NO_STD_WSTRING )
#   error Configuration not supported: Boost.Filesystem V3 and later requires std::wstring support
# endif

namespace fs = boost::filesystem;

#include <iostream>

int main()
{
  if ( fs::detail::possible_large_file_size_support() )
  {
    std::cout << "It appears that file sizes greater that 2 gigabytes are possible\n"
                 "for this configuration on this platform since the operating system\n"
                 "does use a large enough integer type to report large file sizes.\n\n"
                 "Whether or not such support is actually present depends on the OS\n";
    return 0;
  }
  std::cout << "The operating system is using an integer type to report file sizes\n"
               "that can not represent file sizes greater that 2 gigabytes (31-bits).\n"
               "Thus the Filesystem Library will not correctly deal with such large\n"
               "files. If you think that this operatiing system should be able to\n"
               "support large files, please report the problem to the Boost developers\n"
               "mailing list.\n";
  return 1;
}
