# Copyright (C) 2001-2003 Douglas Gregor # Copyright (C) 2011-2017 Antony Polukhin # # Distributed under 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) # import testing ; import feature ; project : requirements /boost/test//boost_unit_test_framework static gcc-4.7:-ftrapv gcc-4.6:-ftrapv clang:-ftrapv # default to all warnings on: all # set warnings as errors for those compilers we know we get warning free: gcc:-Wextra # Not a lexical_cast related warning: boost/preprocessor/variadic/elem.hpp:29:46: warning: variadic macros are a C99 feature clang:-Wno-variadic-macros gcc:-Wno-variadic-macros # Not a lexical_cast related warning: boost/mpl/aux_/preprocessed/gcc/greater_equal.hpp:78:1: warning: empty macro arguments are a C99 feature [-Wc99-extensions] # boost/mpl/iter_fold.hpp:45:1: warning: empty macro arguments are a C99 feature [-Wc99-extensions] clang:-Wno-c99-extensions ; # Thanks to Steven Watanabe for helping with feature feature.feature nowchar : on : composite optional propagated link-incompatible ; feature.compose on : "/Zc:wchar_t-" ; test-suite conversion : [ run lexical_cast_test.cpp ] [ run lexical_cast_loopback_test.cpp ] [ run lexical_cast_abstract_test.cpp ] [ run lexical_cast_noncopyable_test.cpp ] [ run lexical_cast_vc8_bug_test.cpp ] [ run lexical_cast_wchars_test.cpp ] [ run lexical_cast_float_types_test.cpp ] [ run lexical_cast_inf_nan_test.cpp ] [ run lexical_cast_containers_test.cpp : : : gcc:-Wno-long-long clang:-Wno-long-long ] [ run lexical_cast_empty_input_test.cpp ] [ run lexical_cast_pointers_test.cpp ] [ compile lexical_cast_typedefed_wchar_test.cpp : msvc:on ] [ run lexical_cast_typedefed_wchar_test_runtime.cpp : : : msvc:on msvc,stlport:no ] [ run lexical_cast_no_locale_test.cpp : : : BOOST_NO_STD_LOCALE BOOST_LEXICAL_CAST_ASSUME_C_LOCALE ] [ run lexical_cast_no_exceptions_test.cpp : : : off _HAS_EXCEPTIONS=0 # MSVC stdlib _STLP_NO_EXCEPTIONS # STLPort -/boost/test//boost_unit_test_framework # uses lightweight_test ] [ run lexical_cast_iterator_range_test.cpp ] [ run lexical_cast_arrays_test.cpp : : : msvc:/wd4512 # assignment operator could not be generated ] [ run lexical_cast_integral_types_test.cpp ] [ run lexical_cast_stream_detection_test.cpp ] [ run lexical_cast_stream_traits_test.cpp ] [ compile-fail lexical_cast_to_pointer_test.cpp ] [ run lexical_cast_filesystem_test.cpp ../../filesystem/build//boost_filesystem/static ] [ run lexical_cast_try_lexical_convert.cpp ] [ run lexical_cast_no_comp_time_prcision.cpp : : : msvc:/wd4127 # conditional expression is constant ] ; # Assuring that examples compile and run. Adding sources from `example` directory to the `conversion` test suite. for local p in [ glob ../example/*.cpp ] { conversion += [ run $(p) ] ; }