| //===----------------------------------------------------------------------===// |
| // |
| // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| // See https://llvm.org/LICENSE.txt for license information. |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| // |
| //===----------------------------------------------------------------------===// |
| |
| // <regex> |
| |
| // template <class charT, class traits = regex_traits<charT>> |
| // class basic_regex |
| // { |
| // public: |
| // // constants: |
| // static constexpr regex_constants::syntax_option_type icase = regex_constants::icase; |
| // static constexpr regex_constants::syntax_option_type nosubs = regex_constants::nosubs; |
| // static constexpr regex_constants::syntax_option_type optimize = regex_constants::optimize; |
| // static constexpr regex_constants::syntax_option_type collate = regex_constants::collate; |
| // static constexpr regex_constants::syntax_option_type ECMAScript = regex_constants::ECMAScript; |
| // static constexpr regex_constants::syntax_option_type basic = regex_constants::basic; |
| // static constexpr regex_constants::syntax_option_type extended = regex_constants::extended; |
| // static constexpr regex_constants::syntax_option_type awk = regex_constants::awk; |
| // static constexpr regex_constants::syntax_option_type grep = regex_constants::grep; |
| // static constexpr regex_constants::syntax_option_type egrep = regex_constants::egrep; |
| |
| #include <regex> |
| #include <type_traits> |
| #include "test_macros.h" |
| |
| template <class T> |
| void where(const T &) {} |
| |
| template <class CharT> |
| void |
| test() |
| { |
| typedef std::basic_regex<CharT> BR; |
| static_assert((BR::icase == std::regex_constants::icase), ""); |
| static_assert((BR::nosubs == std::regex_constants::nosubs), ""); |
| static_assert((BR::optimize == std::regex_constants::optimize), ""); |
| static_assert((BR::collate == std::regex_constants::collate), ""); |
| static_assert((BR::ECMAScript == std::regex_constants::ECMAScript), ""); |
| static_assert((BR::basic == std::regex_constants::basic), ""); |
| static_assert((BR::extended == std::regex_constants::extended), ""); |
| static_assert((BR::awk == std::regex_constants::awk), ""); |
| static_assert((BR::grep == std::regex_constants::grep), ""); |
| static_assert((BR::egrep == std::regex_constants::egrep), ""); |
| where(BR::icase); |
| where(BR::nosubs); |
| where(BR::optimize); |
| where(BR::collate); |
| where(BR::ECMAScript); |
| where(BR::basic); |
| where(BR::extended); |
| where(BR::awk); |
| where(BR::grep); |
| where(BR::egrep); |
| } |
| |
| int main(int, char**) |
| { |
| test<char>(); |
| test<wchar_t>(); |
| |
| return 0; |
| } |