optional_in_place_t.fail.cpp revision 0cdbe6048173c1f05628dbc85430acf191a3e173
1e837dead3c8dc3445ef6a0e2322179c57e264a13Evan Cheng//===----------------------------------------------------------------------===// 2d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner// 3d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner// The LLVM Compiler Infrastructure 4d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner// 5d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner// This file is dual licensed under the MIT and the University of Illinois Open 6d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner// Source Licenses. See LICENSE.TXT for details. 7d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner// 8d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner//===----------------------------------------------------------------------===// 9d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner 1022fee2dff4c43b551aefa44a96ca74fcade6bfacEvan Cheng// <optional> 110ba45d4fb3e11d8085b01008e31477bece20d01dJim Grosbach 12d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner// A program that necessitates the instantiation of template optional for 13d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner// (possibly cv-qualified) in_place_t is ill-formed. 14d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner 15e837dead3c8dc3445ef6a0e2322179c57e264a13Evan Cheng#include <experimental/optional> 16e837dead3c8dc3445ef6a0e2322179c57e264a13Evan Cheng 17d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattnerint main() 181f6efa3996dd1929fbc129203ce5009b620e6969Michael J. Spencer{ 1999405df044f2c584242e711cc9023ec90356da82Bruno Cardoso Lopes#if _LIBCPP_STD_VER > 11 20d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner using std::experimental::optional; 21d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner using std::experimental::in_place_t; 22d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner using std::experimental::in_place; 23d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner 24d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner optional<in_place_t> opt; 250ba45d4fb3e11d8085b01008e31477bece20d01dJim Grosbach#else 26e837dead3c8dc3445ef6a0e2322179c57e264a13Evan Cheng#error 2706801722a43c697eff0acee905de6b50257ce19bJim Grosbach#endif // _LIBCPP_STD_VER > 11 28d3f99e2bbf5e62261c8948127aacfe9a7d3b2456Chris Lattner} 2906801722a43c697eff0acee905de6b50257ce19bJim Grosbach