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

Derived Classes

tools/clang/include/clang/AST/Type.h
 4276 class DependentTypeOfExprType

Declarations

gen/tools/clang/include/clang/AST/TypeNodes.inc
   67 NON_CANONICAL_UNLESS_DEPENDENT_TYPE(TypeOfExpr, Type)

References

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,
  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;
  218   static typename cast_retty<To, From>::ret_type doit(From &Val) {
  219     return cast_convert_val<To, SimpleFrom,
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  248                                typename cast_retty<X, const Y>::ret_type>::type
  252       X, const Y, typename simplify_type<const Y>::SimpleType>::doit(Val);
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  258   return cast_convert_val<X, Y,
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  331                             typename cast_retty<X, const Y>::ret_type>::type
  333   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  333   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  338   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  338   return isa<X>(Val) ? cast<X>(Val) : nullptr;
tools/clang/include/clang/AST/ASTNodeTraverser.h
  309   void VisitTypeOfExprType(const TypeOfExprType *T) {
tools/clang/include/clang/AST/RecursiveASTVisitor.h
 1025                   { TRY_TO(TraverseStmt(T->getUnderlyingExpr())); })
 1265                      { TRY_TO(TraverseStmt(TL.getUnderlyingExpr())); })
tools/clang/include/clang/AST/Type.h
 4277   : public TypeOfExprType, public llvm::FoldingSetNode {
tools/clang/include/clang/AST/TypeLoc.h
  370     return TypeClass::classof(Ty);
  405   const TypeClass *getTypePtr() const {
  406     return cast<TypeClass>(Base::getTypePtr());
 1809   : public ConcreteTypeLoc<UnqualTypeLoc, Derived, TypeClass, LocalData> {
 1856                                                    TypeOfExprType,
tools/clang/lib/AST/ASTContext.cpp
 4872   TypeOfExprType *toe;
 4883       toe = new (*this, TypeAlignment) TypeOfExprType(tofExpr,
 4894     toe = new (*this, TypeAlignment) TypeOfExprType(tofExpr, Canonical);
tools/clang/lib/AST/ASTImporter.cpp
  330     ExpectedType VisitTypeOfExprType(const TypeOfExprType *T);
 1268 ExpectedType ASTNodeImporter::VisitTypeOfExprType(const TypeOfExprType *T) {
tools/clang/lib/AST/ASTStructuralEquivalence.cpp
  706             Context, cast<TypeOfExprType>(T1)->getUnderlyingExpr(),
  707             cast<TypeOfExprType>(T2)->getUnderlyingExpr()))
tools/clang/lib/AST/ItaniumMangle.cpp
 3372 void CXXNameMangler::mangleType(const TypeOfExprType *T) {
tools/clang/lib/AST/MicrosoftMangle.cpp
 2873 void MicrosoftCXXNameMangler::mangleType(const TypeOfExprType *T, Qualifiers,
tools/clang/lib/AST/ODRHash.cpp
 1042   void VisitTypeOfExprType(const TypeOfExprType *T) {
tools/clang/lib/AST/TypePrinter.cpp
  986 void TypePrinter::printTypeOfExprBefore(const TypeOfExprType *T,
  994 void TypePrinter::printTypeOfExprAfter(const TypeOfExprType *T,
tools/clang/lib/CodeGen/Address.h
  108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGDebugInfo.cpp
 2868       T = cast<TypeOfExprType>(T)->getUnderlyingExpr()->getType();
tools/clang/lib/CodeGen/CodeGenFunction.cpp
 1986       EmitIgnoredExpr(cast<TypeOfExprType>(ty)->getUnderlyingExpr());
tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
 2274   if (!isa<TypeOfExprType>(TypePtr))
 2276   while (isa<TypeOfExprType>(TypePtr)) {
 2277     const TypeOfExprType *TypeOfExprTypePtr = cast<TypeOfExprType>(TypePtr);
 2277     const TypeOfExprType *TypeOfExprTypePtr = cast<TypeOfExprType>(TypePtr);
 4728   if (isa<TypeOfExprType>(TypePtr)) {
 4729     const TypeOfExprType *TypeOfExprTypePtr = cast<TypeOfExprType>(TypePtr);
 4729     const TypeOfExprType *TypeOfExprTypePtr = cast<TypeOfExprType>(TypePtr);
tools/clang/lib/Frontend/Rewrite/RewriteObjC.cpp
 2186   if (!isa<TypeOfExprType>(TypePtr))
 2188   while (isa<TypeOfExprType>(TypePtr)) {
 2189     const TypeOfExprType *TypeOfExprTypePtr = cast<TypeOfExprType>(TypePtr);
 2189     const TypeOfExprType *TypeOfExprTypePtr = cast<TypeOfExprType>(TypePtr);
 3897   if (isa<TypeOfExprType>(TypePtr)) {
 3898     const TypeOfExprType *TypeOfExprTypePtr = cast<TypeOfExprType>(TypePtr);
 3898     const TypeOfExprType *TypeOfExprTypePtr = cast<TypeOfExprType>(TypePtr);
tools/clang/lib/Sema/SemaChecking.cpp
 8305   while (const TypeOfExprType *TET = dyn_cast<TypeOfExprType>(ExprTy)) {
 8305   while (const TypeOfExprType *TET = dyn_cast<TypeOfExprType>(ExprTy)) {
10837     if (const auto *TET = dyn_cast<TypeOfExprType>(LHS->getType()))
10837     if (const auto *TET = dyn_cast<TypeOfExprType>(LHS->getType()))
10839     if (const auto *TET = dyn_cast<TypeOfExprType>(RHS->getType()))
10839     if (const auto *TET = dyn_cast<TypeOfExprType>(RHS->getType()))
tools/clang/lib/Sema/SemaExpr.cpp
 4134       T = cast<TypeOfExprType>(Ty)->getUnderlyingExpr()->getType();
tools/clang/lib/Sema/SemaTemplate.cpp
 5590 bool UnnamedLocalNoLinkageFinder::VisitTypeOfExprType(const TypeOfExprType*) {
tools/clang/lib/Sema/SemaTemplateDeduction.cpp
 5568                                  cast<TypeOfExprType>(T)->getUnderlyingExpr(),
tools/clang/lib/Sema/TreeTransform.h
 5649   ExprResult E = getDerived().TransformExpr(TL.getUnderlyingExpr());
 5657   QualType Result = TL.getType();
 5659       E.get() != TL.getUnderlyingExpr()) {
 5660     Result = getDerived().RebuildTypeOfExprType(E.get(), TL.getTypeofLoc());
 5666   TypeOfExprTypeLoc NewTL = TLB.push<TypeOfExprTypeLoc>(Result);
 5667   NewTL.setTypeofLoc(TL.getTypeofLoc());
 5668   NewTL.setLParenLoc(TL.getLParenLoc());
 5669   NewTL.setRParenLoc(TL.getRParenLoc());
tools/clang/lib/Serialization/ASTWriter.cpp
  346 void ASTTypeWriter::VisitTypeOfExprType(const TypeOfExprType *T) {
tools/lldb/source/Symbol/ClangASTContext.cpp
 4145     return CompilerType(this, llvm::cast<clang::TypeOfExprType>(qual_type)
 4366     return CompilerType(this, llvm::cast<clang::TypeOfExprType>(qual_type)
 5267     return CompilerType(this, llvm::cast<clang::TypeOfExprType>(qual_type)
 5438     return CompilerType(this, llvm::cast<clang::TypeOfExprType>(qual_type)
 6526     return GetNumPointeeChildren(llvm::cast<clang::TypeOfExprType>(qual_type)
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
  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
  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; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1659     { typedef _Tp&&   type; };
 1955     { typedef _Tp     type; };