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

Declarations

tools/clang/include/clang/StaticAnalyzer/Core/IssueHash.h
   16 class FullSourceLoc;

References

tools/clang/include/clang/AST/ASTContext.h
  735   FullSourceLoc getFullLoc(SourceLocation Loc) const {
tools/clang/include/clang/Analysis/PathDiagnostic.h
  164   FullSourceLoc Loc;
  170   FullSourceLoc genLocation(
  301   FullSourceLoc asLocation() const {
tools/clang/include/clang/Basic/Diagnostic.h
 1441   FullSourceLoc Loc;
 1452                    StringRef Message, FullSourceLoc Loc,
 1461   const FullSourceLoc &getLocation() const { return Loc; }
 1464   void setLocation(FullSourceLoc Loc) { this->Loc = Loc; }
tools/clang/include/clang/Basic/PlistSupport.h
  111   FullSourceLoc Loc(SM.getExpansionLoc(L), const_cast<SourceManager &>(SM));
tools/clang/include/clang/Basic/SourceLocation.h
  369   FullSourceLoc getExpansionLoc() const;
  370   FullSourceLoc getSpellingLoc() const;
  371   FullSourceLoc getFileLoc() const;
  373   bool isMacroArgExpansion(FullSourceLoc *StartLoc = nullptr) const;
  374   FullSourceLoc getImmediateMacroCallerLoc() const;
  375   std::pair<FullSourceLoc, StringRef> getModuleImportLoc() const;
  411   bool isBeforeInTranslationUnitThan(FullSourceLoc Loc) const {
  419     bool operator()(const FullSourceLoc& lhs, const FullSourceLoc& rhs) const {
  419     bool operator()(const FullSourceLoc& lhs, const FullSourceLoc& rhs) const {
  430   operator==(const FullSourceLoc &LHS, const FullSourceLoc &RHS) {
  430   operator==(const FullSourceLoc &LHS, const FullSourceLoc &RHS) {
  436   operator!=(const FullSourceLoc &LHS, const FullSourceLoc &RHS) {
  436   operator!=(const FullSourceLoc &LHS, const FullSourceLoc &RHS) {
tools/clang/include/clang/Basic/SourceManager.h
  582 using ModuleBuildStack = ArrayRef<std::pair<std::string, FullSourceLoc>>;
  756   SmallVector<std::pair<std::string, FullSourceLoc>, 2> StoredModuleBuildStack;
  798   void pushModuleBuildStack(StringRef moduleName, FullSourceLoc importLoc) {
tools/clang/include/clang/Frontend/DiagnosticRenderer.h
   76   virtual void emitDiagnosticMessage(FullSourceLoc Loc, PresumedLoc PLoc,
   82   virtual void emitDiagnosticLoc(FullSourceLoc Loc, PresumedLoc PLoc,
   86   virtual void emitCodeContext(FullSourceLoc Loc,
   91   virtual void emitIncludeLocation(FullSourceLoc Loc, PresumedLoc PLoc) = 0;
   92   virtual void emitImportLocation(FullSourceLoc Loc, PresumedLoc PLoc,
   94   virtual void emitBuildingModuleLocation(FullSourceLoc Loc, PresumedLoc PLoc,
  104   void emitIncludeStack(FullSourceLoc Loc, PresumedLoc PLoc,
  106   void emitIncludeStackRecursively(FullSourceLoc Loc);
  107   void emitImportStack(FullSourceLoc Loc);
  108   void emitImportStackRecursively(FullSourceLoc Loc, StringRef ModuleName);
  110   void emitCaret(FullSourceLoc Loc, DiagnosticsEngine::Level Level,
  112   void emitSingleMacroExpansion(FullSourceLoc Loc,
  115   void emitMacroExpansions(FullSourceLoc Loc, DiagnosticsEngine::Level Level,
  132   void emitDiagnostic(FullSourceLoc Loc, DiagnosticsEngine::Level Level,
  150   void emitIncludeLocation(FullSourceLoc Loc, PresumedLoc PLoc) override;
  152   void emitImportLocation(FullSourceLoc Loc, PresumedLoc PLoc,
  155   void emitBuildingModuleLocation(FullSourceLoc Loc, PresumedLoc PLoc,
  158   virtual void emitNote(FullSourceLoc Loc, StringRef Message) = 0;
tools/clang/include/clang/Frontend/LogDiagnosticPrinter.h
   57   FullSourceLoc LastLoc;
tools/clang/include/clang/Frontend/TextDiagnostic.h
   77   void emitDiagnosticMessage(FullSourceLoc Loc, PresumedLoc PLoc,
   82   void emitDiagnosticLoc(FullSourceLoc Loc, PresumedLoc PLoc,
   86   void emitCodeContext(FullSourceLoc Loc, DiagnosticsEngine::Level Level,
   92   void emitIncludeLocation(FullSourceLoc Loc, PresumedLoc PLoc) override;
   94   void emitImportLocation(FullSourceLoc Loc, PresumedLoc PLoc,
   97   void emitBuildingModuleLocation(FullSourceLoc Loc, PresumedLoc PLoc,
  103   void emitSnippetAndCaret(FullSourceLoc Loc, DiagnosticsEngine::Level Level,
tools/clang/include/clang/StaticAnalyzer/Core/IssueHash.h
   38                                    FullSourceLoc &IssueLoc,
   45 std::string GetIssueString(const SourceManager &SM, FullSourceLoc &IssueLoc,
tools/clang/lib/ARCMigrate/ARCMT.cpp
   36     FullSourceLoc diagLoc = I->getLocation();
   65     FullSourceLoc diagLoc = I->getLocation();
tools/clang/lib/ARCMigrate/TransformActions.cpp
   65     FullSourceLoc Begin, End;
  106   typedef std::map<FullSourceLoc, TextsVec, FullSourceLoc::BeforeThanCompare>
  106   typedef std::map<FullSourceLoc, TextsVec, FullSourceLoc::BeforeThanCompare>
tools/clang/lib/Analysis/PathDiagnostic.cpp
  170         FullSourceLoc L = piece->getLocation().asLocation().getExpansionLoc();
  233   FullSourceLoc XSL = X.getStartLocation().asLocation();
  234   FullSourceLoc YSL = Y.getStartLocation().asLocation();
  237   FullSourceLoc XEL = X.getEndLocation().asLocation();
  238   FullSourceLoc YEL = Y.getEndLocation().asLocation();
  251   FullSourceLoc X_CEL = X.callEnter.asLocation();
  252   FullSourceLoc Y_CEL = Y.callEnter.asLocation();
  255   FullSourceLoc X_CEWL = X.callEnterWithin.asLocation();
  256   FullSourceLoc Y_CEWL = Y.callEnterWithin.asLocation();
  259   FullSourceLoc X_CRL = X.callReturn.asLocation();
  260   FullSourceLoc Y_CRL = Y.callReturn.asLocation();
  271   FullSourceLoc XL = X.getLocation().asLocation();
  272   FullSourceLoc YL = Y.getLocation().asLocation();
  328 static bool compareCrossTUSourceLocs(FullSourceLoc XL, FullSourceLoc YL) {
  328 static bool compareCrossTUSourceLocs(FullSourceLoc XL, FullSourceLoc YL) {
  347   FullSourceLoc XL = X.getLocation().asLocation();
  348   FullSourceLoc YL = Y.getLocation().asLocation();
  722   FullSourceLoc L = PDL.asLocation();
  726 FullSourceLoc
tools/clang/lib/Basic/Diagnostic.cpp
 1102                                    StringRef Message, FullSourceLoc Loc,
tools/clang/lib/Basic/SourceLocation.cpp
  145 FullSourceLoc FullSourceLoc::getExpansionLoc() const {
  150 FullSourceLoc FullSourceLoc::getSpellingLoc() const {
  155 FullSourceLoc FullSourceLoc::getFileLoc() const {
  167 bool FullSourceLoc::isMacroArgExpansion(FullSourceLoc *StartLoc) const {
  172 FullSourceLoc FullSourceLoc::getImmediateMacroCallerLoc() const {
  177 std::pair<FullSourceLoc, StringRef> FullSourceLoc::getModuleImportLoc() const {
tools/clang/lib/CodeGen/CodeGenAction.cpp
  350     const FullSourceLoc
  397 static FullSourceLoc ConvertBackendLocation(const llvm::SMDiagnostic &D,
  439   FullSourceLoc Loc;
  536     FullSourceLoc Loc;
  561 const FullSourceLoc BackendConsumer::getBestLocationFromDebugLoc(
  586   FullSourceLoc Loc(DILoc, SourceMgr);
  610   FullSourceLoc Loc =
  629   FullSourceLoc Loc =
  652   FullSourceLoc Loc =
  835   FullSourceLoc Loc;
tools/clang/lib/Frontend/ASTUnit.cpp
 1088       FullSourceLoc Loc(SD.getLocation(), SM);
 2384     FullSourceLoc Loc(L, SrcMgr);
tools/clang/lib/Frontend/DiagnosticRenderer.cpp
   87 void DiagnosticRenderer::emitDiagnostic(FullSourceLoc Loc,
  115     FullSourceLoc UnexpandedLoc = Loc;
  165 void DiagnosticRenderer::emitIncludeStack(FullSourceLoc Loc, PresumedLoc PLoc,
  167   FullSourceLoc IncludeLoc =
  190 void DiagnosticRenderer::emitIncludeStackRecursively(FullSourceLoc Loc) {
  203   std::pair<FullSourceLoc, StringRef> Imported = Loc.getModuleImportLoc();
  219 void DiagnosticRenderer::emitImportStack(FullSourceLoc Loc) {
  225   std::pair<FullSourceLoc, StringRef> NextImportLoc = Loc.getModuleImportLoc();
  231 void DiagnosticRenderer::emitImportStackRecursively(FullSourceLoc Loc,
  240   std::pair<FullSourceLoc, StringRef> NextImportLoc = Loc.getModuleImportLoc();
  357 mapDiagnosticRanges(FullSourceLoc CaretLoc, ArrayRef<CharSourceRange> Ranges,
  417 void DiagnosticRenderer::emitCaret(FullSourceLoc Loc,
  429     FullSourceLoc Loc, DiagnosticsEngine::Level Level,
  433   FullSourceLoc SpellingLoc = Loc.getSpellingLoc();
  483 static bool checkRangesForMacroArgExpansion(FullSourceLoc Loc,
  500   FullSourceLoc ArgumentLoc;
  525 void DiagnosticRenderer::emitMacroExpansions(FullSourceLoc Loc,
  592 void DiagnosticNoteRenderer::emitIncludeLocation(FullSourceLoc Loc,
  602 void DiagnosticNoteRenderer::emitImportLocation(FullSourceLoc Loc,
  616 void DiagnosticNoteRenderer::emitBuildingModuleLocation(FullSourceLoc Loc,
tools/clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
   67   void emitDiagnosticMessage(FullSourceLoc Loc, PresumedLoc PLoc,
   72   void emitDiagnosticLoc(FullSourceLoc Loc, PresumedLoc PLoc,
   76   void emitNote(FullSourceLoc Loc, StringRef Message) override;
   78   void emitCodeContext(FullSourceLoc Loc, DiagnosticsEngine::Level Level,
  190   void EmitDiagnosticMessage(FullSourceLoc Loc, PresumedLoc PLoc,
  215   void AddLocToRecord(FullSourceLoc Loc, PresumedLoc PLoc,
  219   void AddLocToRecord(FullSourceLoc Loc, RecordDataImpl &Record,
  342 void SDiagsWriter::AddLocToRecord(FullSourceLoc Loc, PresumedLoc PLoc,
  627 void SDiagsWriter::EmitDiagnosticMessage(FullSourceLoc Loc, PresumedLoc PLoc,
  657     FullSourceLoc Loc, PresumedLoc PLoc, DiagnosticsEngine::Level Level,
  713 void SDiagsRenderer::emitCodeContext(FullSourceLoc Loc,
  720 void SDiagsRenderer::emitNote(FullSourceLoc Loc, StringRef Message) {
tools/clang/lib/Frontend/TextDiagnostic.cpp
  674     FullSourceLoc Loc, PresumedLoc PLoc, DiagnosticsEngine::Level Level,
  806 void TextDiagnostic::emitDiagnosticLoc(FullSourceLoc Loc, PresumedLoc PLoc,
  893       FullSourceLoc BF(B, SM), EF(E, SM);
  907 void TextDiagnostic::emitIncludeLocation(FullSourceLoc Loc, PresumedLoc PLoc) {
  915 void TextDiagnostic::emitImportLocation(FullSourceLoc Loc, PresumedLoc PLoc,
  924 void TextDiagnostic::emitBuildingModuleLocation(FullSourceLoc Loc,
 1139     FullSourceLoc Loc, DiagnosticsEngine::Level Level,
tools/clang/lib/Lex/LiteralSupport.cpp
   59                                            FullSourceLoc TokLoc,
   78                               const LangOptions &Features, FullSourceLoc TokLoc,
   93                                   FullSourceLoc Loc, unsigned CharWidth,
  276                              FullSourceLoc Loc, DiagnosticsEngine *Diags,
  354   FullSourceLoc Loc;
  383                             FullSourceLoc Loc, unsigned CharByteWidth,
 1778     FullSourceLoc SourceLoc(Tok.getLocation(), SM);
tools/clang/lib/Sema/SemaType.cpp
 3270     FullSourceLoc Comma(D.getCommaLoc(), S.SourceMgr);
 3271     FullSourceLoc Name(D.getIdentifierLoc(), S.SourceMgr);
tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
  306   FullSourceLoc FL(CE->getArg(0)->getBeginLoc(), SM);
tools/clang/lib/StaticAnalyzer/Core/BugReporter.cpp
 1958     FullSourceLoc Loc = P->getLocation().asLocation().getExpansionLoc();
 2619     const FullSourceLoc Loc = piece->getLocation().asLocation();
tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
 2748   FullSourceLoc Loc = BR.getLocation().asLocation();
tools/clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
  203           FullSourceLoc L(
  206           FullSourceLoc FunL(SMgr.getExpansionLoc(Body->getBeginLoc()), SMgr);
  541     FullSourceLoc L(SMgr.getExpansionLoc(UPDLoc.isValid()
  741   FullSourceLoc Pos = P.getLocation().asLocation();
  884       FullSourceLoc L = MP->getLocation().asLocation().getExpansionLoc();
tools/clang/lib/StaticAnalyzer/Core/IssueHash.cpp
  134 static std::string NormalizeLine(const SourceManager &SM, FullSourceLoc &L,
  183                                   FullSourceLoc &IssueLoc,
  197                                     FullSourceLoc &IssueLoc,
tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
  326   FullSourceLoc L = P.getLocation().asLocation();
  402     FullSourceLoc L = P->getLocation().asLocation();
  435   FullSourceLoc L = P.getLocation().asLocation();
  466   FullSourceLoc L = P.getLocation().asLocation();
  687     FullSourceLoc L(SM.getExpansionLoc(UPDLoc.isValid()
  736             FullSourceLoc UFunL(
  746             FullSourceLoc FunL(SM.getExpansionLoc(Body->getBeginLoc()), SM);
tools/clang/lib/Tooling/Refactoring/AtomicChange.cpp
  198   const FullSourceLoc FullKeyPosition(KeyPosition, SM);
tools/clang/lib/Tooling/Refactoring/Rename/RenamingAction.cpp
  212         FullSourceLoc FullLoc(Occurrence.getNameRanges()[0].getBegin(),
tools/clang/lib/Tooling/Refactoring/Rename/USRFindingAction.cpp
  223         FullSourceLoc FullLoc(Point, SourceMgr);
tools/clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp
   46   const clang::FullSourceLoc FullLoc(Loc, SM);
tools/clang/tools/extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
   42   void emitDiagnosticMessage(FullSourceLoc Loc, PresumedLoc PLoc,
   66   void emitDiagnosticLoc(FullSourceLoc Loc, PresumedLoc PLoc,
   70   void emitCodeContext(FullSourceLoc Loc, DiagnosticsEngine::Level Level,
   98   void emitIncludeLocation(FullSourceLoc Loc, PresumedLoc PLoc) override {}
  100   void emitImportLocation(FullSourceLoc Loc, PresumedLoc PLoc,
  103   void emitBuildingModuleLocation(FullSourceLoc Loc, PresumedLoc PLoc,
  436     FullSourceLoc Loc;
tools/clang/tools/libclang/CIndexDiagnostic.cpp
  112   void emitDiagnosticMessage(FullSourceLoc Loc, PresumedLoc PLoc,
  128   void emitDiagnosticLoc(FullSourceLoc Loc, PresumedLoc PLoc,
  132   void emitCodeContext(FullSourceLoc Loc, DiagnosticsEngine::Level Level,
  136   void emitNote(FullSourceLoc Loc, StringRef Message) override {
tools/clang/unittests/AST/ASTImporterTest.cpp
 1727 static void CompareSourceLocs(FullSourceLoc Loc1, FullSourceLoc Loc2) {
 1727 static void CompareSourceLocs(FullSourceLoc Loc1, FullSourceLoc Loc2) {
tools/clang/unittests/Tooling/TestVisitor.h
  164     const FullSourceLoc FullLocation = this->Context->getFullLoc(Location);
  191     bool Matches(StringRef Name, FullSourceLoc const &Location) const {
  195     bool PartiallyMatches(StringRef Name, FullSourceLoc const &Location) const {
  203     bool MatchesLocation(FullSourceLoc const &Location) const {
  222     void UpdateFor(StringRef Name, FullSourceLoc Location, SourceManager &SM) {
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/bits/stl_map.h
  102       typedef _Key					key_type;
  104       typedef std::pair<const _Key, _Tp>		value_type;
usr/include/c++/7.4.0/bits/stl_pair.h
  100 	return __and_<is_constructible<_T1, const _U1&>,
  100 	return __and_<is_constructible<_T1, const _U1&>,
  101 		      is_constructible<_T2, const _U2&>>::value;
  101 		      is_constructible<_T2, const _U2&>>::value;
  107 	return __and_<is_convertible<const _U1&, _T1>,
  107 	return __and_<is_convertible<const _U1&, _T1>,
  108 		      is_convertible<const _U2&, _T2>>::value;
  108 		      is_convertible<const _U2&, _T2>>::value;
  114 	return __and_<is_constructible<_T1, _U1&&>,
  114 	return __and_<is_constructible<_T1, _U1&&>,
  115 		      is_constructible<_T2, _U2&&>>::value;
  115 		      is_constructible<_T2, _U2&&>>::value;
  121 	return __and_<is_convertible<_U1&&, _T1>,
  121 	return __and_<is_convertible<_U1&&, _T1>,
  122 		      is_convertible<_U2&&, _T2>>::value;
  122 		      is_convertible<_U2&&, _T2>>::value;
  128 	using __do_converts = __and_<is_convertible<const _U1&, _T1>,
  128 	using __do_converts = __and_<is_convertible<const _U1&, _T1>,
  129 				  is_convertible<_U2&&, _T2>>;
  129 				  is_convertible<_U2&&, _T2>>;
  133 	return __and_<is_constructible<_T1, const _U1&>,
  133 	return __and_<is_constructible<_T1, const _U1&>,
  134 		      is_constructible<_T2, _U2&&>,
  134 		      is_constructible<_T2, _U2&&>,
  142 	using __do_converts = __and_<is_convertible<_U1&&, _T1>,
  142 	using __do_converts = __and_<is_convertible<_U1&&, _T1>,
  143 				  is_convertible<const _U2&, _T2>>;
  143 				  is_convertible<const _U2&, _T2>>;
  147 	return __and_<is_constructible<_T1, _U1&&>,
  147 	return __and_<is_constructible<_T1, _U1&&>,
  148 		      is_constructible<_T2, const _U2&&>,
  148 		      is_constructible<_T2, const _U2&&>,
  209     : private __pair_base<_T1, _T2>
  209     : private __pair_base<_T1, _T2>
  211       typedef _T1 first_type;    /// @c first_type is the first bound type
  212       typedef _T2 second_type;   /// @c second_type is the second bound type
  214       _T1 first;                 /// @c first is a copy of the first object
  215       _T2 second;                /// @c second is a copy of the second object
  252       using _PCCP = _PCC<true, _T1, _T2>;
  252       using _PCCP = _PCC<true, _T1, _T2>;
  260       constexpr pair(const _T1& __a, const _T2& __b)
  260       constexpr pair(const _T1& __a, const _T2& __b)
  269       explicit constexpr pair(const _T1& __a, const _T2& __b)
  269       explicit constexpr pair(const _T1& __a, const _T2& __b)
  283 			    _T1, _T2>;
  283 			    _T1, _T2>;
  311        constexpr pair(_U1&& __x, const _T2& __y)
  311        constexpr pair(_U1&& __x, const _T2& __y)
  318        explicit constexpr pair(_U1&& __x, const _T2& __y)
  325        constexpr pair(const _T1& __x, _U2&& __y)
  325        constexpr pair(const _T1& __x, _U2&& __y)
  332        explicit pair(const _T1& __x, _U2&& __y)
  341 	constexpr pair(_U1&& __x, _U2&& __y)
  341 	constexpr pair(_U1&& __x, _U2&& __y)
  342 	: first(std::forward<_U1>(__x)), second(std::forward<_U2>(__y)) { }
  379 		__and_<is_copy_assignable<_T1>,
  380 		       is_copy_assignable<_T2>>::value,
  390 		__and_<is_move_assignable<_T1>,
  391 		       is_move_assignable<_T2>>::value,
  403 				is_assignable<_T2&, const _U2&>>::value,
  403 				is_assignable<_T2&, const _U2&>>::value,
  405 	operator=(const pair<_U1, _U2>& __p)
  414 				is_assignable<_T2&, _U2&&>>::value,
  414 				is_assignable<_T2&, _U2&&>>::value,
  416 	operator=(pair<_U1, _U2>&& __p)
  522     constexpr pair<typename __decay_and_strip<_T1>::__type,
  524     make_pair(_T1&& __x, _T2&& __y)
  524     make_pair(_T1&& __x, _T2&& __y)
  526       typedef typename __decay_and_strip<_T1>::__type __ds_type1;
  529       return __pair_type(std::forward<_T1>(__x), std::forward<_T2>(__y));
usr/include/c++/7.4.0/bits/stl_tree.h
  563       typedef _Key 				key_type;
  758       static const _Key&
  782       static const _Key&
usr/include/c++/7.4.0/tuple
  125       constexpr _Head_base(const _Head& __h)
  132         constexpr _Head_base(_UHead&& __h)
  133 	: _M_head_impl(std::forward<_UHead>(__h)) { }
  159       static constexpr _Head&
  162       static constexpr const _Head&
  350       static constexpr _Head&
  353       static constexpr const _Head&
  360       constexpr _Tuple_impl(const _Head& __head)
  365         constexpr _Tuple_impl(_UHead&& __head)
  366 	: _Base(std::forward<_UHead>(__head)) { }
  390 		    const _Head& __head)
  473       return __and_<is_constructible<_Elements, const _UElements&>...>::value;
  479       return __and_<is_convertible<const _UElements&, _Elements>...>::value;
  485       return __and_<is_constructible<_Elements, _UElements&&>...>::value;
  491       return __and_<is_convertible<_UElements&&, _Elements>...>::value;
  510 			       typename remove_reference<_UElements...>::type
  608         constexpr tuple(const _Elements&... __elements)
  619       explicit constexpr tuple(const _Elements&... __elements)
  646         constexpr tuple(_UElements&&... __elements)
  647         : _Inherited(std::forward<_UElements>(__elements)...) { }
  730 	      const _Elements&... __elements)
  741                        const _Elements&... __elements)
 1302     constexpr _Head&
 1307     constexpr const _Head&
 1313     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
 1319     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
 1325     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
 1458     constexpr tuple<_Elements&&...>
 1459     forward_as_tuple(_Elements&&... __args) noexcept
 1460     { return tuple<_Elements&&...>(std::forward<_Elements>(__args)...); }
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
 1246     : public is_nothrow_constructible<_Tp, _Tp&&>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1292     : public __is_copy_assignable_impl<_Tp>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1310     : public __is_move_assignable_impl<_Tp>
 1526 	static void __test_aux(_To1);
 1538       typedef decltype(__test<_From, _To>(0)) type;
 1545     : public __is_convertible_helper<_From, _To>::type
 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; };
 1637     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1955     { typedef _Tp     type; };
 2104     { typedef typename remove_cv<_Up>::type __type; };
 2118       typedef typename remove_reference<_Tp>::type __remove_type;
 2131       typedef _Tp __type;
 2144 	typename decay<_Tp>::type>::__type __type;