none_t is no loner constructible from literal 0

This caused problems because:
optional<T> o = 0;
always worked. But often it would create an uninitialized optional.
This commit is contained in:
Andrzej Krzemienski
2014-11-22 01:18:25 +01:00
parent 5435021ea4
commit 53e53171c4
7 changed files with 63 additions and 5 deletions

View File

@ -0,0 +1,25 @@
// Copyright (C) 2014, 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 "boost/optional.hpp"
//
// THIS TEST SHOULD FAIL TO COMPILE
//
struct NoInitFromNull{};
void test_conversion_from_null()
{
boost::optional<NoInitFromNull> opt = 0;
}