diff --git a/doc/examples/example22.run-fail.cpp b/doc/examples/example22.run-fail.cpp index 42f0ae2d98..7bd2bade93 100644 --- a/doc/examples/example22.run-fail.cpp +++ b/doc/examples/example22.run-fail.cpp @@ -23,8 +23,17 @@ void goo( int ) { } +#if defined(BOOST_MSVC) && (BOOST_MSVC > 1900) +// VS2017+ compiler optimizations may cause this code NOT to crash. +#pragma optimize("", off) +#endif + void foo( int i ) { goo( 2/(i-1) ); } + +#if defined(BOOST_MSVC) && (BOOST_MSVC > 1900) +#pragma optimize("", on) +#endif //] diff --git a/doc/examples/example23.run-fail.cpp b/doc/examples/example23.run-fail.cpp index 34b4044857..5b824b7846 100644 --- a/doc/examples/example23.run-fail.cpp +++ b/doc/examples/example23.run-fail.cpp @@ -9,8 +9,18 @@ #define BOOST_TEST_MODULE example #include +#if defined(BOOST_MSVC) && (BOOST_MSVC > 1900) +// VS2017+ compiler optimizations may cause this code NOT to crash. +#pragma optimize("", off) +#endif + + void foo( int ) {} +#if defined(BOOST_MSVC) && (BOOST_MSVC > 1900) +#pragma optimize("", on) +#endif + BOOST_AUTO_TEST_CASE( test_case ) { int* p = 0;