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

Declarations

gen/tools/clang/include/clang/AST/StmtNodes.inc
 1083 MATERIALIZETEMPORARYEXPR(MaterializeTemporaryExpr, Expr)
tools/clang/include/clang/AST/ASTContext.h
  101 class MaterializeTemporaryExpr;
tools/clang/include/clang/AST/Expr.h
   49   class MaterializeTemporaryExpr;
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
   57 class MaterializeTemporaryExpr;

References

include/llvm/ADT/STLExtras.h
   75       typename std::add_pointer<typename std::add_const<T>::type>::type;
include/llvm/Support/Casting.h
   58     return To::classof(&Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  142   return isa_impl_wrap<X, const Y,
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
  368   return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
  368   return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
include/llvm/Support/PointerLikeTypeTraits.h
   56   static inline void *getAsVoidPointer(T *P) { return P; }
   57   static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); }
   59   enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value };
   91   typedef PointerLikeTypeTraits<T *> NonConst;
   93   static inline const void *getAsVoidPointer(const T *P) {
   96   static inline const T *getFromVoidPointer(const void *P) {
tools/clang/include/clang/AST/ASTContext.h
  278   llvm::DenseMap<const MaterializeTemporaryExpr *, APValue *>
 2832   APValue *getMaterializedTemporaryValue(const MaterializeTemporaryExpr *E,
tools/clang/include/clang/AST/ASTTypeTraits.h
   65     return ASTNodeKind(KindToKindId<T>::Id);
  234   static DynTypedNode create(const T &Node) {
  235     return BaseConverter<T>::create(Node);
  259   const T &getUnchecked() const {
  260     return BaseConverter<T>::getUnchecked(NodeKind, Storage.buffer);
  394     static const T *get(ASTNodeKind NodeKind, const char Storage[]) {
  399     static const T &getUnchecked(ASTNodeKind NodeKind, const char Storage[]) {
  401       return *cast<T>(static_cast<const BaseT *>(
  474     : public DynCastPtrConverter<T, Stmt> {};
tools/clang/include/clang/AST/JSONNodeDumper.h
  282   void VisitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *MTE);
tools/clang/include/clang/AST/TextNodeDumper.h
  260   void VisitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *Node);
tools/clang/include/clang/ASTMatchers/ASTMatchers.h
 1719                                                    MaterializeTemporaryExpr>
 6622       if (const auto *MaterializeTemp =
 6623               dyn_cast<MaterializeTemporaryExpr>(CtorExpr->getArg(0))) {
tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h
  302   virtual bool matches(const T &Node,
  309     return matches(DynNode.getUnchecked<T>(), Finder, Builder);
  345   DynTypedMatcher(MatcherInterface<T> *Implementation)
  346       : SupportedKind(ast_type_traits::ASTNodeKind::getFromNodeKind<T>()),
  436     return canConvertTo(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
  445   template <typename T> Matcher<T> convertTo() const {
  447     return unconditionalConvertTo<T>();
  479 class WrapperMatcherInterface : public MatcherInterface<T> {
  499   explicit Matcher(MatcherInterface<T> *Implementation)
  507           typename std::enable_if<std::is_base_of<From, T>::value &&
  508                                !std::is_same<From, T>::value>::type * = nullptr)
  520             std::is_same<T, QualType>::value &&
  529     static_assert(std::is_base_of<To, T>::value, "Invalid dynCast call.");
  534   bool matches(const T &Node,
  581     return Other.dynCastTo(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
  994   bool matchesChildOf(const T &Node, const DynTypedMatcher &Matcher,
  997     static_assert(std::is_base_of<Decl, T>::value ||
  998                   std::is_base_of<Stmt, T>::value ||
  999                   std::is_base_of<NestedNameSpecifier, T>::value ||
 1000                   std::is_base_of<NestedNameSpecifierLoc, T>::value ||
 1001                   std::is_base_of<TypeLoc, T>::value ||
 1002                   std::is_base_of<QualType, T>::value,
 1026   bool matchesAncestorOf(const T &Node,
 1030     static_assert(std::is_base_of<Decl, T>::value ||
 1031                       std::is_base_of<NestedNameSpecifierLoc, T>::value ||
 1032                       std::is_base_of<Stmt, T>::value ||
 1033                       std::is_base_of<TypeLoc, T>::value,
 1146     template <typename To> operator Matcher<To>() const {
 1243   operator Matcher<T>() const {
 1245                ast_type_traits::ASTNodeKind::getFromNodeKind<T>())
 1246         .template unconditionalConvertTo<T>();
 1255 class BindableMatcher : public Matcher<T> {
 1257   explicit BindableMatcher(const Matcher<T> &M) : Matcher<T>(M) {}
 1258   explicit BindableMatcher(MatcherInterface<T> *Implementation)
 1265   Matcher<T> bind(StringRef ID) const {
 1285 class HasMatcher : public WrapperMatcherInterface<T> {
 1290   bool matches(const T &Node, ASTMatchFinder *Finder,
 1335   template <typename T> operator Matcher<T>() const {
 1337                Op, ast_type_traits::ASTNodeKind::getFromNodeKind<T>(),
 1338                getMatchers<T>(std::index_sequence_for<Ps...>()))
 1339         .template unconditionalConvertTo<T>();
 1370 inline Matcher<T> DynTypedMatcher::unconditionalConvertTo() const {
 1376 BindableMatcher<T> makeAllOfComposite(
 1377     ArrayRef<const Matcher<T> *> InnerMatchers) {
 1388   using PI = llvm::pointee_iterator<const Matcher<T> *const *>;
 1395           ast_type_traits::ASTNodeKind::getFromNodeKind<T>(),
 1397           .template unconditionalConvertTo<T>());
 1408     ArrayRef<const Matcher<InnerT> *> InnerMatchers) {
 1438 class HasParentMatcher : public WrapperMatcherInterface<T> {
 1446   bool matches(const T &Node, ASTMatchFinder *Finder,
 1557     : public VariadicFunction<BindableMatcher<SourceT>, Matcher<TargetT>,
 1558                               makeDynCastAllOfComposite<SourceT, TargetT>> {
tools/clang/include/clang/ASTMatchers/Dynamic/VariantValue.h
  199   ast_matchers::internal::Matcher<T> getTypedMatcher() const {
  202         ->template convertTo<T>();
  227       : MatcherOps(ast_type_traits::ASTNodeKind::getFromNodeKind<T>()) {}
  228   typedef ast_matchers::internal::Matcher<T> MatcherT;
  232     return DynTypedMatcher(Matcher.convertTo<T>());
tools/clang/include/clang/Analysis/ConstructionContext.h
   96   ConstructionContextItem(const MaterializeTemporaryExpr *MTE)
  275       BumpVectorContext &C, const MaterializeTemporaryExpr *MTE,
  462   const MaterializeTemporaryExpr *MTE;
  467       const MaterializeTemporaryExpr *MTE)
  487   const MaterializeTemporaryExpr *getMaterializedTemporaryExpr() const {
  505       const CXXBindTemporaryExpr *BTE, const MaterializeTemporaryExpr *MTE)
  531       const CXXBindTemporaryExpr *BTE, const MaterializeTemporaryExpr *MTE,
tools/clang/include/clang/Sema/Sema.h
 5766   MaterializeTemporaryExpr *
tools/clang/include/clang/StaticAnalyzer/Core/Checker.h
  104     ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C);
  108     return isa<STMT>(S);
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
  546   void CreateCXXTemporaryObject(const MaterializeTemporaryExpr *ME,
tools/clang/lib/AST/ASTContext.cpp
  878   for (std::pair<const MaterializeTemporaryExpr *, APValue *> &MTVPair :
10328 ASTContext::getMaterializedTemporaryValue(const MaterializeTemporaryExpr *E,
tools/clang/lib/AST/ASTImporter.cpp
  584     ExpectedStmt VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *E);
 6993 ASTNodeImporter::VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *E) {
 7004   auto *ToMTE =  new (Importer.getToContext()) MaterializeTemporaryExpr(
 7004   auto *ToMTE =  new (Importer.getToContext()) MaterializeTemporaryExpr(
tools/clang/lib/AST/Expr.cpp
   51     if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E)) {
 1893     if (auto *Materialize = dyn_cast<MaterializeTemporaryExpr>(E))
 2724     return cast<MaterializeTemporaryExpr>(this)->GetTemporaryExpr()
 2749     return cast<MaterializeTemporaryExpr>(E)->GetTemporaryExpr()
 2824   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
 2824   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
 2840   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
 2840   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
 2874   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
 2874   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
 3001   if (const MaterializeTemporaryExpr *M = dyn_cast<MaterializeTemporaryExpr>(E))
 3001   if (const MaterializeTemporaryExpr *M = dyn_cast<MaterializeTemporaryExpr>(E))
 3013   if (const MaterializeTemporaryExpr *M = dyn_cast<MaterializeTemporaryExpr>(E))
 3013   if (const MaterializeTemporaryExpr *M = dyn_cast<MaterializeTemporaryExpr>(E))
 3107     if (const MaterializeTemporaryExpr *M
 3108                                       = dyn_cast<MaterializeTemporaryExpr>(E)) {
 3286     return cast<MaterializeTemporaryExpr>(this)->GetTemporaryExpr()
 3752   } else if (const MaterializeTemporaryExpr *M
 3753                                    = dyn_cast<MaterializeTemporaryExpr>(this)) {
 4462   if (const MaterializeTemporaryExpr *m = dyn_cast<MaterializeTemporaryExpr>(e))
 4462   if (const MaterializeTemporaryExpr *m = dyn_cast<MaterializeTemporaryExpr>(e))
tools/clang/lib/AST/ExprClassification.cpp
  411     return cast<MaterializeTemporaryExpr>(E)->isBoundToLvalueReference()
tools/clang/lib/AST/ExprConstant.cpp
  106     if (const MaterializeTemporaryExpr *MTE =
  107             dyn_cast<MaterializeTemporaryExpr>(Base)) {
 1766 APValue &CallStackFrame::createTemporary(const KeyT *Key, QualType T,
 1886     return cast<MaterializeTemporaryExpr>(E)->getStorageDuration() == SD_Static;
 1924   return E && !isa<MaterializeTemporaryExpr>(E);
 1988     llvm::SmallPtrSet<const MaterializeTemporaryExpr *, 8>;
 2064   } else if (const auto *MTE = dyn_cast_or_null<MaterializeTemporaryExpr>(
 2064   } else if (const auto *MTE = dyn_cast_or_null<MaterializeTemporaryExpr>(
 3088       if (auto *BaseMTE = dyn_cast<MaterializeTemporaryExpr>(BaseE))
 3645       if (const MaterializeTemporaryExpr *MTE =
 3646               dyn_cast_or_null<MaterializeTemporaryExpr>(Base)) {
 7325   bool VisitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *E);
 7466     const MaterializeTemporaryExpr *E) {
 9029     if (const MaterializeTemporaryExpr *ME
 9030           = dyn_cast<MaterializeTemporaryExpr>(E->getArg(0)))
tools/clang/lib/AST/ItaniumMangle.cpp
 4341     mangleExpression(cast<MaterializeTemporaryExpr>(E)->GetTemporaryExpr());
tools/clang/lib/AST/JSONNodeDumper.cpp
 1344     const MaterializeTemporaryExpr *MTE) {
tools/clang/lib/AST/StmtPrinter.cpp
 2231 void StmtPrinter::VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *Node){
tools/clang/lib/AST/StmtProfile.cpp
 1893                                            const MaterializeTemporaryExpr *S) {
tools/clang/lib/AST/TextNodeDumper.cpp
  940     const MaterializeTemporaryExpr *Node) {
tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp
  679 const internal::VariadicDynCastAllOfMatcher<Stmt, MaterializeTemporaryExpr>
tools/clang/lib/ASTMatchers/Dynamic/Marshallers.h
   75     return Value.isMatcher() && Value.getMatcher().hasTypedMatcher<T>();
   78   static ast_matchers::internal::Matcher<T> get(const VariantValue &Value) {
   79     return Value.getMatcher().getTypedMatcher<T>();
   83     return ArgKind(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
  466       ast_matchers::internal::VariadicDynCastAllOfMatcher<BaseT, DerivedT> Func,
  469         DerivedKind(ast_type_traits::ASTNodeKind::getFromNodeKind<DerivedT>()) {
  778     ast_matchers::internal::VariadicDynCastAllOfMatcher<BaseT, DerivedT>
tools/clang/lib/Analysis/CFG.cpp
  589   CFGBlock *VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *MTE,
 1430       auto *MTE = cast<MaterializeTemporaryExpr>(Child);
 1430       auto *MTE = cast<MaterializeTemporaryExpr>(Child);
 1695     if (const MaterializeTemporaryExpr *MTE
 1696           = dyn_cast<MaterializeTemporaryExpr>(Init)) {
 2258       return VisitMaterializeTemporaryExpr(cast<MaterializeTemporaryExpr>(S),
 3461 CFGBuilder::VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *MTE,
 4645       const MaterializeTemporaryExpr* MTE = cast<MaterializeTemporaryExpr>(E);
 4645       const MaterializeTemporaryExpr* MTE = cast<MaterializeTemporaryExpr>(E);
 4651           cast<MaterializeTemporaryExpr>(E)
tools/clang/lib/Analysis/ConstructionContext.cpp
   46     BumpVectorContext &C, const MaterializeTemporaryExpr *MTE,
  129     const auto *MTE = cast<MaterializeTemporaryExpr>(ParentItem.getStmt());
  129     const auto *MTE = cast<MaterializeTemporaryExpr>(ParentItem.getStmt());
  187     const auto *MTE = cast<MaterializeTemporaryExpr>(TopItem.getStmt());
  187     const auto *MTE = cast<MaterializeTemporaryExpr>(TopItem.getStmt());
tools/clang/lib/Analysis/Consumed.cpp
  509   void VisitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *Temp);
  849   const MaterializeTemporaryExpr *Temp) {
tools/clang/lib/Analysis/ThreadSafetyCommon.cpp
  247     return translate(cast<MaterializeTemporaryExpr>(S)->GetTemporaryExpr(),
tools/clang/lib/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGExpr.cpp
  254 pushTemporaryCleanup(CodeGenFunction &CGF, const MaterializeTemporaryExpr *M,
  371                                         const MaterializeTemporaryExpr *M,
  419 EmitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *M) {
 1372     return EmitMaterializeTemporaryExpr(cast<MaterializeTemporaryExpr>(E));
tools/clang/lib/CodeGen/CGExprAgg.cpp
  186   void VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *E);
  639 void AggExprEmitter::VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *E){
tools/clang/lib/CodeGen/CGExprConstant.cpp
 1174   llvm::Constant *VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *E,
 1773                                          const MaterializeTemporaryExpr *E);
 2002                                             const MaterializeTemporaryExpr *E) {
tools/clang/lib/CodeGen/CGExprScalar.cpp
  640   Value *VisitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *E) {
tools/clang/lib/CodeGen/CodeGenFunction.h
 3516   LValue EmitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *E);
tools/clang/lib/CodeGen/CodeGenModule.cpp
 5003     const MaterializeTemporaryExpr *E, const Expr *Init) {
tools/clang/lib/CodeGen/CodeGenModule.h
  957   ConstantAddress GetAddrOfGlobalTemporary(const MaterializeTemporaryExpr *E,
tools/clang/lib/Sema/JumpDiagnostics.cpp
  544     MaterializeTemporaryExpr *MTE = cast<MaterializeTemporaryExpr>(S);
  544     MaterializeTemporaryExpr *MTE = cast<MaterializeTemporaryExpr>(S);
tools/clang/lib/Sema/SemaChecking.cpp
 9268     const auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E);
 9268     const auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E);
tools/clang/lib/Sema/SemaExpr.cpp
 7641   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E)) {
 7641   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E)) {
 8697     if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(Op))
 8697     if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(Op))
tools/clang/lib/Sema/SemaInit.cpp
 6947   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(Init)) {
 6947   if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(Init)) {
 7068           } else if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(L)) {
 7068           } else if (auto *MTE = dyn_cast<MaterializeTemporaryExpr>(L)) {
 7215       if (isa<MaterializeTemporaryExpr>(UO->getSubExpr()))
 7334     auto *MTE = dyn_cast<MaterializeTemporaryExpr>(L);
 7334     auto *MTE = dyn_cast<MaterializeTemporaryExpr>(L);
 7413       if (isa<MaterializeTemporaryExpr>(L)) {
 7485       if (isa<MaterializeTemporaryExpr>(L)) {
 7691 MaterializeTemporaryExpr *
 7695       MaterializeTemporaryExpr(T, Temporary, BoundToLvalueReference);
 8010       MaterializeTemporaryExpr *MTE = S.CreateMaterializeTemporaryExpr(
 8453       MaterializeTemporaryExpr *MTE = S.CreateMaterializeTemporaryExpr(
tools/clang/lib/Sema/SemaOpenMP.cpp
  864   if (const auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
  864   if (const auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
tools/clang/lib/Sema/SemaStmt.cpp
 2720   const MaterializeTemporaryExpr *MTE =
 2721       dyn_cast<MaterializeTemporaryExpr>(InitExpr);
 2738       const MaterializeTemporaryExpr *MTE = cast<MaterializeTemporaryExpr>(E);
 2738       const MaterializeTemporaryExpr *MTE = cast<MaterializeTemporaryExpr>(E);
tools/clang/lib/Sema/TreeTransform.h
 3457   if (MaterializeTemporaryExpr *MTE = dyn_cast<MaterializeTemporaryExpr>(Init))
 3457   if (MaterializeTemporaryExpr *MTE = dyn_cast<MaterializeTemporaryExpr>(Init))
tools/clang/lib/Serialization/ASTReaderStmt.cpp
 1901 void ASTStmtReader::VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *E) {
 3478       S = new (Context) MaterializeTemporaryExpr(Empty);
tools/clang/lib/Serialization/ASTWriterStmt.cpp
 1836 void ASTStmtWriter::VisitMaterializeTemporaryExpr(MaterializeTemporaryExpr *E) {
tools/clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
  175                      check::PostStmt<MaterializeTemporaryExpr>, check::Bind,
  258   void checkPostStmt(const MaterializeTemporaryExpr *MTE,
  765 void IteratorChecker::checkPostStmt(const MaterializeTemporaryExpr *MTE,
tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
  373   if (const auto *MT = dyn_cast<MaterializeTemporaryExpr>(Result)) {
  373   if (const auto *MT = dyn_cast<MaterializeTemporaryExpr>(Result)) {
 1428       if (const auto *MTE = dyn_cast<MaterializeTemporaryExpr>(ArgE)) {
 1428       if (const auto *MTE = dyn_cast<MaterializeTemporaryExpr>(ArgE)) {
 1709       const auto *MTE = cast<MaterializeTemporaryExpr>(S);
 1709       const auto *MTE = cast<MaterializeTemporaryExpr>(S);
tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
   26 void ExprEngine::CreateCXXTemporaryObject(const MaterializeTemporaryExpr *ME,
  236       const MaterializeTemporaryExpr *MTE = TCC->getMaterializedTemporaryExpr();
  281       const MaterializeTemporaryExpr *MTE = TCC->getMaterializedTemporaryExpr();
tools/clang/tools/extra/clang-tidy/abseil/StrCatAppendCheck.cpp
   26     if (const auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
   26     if (const auto *MTE = dyn_cast<MaterializeTemporaryExpr>(E))
tools/clang/tools/extra/clang-tidy/modernize/AvoidBindCheck.cpp
   55     if (const auto *M = dyn_cast<MaterializeTemporaryExpr>(E)) {
   55     if (const auto *M = dyn_cast<MaterializeTemporaryExpr>(E)) {
tools/clang/tools/extra/clang-tidy/modernize/LoopConvertUtils.cpp
  179     if (const auto *Temp = dyn_cast<MaterializeTemporaryExpr>(E))
  179     if (const auto *Temp = dyn_cast<MaterializeTemporaryExpr>(E))
tools/clang/tools/extra/clang-tidy/performance/ImplicitConversionInLoopCheck.cpp
   73   const auto *Materialized = dyn_cast<MaterializeTemporaryExpr>(Init);
   73   const auto *Materialized = dyn_cast<MaterializeTemporaryExpr>(Init);
tools/clang/tools/extra/clang-tidy/readability/NonConstParameterCheck.cpp
  204       if (const auto *M = dyn_cast<MaterializeTemporaryExpr>(Arg))
  204       if (const auto *M = dyn_cast<MaterializeTemporaryExpr>(Arg))
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
 1447     : public __and_<is_destructible<_Tp>, integral_constant<bool,
 1554     { typedef _Tp     type; };
 1558     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1580     { typedef _Tp const     type; };
 1629     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1955     { typedef _Tp     type; };
 1999     { typedef typename remove_reference<_Tp>::type*     type; };
 2003     : public __add_pointer_helper<_Tp>