reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Derived Classes

tools/clang/include/clang/AST/FormatString.h
  477 class PrintfConversionSpecifier :
  627 class ScanfConversionSpecifier :

References

include/llvm/ADT/Optional.h
  144     T value;
  160   explicit OptionalStorage(in_place_t, Args &&... args)
  161       : value(std::forward<Args>(args)...), hasVal(true) {}
  172   T &getValue() LLVM_LVALUE_FUNCTION noexcept {
  176   T const &getValue() const LLVM_LVALUE_FUNCTION noexcept {
  181   T &&getValue() && noexcept {
  216   optional_detail::OptionalStorage<T> Storage;
  219   using value_type = T;
  224   Optional(const T &y) : Storage(optional_detail::in_place_t{}, y) {}
  227   Optional(T &&y) : Storage(optional_detail::in_place_t{}, std::move(y)) {}
  230   Optional &operator=(T &&y) {
  241   static inline Optional create(const T *y) {
  245   Optional &operator=(const T &y) {
  253   const T *getPointer() const { return &Storage.getValue(); }
  254   T *getPointer() { return &Storage.getValue(); }
  255   const T &getValue() const LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
  256   T &getValue() LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
  260   const T *operator->() const { return getPointer(); }
  261   T *operator->() { return getPointer(); }
  262   const T &operator*() const LLVM_LVALUE_FUNCTION { return getValue(); }
  263   T &operator*() LLVM_LVALUE_FUNCTION { return getValue(); }
  266   constexpr T getValueOr(U &&value) const LLVM_LVALUE_FUNCTION {
  271   T &&getValue() && { return std::move(Storage.getValue()); }
  272   T &&operator*() && { return std::move(Storage.getValue()); }
  275   T getValueOr(U &&value) && {
include/llvm/Support/Casting.h
   34   using SimpleType = From; // The real type this represents...
   37   static SimpleType &getSimplifiedValue(From &Val) { return Val; }
   41   using NonConstSimpleType = typename simplify_type<From>::SimpleType;
   47   static RetType getSimplifiedValue(const From& Val) {
   57   static inline bool doit(const From &Val) {
   76   static inline bool doit(const From &Val) {
   77     return isa_impl<To, From>::doit(Val);
  141 template <class X, class Y> LLVM_NODISCARD inline bool isa(const Y &Val) {
  142   return isa_impl_wrap<X, const Y,
  143                        typename simplify_type<const Y>::SimpleType>::doit(Val);
  236       std::is_same<X, typename simplify_type<X>::SimpleType>::value;
  236       std::is_same<X, typename simplify_type<X>::SimpleType>::value;
include/llvm/Support/type_traits.h
   55 struct add_const_past_pointer { using type = const T; };
   91     T t;
  122     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
  122     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
  122     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
  130     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
  130     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
  130     static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
  145       std::is_copy_constructible<detail::trivial_helper<T>>::value;
  147       !std::is_copy_constructible<T>::value;
  151       std::is_move_constructible<detail::trivial_helper<T>>::value;
  153       !std::is_move_constructible<T>::value;
  157       is_copy_assignable<detail::trivial_helper<T>>::value;
  159       !is_copy_assignable<T>::value;
  163       is_move_assignable<detail::trivial_helper<T>>::value;
  165       !is_move_assignable<T>::value;
  169       std::is_destructible<detail::trivial_helper<T>>::value;
tools/clang/include/clang/AST/FormatString.h
  240   Optional<ConversionSpecifier> getStandardSpecifier() const;
  401   ConversionSpecifier CS;
  478   public analyze_format_string::ConversionSpecifier  {
  490   static bool classof(const analyze_format_string::ConversionSpecifier *CS) {
  628     public analyze_format_string::ConversionSpecifier  {
  636   static bool classof(const analyze_format_string::ConversionSpecifier *CS) {
tools/clang/lib/AST/FormatString.cpp
  672 Optional<ConversionSpecifier>
  674   ConversionSpecifier::Kind NewKind;
  690   ConversionSpecifier FixedCS(*this);
  734           case ConversionSpecifier::cArg:
  735           case ConversionSpecifier::CArg:
  736           case ConversionSpecifier::sArg:
  737           case ConversionSpecifier::SArg:
  738           case ConversionSpecifier::ZArg:
  752         case ConversionSpecifier::dArg:
  753         case ConversionSpecifier::DArg:
  754         case ConversionSpecifier::iArg:
  755         case ConversionSpecifier::oArg:
  756         case ConversionSpecifier::OArg:
  757         case ConversionSpecifier::uArg:
  758         case ConversionSpecifier::UArg:
  759         case ConversionSpecifier::xArg:
  760         case ConversionSpecifier::XArg:
  761         case ConversionSpecifier::nArg:
  763         case ConversionSpecifier::FreeBSDrArg:
  764         case ConversionSpecifier::FreeBSDyArg:
  783         case ConversionSpecifier::dArg:
  784         case ConversionSpecifier::DArg:
  785         case ConversionSpecifier::iArg:
  786         case ConversionSpecifier::oArg:
  787         case ConversionSpecifier::OArg:
  788         case ConversionSpecifier::uArg:
  789         case ConversionSpecifier::UArg:
  790         case ConversionSpecifier::xArg:
  791         case ConversionSpecifier::XArg:
  792         case ConversionSpecifier::nArg:
  793         case ConversionSpecifier::cArg:
  794         case ConversionSpecifier::sArg:
  795         case ConversionSpecifier::ScanListArg:
  796         case ConversionSpecifier::ZArg:
  798         case ConversionSpecifier::FreeBSDrArg:
  799         case ConversionSpecifier::FreeBSDyArg:
  807         case ConversionSpecifier::aArg:
  808         case ConversionSpecifier::AArg:
  809         case ConversionSpecifier::fArg:
  810         case ConversionSpecifier::FArg:
  811         case ConversionSpecifier::eArg:
  812         case ConversionSpecifier::EArg:
  813         case ConversionSpecifier::gArg:
  814         case ConversionSpecifier::GArg:
  817         case ConversionSpecifier::dArg:
  818         case ConversionSpecifier::iArg:
  819         case ConversionSpecifier::oArg:
  820         case ConversionSpecifier::uArg:
  821         case ConversionSpecifier::xArg:
  822         case ConversionSpecifier::XArg:
  831         case ConversionSpecifier::sArg:
  832         case ConversionSpecifier::SArg:
  833         case ConversionSpecifier::ScanListArg:
  841         case ConversionSpecifier::cArg:
  842         case ConversionSpecifier::CArg:
  843         case ConversionSpecifier::sArg:
  844         case ConversionSpecifier::SArg:
  845         case ConversionSpecifier::ScanListArg:
  854         case ConversionSpecifier::dArg:
  855         case ConversionSpecifier::iArg:
  856         case ConversionSpecifier::oArg:
  857         case ConversionSpecifier::uArg:
  858         case ConversionSpecifier::xArg:
  859         case ConversionSpecifier::XArg:
  866         case ConversionSpecifier::cArg:
  867         case ConversionSpecifier::CArg:
  868         case ConversionSpecifier::sArg:
  869         case ConversionSpecifier::SArg:
  870         case ConversionSpecifier::ZArg:
  907     case ConversionSpecifier::cArg:
  908     case ConversionSpecifier::dArg:
  909     case ConversionSpecifier::iArg:
  910     case ConversionSpecifier::oArg:
  911     case ConversionSpecifier::uArg:
  912     case ConversionSpecifier::xArg:
  913     case ConversionSpecifier::XArg:
  914     case ConversionSpecifier::fArg:
  915     case ConversionSpecifier::FArg:
  916     case ConversionSpecifier::eArg:
  917     case ConversionSpecifier::EArg:
  918     case ConversionSpecifier::gArg:
  919     case ConversionSpecifier::GArg:
  920     case ConversionSpecifier::aArg:
  921     case ConversionSpecifier::AArg:
  922     case ConversionSpecifier::sArg:
  923     case ConversionSpecifier::pArg:
  924     case ConversionSpecifier::nArg:
  925     case ConversionSpecifier::ObjCObjArg:
  926     case ConversionSpecifier::ScanListArg:
  927     case ConversionSpecifier::PercentArg:
  928     case ConversionSpecifier::PArg:
  930     case ConversionSpecifier::CArg:
  931     case ConversionSpecifier::SArg:
  933     case ConversionSpecifier::InvalidSpecifier:
  934     case ConversionSpecifier::FreeBSDbArg:
  935     case ConversionSpecifier::FreeBSDDArg:
  936     case ConversionSpecifier::FreeBSDrArg:
  937     case ConversionSpecifier::FreeBSDyArg:
  938     case ConversionSpecifier::PrintErrno:
  939     case ConversionSpecifier::DArg:
  940     case ConversionSpecifier::OArg:
  941     case ConversionSpecifier::UArg:
  942     case ConversionSpecifier::ZArg:
  951         case ConversionSpecifier::dArg:
  952         case ConversionSpecifier::iArg:
  953         case ConversionSpecifier::oArg:
  954         case ConversionSpecifier::uArg:
  955         case ConversionSpecifier::xArg:
  956         case ConversionSpecifier::XArg:
  966   if (CS.isAnyIntArg() || CS.getKind() == ConversionSpecifier::nArg) {
tools/clang/lib/AST/OSLog.cpp
   35   getKind(analyze_format_string::ConversionSpecifier::Kind K) {
   37     case clang::analyze_format_string::ConversionSpecifier::sArg: // "%s"
   39     case clang::analyze_format_string::ConversionSpecifier::SArg: // "%S"
   41     case clang::analyze_format_string::ConversionSpecifier::PArg: { // "%P"
   43     case clang::analyze_format_string::ConversionSpecifier::ObjCObjArg: // "%@"
   45     case clang::analyze_format_string::ConversionSpecifier::PrintErrno: // "%m"
   63             clang::analyze_format_string::ConversionSpecifier::PrintErrno)
   81     case clang::analyze_format_string::ConversionSpecifier::sArg:   // "%s"
   82     case clang::analyze_format_string::ConversionSpecifier::SArg: { // "%S"
   98     case clang::analyze_format_string::ConversionSpecifier::PArg: { // "%P"
tools/clang/lib/AST/PrintfFormatString.cpp
  300   ConversionSpecifier::Kind k = ConversionSpecifier::InvalidSpecifier;
  300   ConversionSpecifier::Kind k = ConversionSpecifier::InvalidSpecifier;
  305     case '%': k = ConversionSpecifier::PercentArg;   break;
  306     case 'A': k = ConversionSpecifier::AArg; break;
  307     case 'E': k = ConversionSpecifier::EArg; break;
  308     case 'F': k = ConversionSpecifier::FArg; break;
  309     case 'G': k = ConversionSpecifier::GArg; break;
  310     case 'X': k = ConversionSpecifier::XArg; break;
  311     case 'a': k = ConversionSpecifier::aArg; break;
  312     case 'c': k = ConversionSpecifier::cArg; break;
  313     case 'd': k = ConversionSpecifier::dArg; break;
  314     case 'e': k = ConversionSpecifier::eArg; break;
  315     case 'f': k = ConversionSpecifier::fArg; break;
  316     case 'g': k = ConversionSpecifier::gArg; break;
  317     case 'i': k = ConversionSpecifier::iArg; break;
  321         k = ConversionSpecifier::nArg;
  323     case 'o': k = ConversionSpecifier::oArg; break;
  324     case 'p': k = ConversionSpecifier::pArg; break;
  325     case 's': k = ConversionSpecifier::sArg; break;
  326     case 'u': k = ConversionSpecifier::uArg; break;
  327     case 'x': k = ConversionSpecifier::xArg; break;
  329     case 'C': k = ConversionSpecifier::CArg; break;
  330     case 'S': k = ConversionSpecifier::SArg; break;
  333       k = ConversionSpecifier::PArg;
  336     case '@': k = ConversionSpecifier::ObjCObjArg; break;
  338     case 'm': k = ConversionSpecifier::PrintErrno; break;
  342         k = ConversionSpecifier::FreeBSDbArg; // int followed by char *
  346         k = ConversionSpecifier::FreeBSDrArg; // int
  350         k = ConversionSpecifier::FreeBSDyArg; // int
  355         k = ConversionSpecifier::FreeBSDDArg; // void * followed by char *
  357         k = ConversionSpecifier::DArg;
  361         k = ConversionSpecifier::OArg;
  365         k = ConversionSpecifier::UArg;
  370         k = ConversionSpecifier::ZArg;
  376   if (k != ConversionSpecifier::ObjCObjArg &&
  377       k != ConversionSpecifier::InvalidSpecifier &&
  390   if (k == ConversionSpecifier::FreeBSDbArg ||
  391       k == ConversionSpecifier::FreeBSDDArg)
  394   if (k == ConversionSpecifier::InvalidSpecifier) {
  460     if (FS.getConversionSpecifier().getKind() == ConversionSpecifier::Kind::sArg)
  489   if (CS.getKind() == ConversionSpecifier::cArg)
  593   if (CS.getKind() == ConversionSpecifier::nArg) {
  627     case ConversionSpecifier::sArg:
  637     case ConversionSpecifier::SArg:
  645     case ConversionSpecifier::CArg:
  652     case ConversionSpecifier::pArg:
  653     case ConversionSpecifier::PArg:
  655     case ConversionSpecifier::ObjCObjArg:
  683   if (CS.getKind() == ConversionSpecifier::nArg)
  694     CS.setKind(ConversionSpecifier::ObjCObjArg);
  710     CS.setKind(ConversionSpecifier::sArg);
  846     case ConversionSpecifier::uArg:
  847     case ConversionSpecifier::UArg:
  849         CS.setKind(clang::analyze_format_string::ConversionSpecifier::dArg);
  851     case ConversionSpecifier::dArg:
  852     case ConversionSpecifier::DArg:
  853     case ConversionSpecifier::iArg:
  855         CS.setKind(clang::analyze_format_string::ConversionSpecifier::uArg);
  870     CS.setKind(ConversionSpecifier::cArg);
  879     CS.setKind(ConversionSpecifier::fArg);
  882     CS.setKind(ConversionSpecifier::dArg);
  886     CS.setKind(ConversionSpecifier::uArg);
  934   case ConversionSpecifier::dArg:
  935   case ConversionSpecifier::DArg:
  936   case ConversionSpecifier::iArg:
  937   case ConversionSpecifier::fArg:
  938   case ConversionSpecifier::FArg:
  939   case ConversionSpecifier::eArg:
  940   case ConversionSpecifier::EArg:
  941   case ConversionSpecifier::gArg:
  942   case ConversionSpecifier::GArg:
  943   case ConversionSpecifier::aArg:
  944   case ConversionSpecifier::AArg:
  945   case ConversionSpecifier::FreeBSDrArg:
  946   case ConversionSpecifier::FreeBSDyArg:
  960   case ConversionSpecifier::oArg:
  961   case ConversionSpecifier::OArg:
  962   case ConversionSpecifier::xArg:
  963   case ConversionSpecifier::XArg:
  964   case ConversionSpecifier::aArg:
  965   case ConversionSpecifier::AArg:
  966   case ConversionSpecifier::eArg:
  967   case ConversionSpecifier::EArg:
  968   case ConversionSpecifier::fArg:
  969   case ConversionSpecifier::FArg:
  970   case ConversionSpecifier::gArg:
  971   case ConversionSpecifier::GArg:
  972   case ConversionSpecifier::FreeBSDrArg:
  973   case ConversionSpecifier::FreeBSDyArg:
  987   case ConversionSpecifier::dArg:
  988   case ConversionSpecifier::DArg:
  989   case ConversionSpecifier::iArg:
  990   case ConversionSpecifier::oArg:
  991   case ConversionSpecifier::OArg:
  992   case ConversionSpecifier::uArg:
  993   case ConversionSpecifier::UArg:
  994   case ConversionSpecifier::xArg:
  995   case ConversionSpecifier::XArg:
  996   case ConversionSpecifier::aArg:
  997   case ConversionSpecifier::AArg:
  998   case ConversionSpecifier::eArg:
  999   case ConversionSpecifier::EArg:
 1000   case ConversionSpecifier::fArg:
 1001   case ConversionSpecifier::FArg:
 1002   case ConversionSpecifier::gArg:
 1003   case ConversionSpecifier::GArg:
 1004   case ConversionSpecifier::FreeBSDrArg:
 1005   case ConversionSpecifier::FreeBSDyArg:
 1019   case ConversionSpecifier::dArg:
 1020   case ConversionSpecifier::DArg:
 1021   case ConversionSpecifier::iArg:
 1022   case ConversionSpecifier::fArg:
 1023   case ConversionSpecifier::FArg:
 1024   case ConversionSpecifier::eArg:
 1025   case ConversionSpecifier::EArg:
 1026   case ConversionSpecifier::gArg:
 1027   case ConversionSpecifier::GArg:
 1028   case ConversionSpecifier::aArg:
 1029   case ConversionSpecifier::AArg:
 1030   case ConversionSpecifier::FreeBSDrArg:
 1031   case ConversionSpecifier::FreeBSDyArg:
 1045   case ConversionSpecifier::nArg:
 1058     case ConversionSpecifier::dArg:
 1059     case ConversionSpecifier::DArg:
 1060     case ConversionSpecifier::iArg:
 1061     case ConversionSpecifier::uArg:
 1062     case ConversionSpecifier::UArg:
 1063     case ConversionSpecifier::fArg:
 1064     case ConversionSpecifier::FArg:
 1065     case ConversionSpecifier::gArg:
 1066     case ConversionSpecifier::GArg:
 1079   case ConversionSpecifier::dArg:
 1080   case ConversionSpecifier::DArg:
 1081   case ConversionSpecifier::iArg:
 1082   case ConversionSpecifier::oArg:
 1083   case ConversionSpecifier::OArg:
 1084   case ConversionSpecifier::uArg:
 1085   case ConversionSpecifier::UArg:
 1086   case ConversionSpecifier::xArg:
 1087   case ConversionSpecifier::XArg:
 1088   case ConversionSpecifier::aArg:
 1089   case ConversionSpecifier::AArg:
 1090   case ConversionSpecifier::eArg:
 1091   case ConversionSpecifier::EArg:
 1092   case ConversionSpecifier::fArg:
 1093   case ConversionSpecifier::FArg:
 1094   case ConversionSpecifier::gArg:
 1095   case ConversionSpecifier::GArg:
 1096   case ConversionSpecifier::sArg:
 1097   case ConversionSpecifier::FreeBSDrArg:
 1098   case ConversionSpecifier::FreeBSDyArg:
 1099   case ConversionSpecifier::PArg:
 1112   case ConversionSpecifier::nArg:
tools/clang/lib/AST/ScanfFormatString.cpp
  163     case '%': k = ConversionSpecifier::PercentArg;   break;
  164     case 'A': k = ConversionSpecifier::AArg; break;
  165     case 'E': k = ConversionSpecifier::EArg; break;
  166     case 'F': k = ConversionSpecifier::FArg; break;
  167     case 'G': k = ConversionSpecifier::GArg; break;
  168     case 'X': k = ConversionSpecifier::XArg; break;
  169     case 'a': k = ConversionSpecifier::aArg; break;
  170     case 'd': k = ConversionSpecifier::dArg; break;
  171     case 'e': k = ConversionSpecifier::eArg; break;
  172     case 'f': k = ConversionSpecifier::fArg; break;
  173     case 'g': k = ConversionSpecifier::gArg; break;
  174     case 'i': k = ConversionSpecifier::iArg; break;
  175     case 'n': k = ConversionSpecifier::nArg; break;
  176     case 'c': k = ConversionSpecifier::cArg; break;
  177     case 'C': k = ConversionSpecifier::CArg; break;
  178     case 'S': k = ConversionSpecifier::SArg; break;
  179     case '[': k = ConversionSpecifier::ScanListArg; break;
  180     case 'u': k = ConversionSpecifier::uArg; break;
  181     case 'x': k = ConversionSpecifier::xArg; break;
  182     case 'o': k = ConversionSpecifier::oArg; break;
  183     case 's': k = ConversionSpecifier::sArg; break;
  184     case 'p': k = ConversionSpecifier::pArg; break;
  189         k = ConversionSpecifier::DArg;
  193         k = ConversionSpecifier::OArg;
  197         k = ConversionSpecifier::UArg;
  233     case ConversionSpecifier::dArg:
  234     case ConversionSpecifier::DArg:
  235     case ConversionSpecifier::iArg:
  270     case ConversionSpecifier::oArg:
  271     case ConversionSpecifier::OArg:
  272     case ConversionSpecifier::uArg:
  273     case ConversionSpecifier::UArg:
  274     case ConversionSpecifier::xArg:
  275     case ConversionSpecifier::XArg:
  311     case ConversionSpecifier::aArg:
  312     case ConversionSpecifier::AArg:
  313     case ConversionSpecifier::eArg:
  314     case ConversionSpecifier::EArg:
  315     case ConversionSpecifier::fArg:
  316     case ConversionSpecifier::FArg:
  317     case ConversionSpecifier::gArg:
  318     case ConversionSpecifier::GArg:
  331     case ConversionSpecifier::cArg:
  332     case ConversionSpecifier::sArg:
  333     case ConversionSpecifier::ScanListArg:
  350     case ConversionSpecifier::CArg:
  351     case ConversionSpecifier::SArg:
  369     case ConversionSpecifier::pArg:
  373     case ConversionSpecifier::nArg:
  417   if (CS.getKind() == ConversionSpecifier::nArg)
  439     CS.setKind(ConversionSpecifier::sArg);
  515     CS.setKind(ConversionSpecifier::fArg);
  517     CS.setKind(ConversionSpecifier::dArg);
  519     CS.setKind(ConversionSpecifier::uArg);
tools/clang/lib/Sema/SemaChecking.cpp
 7263                            const analyze_format_string::ConversionSpecifier &CS,
 7272                     const analyze_format_string::ConversionSpecifier &CS,
 7310                     const analyze_format_string::ConversionSpecifier &CS,
 7352     const analyze_format_string::ConversionSpecifier &CS,
 7415     const analyze_format_string::ConversionSpecifier &CS,
 7420   Optional<ConversionSpecifier> FixedCS = CS.getStandardSpecifier();
 7592   const analyze_format_string::ConversionSpecifier &CS,
 8017   if (CS.getKind() == ConversionSpecifier::FreeBSDbArg ||
 8018       CS.getKind() == ConversionSpecifier::FreeBSDDArg) {
 8029       (CS.getKind() == ConversionSpecifier::FreeBSDbArg) ?
 8061   if (FSType != Sema::FST_OSLog && CS.getKind() == ConversionSpecifier::PArg) {
 8067   if (FSType == Sema::FST_OSLog && CS.getKind() == ConversionSpecifier::nArg) {
 8078       (CS.getKind() == ConversionSpecifier::PArg ||
 8079        CS.getKind() == ConversionSpecifier::sArg ||
 8080        CS.getKind() == ConversionSpecifier::ObjCObjArg)) {
 8116   if (CS.getKind() == ConversionSpecifier::PArg &&
 8312   if (FS.getConversionSpecifier().getKind() == ConversionSpecifier::cArg &&
 8375       FS.getConversionSpecifier().getKind() == ConversionSpecifier::CArg) {
usr/include/c++/7.4.0/bits/move.h
   72     constexpr _Tp&&
   73     forward(typename std::remove_reference<_Tp>::type& __t) noexcept
   83     constexpr _Tp&&
   84     forward(typename std::remove_reference<_Tp>::type&& __t) noexcept
   98     move(_Tp&& __t) noexcept
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  326     : public __is_integral_helper<typename remove_cv<_Tp>::type>::type
  354     : public __is_floating_point_helper<typename remove_cv<_Tp>::type>::type
  381     : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
  567     : public __is_null_pointer_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  602                           is_void<_Tp>>>::type
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  631     : public __is_member_pointer_helper<typename remove_cv<_Tp>::type>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  798       typedef decltype(__test<_Tp>(0)) type;
  811                remove_all_extents<_Tp>::type>::type
  825     : public __is_destructible_safe<_Tp>::type
  984       typedef decltype(__test<_Tp, _Arg>(0)) type;
  989     : public __and_<is_destructible<_Tp>,
  990                     __is_direct_constructible_impl<_Tp, _Arg>>
 1072 			 __is_direct_constructible_ref_cast<_Tp, _Arg>,
 1073 			 __is_direct_constructible_new_safe<_Tp, _Arg>
 1079     : public __is_direct_constructible_new<_Tp, _Arg>::type
 1119     : public __is_direct_constructible<_Tp, _Arg>
 1130     : public __is_constructible_impl<_Tp, _Args...>::type
 1142     : public is_constructible<_Tp, const _Tp&>
 1142     : public is_constructible<_Tp, const _Tp&>
 1148     : public __is_copy_constructible_impl<_Tp>
 1160     : public is_constructible<_Tp, _Tp&&>
 1160     : public is_constructible<_Tp, _Tp&&>
 1166     : public __is_move_constructible_impl<_Tp>
 1554     { typedef _Tp     type; };
 1558     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1629     { typedef _Tp   type; };
 1633     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1955     { typedef _Tp     type; };