| // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fsyntax-only -verify -std=gnu++20 -fms-extensions -Wno-microsoft %s |
| // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fsyntax-only -verify -std=gnu++23 -fms-extensions -Wno-microsoft %s |
| |
| template <class T, class U> |
| struct Same { |
| static constexpr auto value = __is_same(T, U); |
| }; |
| |
| template <class T> |
| struct __is_nothrow_convertible { // expected-warning{{keyword '__is_nothrow_convertible' will be made available as an identifier for the remainder of the translation unit}} |
| using type = T; |
| }; |
| |
| using A = Same<__is_nothrow_convertible<int>::type, __is_nothrow_convertible<int>::type>; |