1a9e65961SEric Fiselier //===----------------------------------------------------------------------===// 2a9e65961SEric Fiselier // 357b08b09SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 457b08b09SChandler Carruth // See https://llvm.org/LICENSE.txt for license information. 557b08b09SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6a9e65961SEric Fiselier // 7a9e65961SEric Fiselier //===----------------------------------------------------------------------===// 8a9e65961SEric Fiselier 931cbe0f2SLouis Dionne // UNSUPPORTED: c++03, c++11, c++14 10a9e65961SEric Fiselier 112659663eSLouis Dionne // Throwing bad_optional_access is supported starting in macosx10.13 12*c360553cSLouis Dionne // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx10.{{9|10|11|12}} 13e9c66ad9SMehdi Amini 14a9e65961SEric Fiselier // <optional> 15a9e65961SEric Fiselier 16a9e65961SEric Fiselier // class bad_optional_access is default constructible 17a9e65961SEric Fiselier 18a9e65961SEric Fiselier #include <optional> 19a9e65961SEric Fiselier #include <type_traits> 20a9e65961SEric Fiselier 217fc6a556SMarshall Clow #include "test_macros.h" 227fc6a556SMarshall Clow main(int,char **)232df59c50SJF Bastienint main(int, char**) 24a9e65961SEric Fiselier { 25a9e65961SEric Fiselier using std::bad_optional_access; 26a9e65961SEric Fiselier bad_optional_access ex; 272df59c50SJF Bastien 282df59c50SJF Bastien return 0; 29a9e65961SEric Fiselier } 30