operator<< improvements

This commit is contained in:
Andrzej Krzemienski
2015-01-21 00:10:51 +01:00
parent cc17103070
commit 726b227aa9
39 changed files with 213 additions and 46 deletions

View File

@ -51,5 +51,6 @@ import testing ;
[ compile-fail optional_test_fail_convert_from_null.cpp ]
[ compile-fail optional_test_fail_explicit_convert_in_value_or.cpp ]
[ compile-fail optional_test_fail_explicit_convert_in_value_or_call.cpp ]
[ compile-fail optional_test_fail_io_without_io.cpp ]
;
}

View File

@ -0,0 +1,24 @@
// Copyright (C) 2015, Andrzej Krzemienski.
//
// 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 http://www.boost.org/lib/optional for documentation.
//
// You are welcome to contact the author at:
// akrzemi1@gmail.com
#include <iostream>
#include "boost/optional.hpp"
// but no boost/optional/optional_io.hpp
// THIS TEST SHOULD FAIL TO COMPILE
// Unless one includes header boost/optional/optional_io.hpp, it should not be possible
// to stream out an optional object.
void test_streaming_out_optional()
{
boost::optional<int> opt;
std::cout << opt;
}