|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Declarations
gen/tools/clang/include/clang/AST/DeclNodes.inc 409 CXXCONSTRUCTOR(CXXConstructor, CXXMethodDecl)
tools/clang/include/clang/AST/ASTContext.h 93 class CXXConstructorDecl;
tools/clang/include/clang/AST/DeclCXX.h 62 class CXXConstructorDecl;
tools/clang/include/clang/AST/Mangle.h 29 class CXXConstructorDecl;
tools/clang/include/clang/Sema/ExternalSemaSource.h 28 class CXXConstructorDecl;
tools/clang/include/clang/Sema/Initialization.h 43 class CXXConstructorDecl;
tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h 22 class CXXConstructorDecl;
tools/clang/include/clang/Sema/Sema.h 87 class CXXConstructorDecl;
tools/clang/lib/AST/CXXABI.h 22 class CXXConstructorDecl;
tools/clang/lib/CodeGen/CGCXXABI.h 29 class CXXConstructorDecl;
tools/clang/lib/CodeGen/CodeGenTypes.h 33 class CXXConstructorDecl;
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);
66 static inline bool doit(const From &) { return true; }
77 return isa_impl<To, From>::doit(Val);
104 static inline bool doit(const From *Val) {
106 return isa_impl<To, From>::doit(*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) {
263 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*,
265 return cast_convert_val<X, Y*,
266 typename simplify_type<Y*>::SimpleType>::doit(Val);
305 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
309 return cast<X>(Val);
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) {
342 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
366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
367 dyn_cast_or_null(Y *Val) {
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) {
include/llvm/Support/TrailingObjects.h 134 : public TrailingObjectsImpl<Align, BaseTy, TopTrailingObj, NextTy,
137 typedef TrailingObjectsImpl<Align, BaseTy, TopTrailingObj, NextTy, MoreTys...>
141 static const bool value = alignof(PrevTy) < alignof(NextTy);
162 getTrailingObjectsImpl(const BaseTy *Obj,
177 getTrailingObjectsImpl(BaseTy *Obj,
179 auto *Ptr = TopTrailingObj::getTrailingObjectsImpl(
232 BaseTy, TrailingObjects<BaseTy, TrailingTys...>,
232 BaseTy, TrailingObjects<BaseTy, TrailingTys...>,
233 BaseTy, TrailingTys...> {
242 BaseTy, TrailingObjects<BaseTy, TrailingTys...>, BaseTy, TrailingTys...>
242 BaseTy, TrailingObjects<BaseTy, TrailingTys...>, BaseTy, TrailingTys...>
242 BaseTy, TrailingObjects<BaseTy, TrailingTys...>, BaseTy, TrailingTys...>
257 static const BaseTy *
258 getTrailingObjectsImpl(const BaseTy *Obj,
259 TrailingObjectsBase::OverloadToken<BaseTy>) {
263 static BaseTy *
264 getTrailingObjectsImpl(BaseTy *Obj,
265 TrailingObjectsBase::OverloadToken<BaseTy>) {
277 callNumTrailingObjects(const BaseTy *Obj,
278 TrailingObjectsBase::OverloadToken<BaseTy>) {
283 static size_t callNumTrailingObjects(const BaseTy *Obj,
284 TrailingObjectsBase::OverloadToken<T>) {
tools/clang/include/clang/AST/ASTContext.h 2793 const CXXConstructorDecl *
2797 CXXConstructorDecl *CD);
tools/clang/include/clang/AST/ASTNodeTraverser.h 364 if (const auto *C = dyn_cast<CXXConstructorDecl>(D))
364 if (const auto *C = dyn_cast<CXXConstructorDecl>(D))
tools/clang/include/clang/AST/ASTTypeTraits.h 65 return ASTNodeKind(KindToKindId<T>::Id);
65 return ASTNodeKind(KindToKindId<T>::Id);
65 return ASTNodeKind(KindToKindId<T>::Id);
234 static DynTypedNode create(const T &Node) {
235 return BaseConverter<T>::create(Node);
251 const T *get() const {
252 return BaseConverter<T>::get(NodeKind, Storage.buffer);
259 const T &getUnchecked() const {
260 return BaseConverter<T>::getUnchecked(NodeKind, Storage.buffer);
394 static const T *get(ASTNodeKind NodeKind, const char Storage[]) {
395 if (ASTNodeKind::getFromNodeKind<T>().isBaseOf(NodeKind))
399 static const T &getUnchecked(ASTNodeKind NodeKind, const char Storage[]) {
401 return *cast<T>(static_cast<const BaseT *>(
469 : public DynCastPtrConverter<T, Decl> {};
tools/clang/include/clang/AST/DeclBase.h 2058 while (*Current && !isa<SpecificDecl>(*Current))
2063 using value_type = SpecificDecl *;
2086 value_type operator*() const { return cast<SpecificDecl>(*Current); }
2474 static const ToTy *doit(const DeclContext *Val) {
2478 static ToTy *doit(DeclContext *Val) {
2491 return To::classofKind(Val.getDeclKind());
2514 static const ToTy *doit(const ::clang::DeclContext *Val) {
2515 return ::clang::cast_convert_decl_context<ToTy>::doit(Val);
2521 static ToTy *doit(::clang::DeclContext *Val) {
2522 return ::clang::cast_convert_decl_context<ToTy>::doit(Val);
2536 static ::clang::DeclContext *doit(const FromTy *Val) {
2537 return FromTy::castToDeclContext(Val);
tools/clang/include/clang/AST/DeclCXX.h 647 using ctor_iterator = specific_decl_iterator<CXXConstructorDecl>;
649 llvm::iterator_range<specific_decl_iterator<CXXConstructorDecl>>;
2341 CXXConstructorDecl *BaseCtor = nullptr;
2346 CXXConstructorDecl *BaseCtor)
2352 CXXConstructorDecl *getConstructor() const { return BaseCtor; }
2367 private llvm::TrailingObjects<CXXConstructorDecl, InheritedConstructor,
2427 static CXXConstructorDecl *CreateDeserialized(ASTContext &C, unsigned ID,
2429 static CXXConstructorDecl *
2462 const auto *ConstThis = this;
2523 CXXConstructorDecl *getTargetConstructor() const;
2607 CXXConstructorDecl *getCanonicalDecl() override {
2608 return cast<CXXConstructorDecl>(FunctionDecl::getCanonicalDecl());
2610 const CXXConstructorDecl *getCanonicalDecl() const {
tools/clang/include/clang/AST/ExprCXX.h 1435 CXXConstructorDecl *Constructor;
1466 CXXConstructorDecl *Ctor, bool Elidable,
1485 CXXConstructorDecl *Ctor, bool Elidable, ArrayRef<Expr *> Args,
1494 CXXConstructorDecl *getConstructor() const { return Constructor; }
1615 CXXConstructorDecl *Constructor = nullptr;
1632 CXXConstructorDecl *Ctor, bool ConstructsVirtualBase,
1648 CXXConstructorDecl *getConstructor() const { return Constructor; }
1759 CXXTemporaryObjectExpr(CXXConstructorDecl *Cons, QualType Ty,
1770 Create(const ASTContext &Ctx, CXXConstructorDecl *Cons, QualType Ty,
tools/clang/include/clang/AST/GlobalDecl.h 63 GlobalDecl(const CXXConstructorDecl *D, CXXCtorType Type) : Value(D, Type) {}
tools/clang/include/clang/AST/Mangle.h 112 virtual void mangleCXXCtor(const CXXConstructorDecl *D, CXXCtorType Type,
121 void mangleCtorBlock(const CXXConstructorDecl *CD, CXXCtorType CT,
168 virtual void mangleCXXCtorComdat(const CXXConstructorDecl *D,
221 virtual void mangleCXXCatchableType(QualType T, const CXXConstructorDecl *CD,
tools/clang/include/clang/AST/RecursiveASTVisitor.h 2027 if (CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(D)) {
2027 if (CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(D)) {
2072 ReturnValue = TraverseFunctionHelper(D);
tools/clang/include/clang/ASTMatchers/ASTMatchers.h 110 const T *getNodeAs(StringRef ID) const {
111 return MyBoundNodes.getNodeAs<T>(ID);
1078 extern const internal::VariadicDynCastAllOfMatcher<Decl, CXXConstructorDecl>
tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h 160 const T *getNodeAs(StringRef ID) const {
165 return It->second.get<T>();
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>());
596 inline Matcher<T> makeMatcher(MatcherInterface<T> *Implementation) {
596 inline Matcher<T> makeMatcher(MatcherInterface<T> *Implementation) {
1009 bool matchesDescendantOf(const T &Node,
1013 static_assert(std::is_base_of<Decl, T>::value ||
1014 std::is_base_of<Stmt, T>::value ||
1015 std::is_base_of<NestedNameSpecifier, T>::value ||
1016 std::is_base_of<NestedNameSpecifierLoc, T>::value ||
1017 std::is_base_of<TypeLoc, T>::value ||
1018 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,
1067 using head = T1;
1084 std::is_base_of<typename AnyTypeList::head, T>::value ||
1085 TypeListContainsSuperOf<typename AnyTypeList::tail, T>::value;
1146 template <typename To> operator Matcher<To>() const {
1184 operator Matcher<T>() const {
1185 static_assert(TypeListContainsSuperOf<ReturnTypes, T>::value,
1202 operator Matcher<T>() const {
1203 static_assert(TypeListContainsSuperOf<ReturnTypes, T>::value,
1223 operator Matcher<T>() const {
1224 static_assert(TypeListContainsSuperOf<ReturnTypes, T>::value,
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 {
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) {
1418 class HasDescendantMatcher : public WrapperMatcherInterface<T> {
1426 bool matches(const T &Node, ASTMatchFinder *Finder,
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/AnyCall.h 89 AnyCall(const CXXConstructorDecl *D) : E(nullptr), D(D), K(Constructor) {}
94 if (isa<CXXConstructorDecl>(D)) {
tools/clang/include/clang/Sema/ExternalSemaSource.h 127 SmallVectorImpl<CXXConstructorDecl *> &Decls) {}
tools/clang/include/clang/Sema/Initialization.h 1283 CXXConstructorDecl *Constructor,
tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h 266 SmallVectorImpl<CXXConstructorDecl*> &Decls) override;
tools/clang/include/clang/Sema/Overload.h 327 CXXConstructorDecl *CopyConstructor;
1107 CXXConstructorDecl *Constructor;
1127 Info.Constructor = dyn_cast<CXXConstructorDecl>(D);
tools/clang/include/clang/Sema/Sema.h 674 typedef LazyVector<CXXConstructorDecl *, ExternalSemaSource,
3564 CXXConstructorDecl *LookupDefaultConstructor(CXXRecordDecl *Class);
3565 CXXConstructorDecl *LookupCopyingConstructor(CXXRecordDecl *Class,
3569 CXXConstructorDecl *LookupMovingConstructor(CXXRecordDecl *Class,
4364 void NoteDeletedInheritingConstructor(CXXConstructorDecl *CD);
5090 CXXConstructorDecl *
5091 findInheritingConstructor(SourceLocation Loc, CXXConstructorDecl *BaseCtor,
5112 CXXConstructorDecl *Constructor, MultiExprArg Exprs,
5122 CXXConstructorDecl *Constructor, bool Elidable,
5134 CXXConstructorDecl *Constructor, bool Elidable,
5260 CXXConstructorDecl *CD);
5309 CXXConstructorDecl *DeclareImplicitDefaultConstructor(
5315 CXXConstructorDecl *Constructor);
5338 CXXConstructorDecl *Constructor);
5346 CXXConstructorDecl *DeclareImplicitCopyConstructor(CXXRecordDecl *ClassDecl);
5351 CXXConstructorDecl *Constructor);
5360 CXXConstructorDecl *DeclareImplicitMoveConstructor(CXXRecordDecl *ClassDecl);
5365 CXXConstructorDecl *Constructor);
5424 bool CompleteConstructorCall(CXXConstructorDecl *Constructor,
6284 bool SetDelegatingInitializer(CXXConstructorDecl *Constructor,
6287 bool SetCtorInitializers(CXXConstructorDecl *Constructor, bool AnyErrors,
6416 void CheckConstructor(CXXConstructorDecl *Constructor);
6535 CXXConstructorDecl *D,
6540 CXXConstructorDecl *D,
8493 void InstantiateMemInitializers(CXXConstructorDecl *New,
8494 const CXXConstructorDecl *Tmpl,
11028 bool isEmptyCudaConstructor(SourceLocation Loc, CXXConstructorDecl *CD);
tools/clang/include/clang/Serialization/ASTReader.h 1887 T *ReadDeclAs(ModuleFile &F, const RecordData &R, unsigned &I) {
1888 return cast_or_null<T>(GetDecl(ReadDeclID(F, R, I)));
2013 SmallVectorImpl<CXXConstructorDecl *> &Decls) override;
2541 T *readDeclAs() {
2542 return Reader->ReadDeclAs<T>(*F, Record, Idx);
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h 846 const CXXConstructorDecl *getDecl() const override {
tools/clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h 47 bool VisitCXXConstructorDecl(const CXXConstructorDecl *CD) {
tools/clang/lib/AST/ASTContext.cpp10284 const CXXConstructorDecl *
10291 CXXConstructorDecl *CD) {
10294 cast<CXXConstructorDecl>(CD->getFirstDecl()));
tools/clang/lib/AST/ASTImporter.cpp 162 Expected<T *> import(T *From) {
162 Expected<T *> import(T *From) {
166 return cast_or_null<T>(*ToOrErr);
170 Expected<T *> import(const T *From) {
170 Expected<T *> import(const T *From) {
217 -> decltype(ToDeclT::Create(std::forward<Args>(args)...)) {
218 return ToDeclT::Create(std::forward<Args>(args)...);
229 LLVM_NODISCARD bool GetImportedOrCreateDecl(ToDeclT *&ToD, FromDeclT *FromD,
247 CallOverloadedCreateFun<NewDeclT> OC;
466 ExpectedDecl VisitCXXConstructorDecl(CXXConstructorDecl *D);
3157 if (auto *FromConstructor = dyn_cast<CXXConstructorDecl>(D)) {
3157 if (auto *FromConstructor = dyn_cast<CXXConstructorDecl>(D)) {
3165 if (GetImportedOrCreateDecl<CXXConstructorDecl>(
3282 if (auto *FromConstructor = dyn_cast<CXXConstructorDecl>(D)) {
3282 if (auto *FromConstructor = dyn_cast<CXXConstructorDecl>(D)) {
3292 auto *ToCtor = cast<CXXConstructorDecl>(ToFunction);
3292 auto *ToCtor = cast<CXXConstructorDecl>(ToFunction);
3348 ExpectedDecl ASTNodeImporter::VisitCXXConstructorDecl(CXXConstructorDecl *D) {
6975 CXXConstructorDecl *ToConstructor;
7115 CXXConstructorDecl *ToConstructor;
7611 CXXConstructorDecl *ToConstructor;
tools/clang/lib/AST/ASTStructuralEquivalence.cpp 1056 if (auto *Constructor1 = dyn_cast<CXXConstructorDecl>(Method1)) {
1056 if (auto *Constructor1 = dyn_cast<CXXConstructorDecl>(Method1)) {
1057 auto *Constructor2 = cast<CXXConstructorDecl>(Method2);
1057 auto *Constructor2 = cast<CXXConstructorDecl>(Method2);
tools/clang/lib/AST/CXXABI.h 57 CXXConstructorDecl *) = 0;
60 virtual const CXXConstructorDecl *
tools/clang/lib/AST/DeclCXX.cpp 739 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
739 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
786 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(DUnderlying)) {
786 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(DUnderlying)) {
1332 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
1332 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
1365 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
1365 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
1941 return cast<CXXConstructorDecl>(Function)->getExplicitSpecifier();
2270 if (isa<CXXConstructorDecl>(this)) return nullptr;
2275 if (isa<CXXConstructorDecl>(this)) return nullptr;
2280 if (isa<CXXConstructorDecl>(this)) return 0;
2286 if (isa<CXXConstructorDecl>(this))
2449 CXXConstructorDecl *CXXConstructorDecl::CreateDeserialized(ASTContext &C,
2458 auto *Result = new (C, ID, Extra)
2459 CXXConstructorDecl(C, nullptr, SourceLocation(), DeclarationNameInfo(),
2469 CXXConstructorDecl *CXXConstructorDecl::Create(
2481 CXXConstructorDecl(C, RD, StartLoc, NameInfo, T, TInfo, ES, isInline,
2485 CXXConstructorDecl::init_const_iterator CXXConstructorDecl::init_begin() const {
2489 CXXConstructorDecl *CXXConstructorDecl::getTargetConstructor() const {
tools/clang/lib/AST/DeclPrinter.cpp 40 void PrintConstructorInitializers(CXXConstructorDecl *CDecl,
298 void DeclPrinter::PrintConstructorInitializers(CXXConstructorDecl *CDecl,
597 CXXConstructorDecl *CDecl = dyn_cast<CXXConstructorDecl>(D);
597 CXXConstructorDecl *CDecl = dyn_cast<CXXConstructorDecl>(D);
770 if (!Policy.TerseOutput && isa<CXXConstructorDecl>(*D))
tools/clang/lib/AST/Expr.cpp 681 if (const CXXConstructorDecl *CD = dyn_cast<CXXConstructorDecl>(ND))
681 if (const CXXConstructorDecl *CD = dyn_cast<CXXConstructorDecl>(ND))
851 else if (!isa<CXXConstructorDecl>(FD) && !isa<CXXDestructorDecl>(FD))
2583 if (const CXXConstructorDecl *Ctor = CE->getConstructor()) {
tools/clang/lib/AST/ExprCXX.cpp 1021 CXXConstructorDecl *Cons, QualType Ty, TypeSourceInfo *TSI,
1037 const ASTContext &Ctx, CXXConstructorDecl *Cons, QualType Ty,
1072 CXXConstructorDecl *Ctor, bool Elidable, ArrayRef<Expr *> Args,
1095 StmtClass SC, QualType Ty, SourceLocation Loc, CXXConstructorDecl *Ctor,
tools/clang/lib/AST/ExprConstant.cpp 1806 !isa<CXXConstructorDecl>(Callee) &&
4860 const CXXConstructorDecl *CD,
4923 auto *CD = dyn_cast<CXXConstructorDecl>(DiagDecl);
4925 auto *Inherited = CD->getInheritedConstructor().getConstructor();
5537 const CXXConstructorDecl *Definition,
5562 CXXConstructorDecl::init_const_iterator I = Definition->init_begin();
5735 const CXXConstructorDecl *Definition,
9005 const CXXConstructorDecl *FD = E->getConstructor();
9038 cast<CXXConstructorDecl>(Definition), Info,
9049 const CXXConstructorDecl *FD = E->getConstructor();
9060 cast<CXXConstructorDecl>(Definition), Info,
14407 if (const CXXConstructorDecl *CD = dyn_cast<CXXConstructorDecl>(FD)) {
14407 if (const CXXConstructorDecl *CD = dyn_cast<CXXConstructorDecl>(FD)) {
tools/clang/lib/AST/Interp/Disasm.cpp 27 if (auto *Cons = dyn_cast<CXXConstructorDecl>(F)) {
tools/clang/lib/AST/Interp/Function.h 109 bool isConstructor() const { return isa<CXXConstructorDecl>(F); }
tools/clang/lib/AST/Interp/Interp.cpp 349 auto *CD = dyn_cast<CXXConstructorDecl>(DiagDecl);
351 auto *Inherited = CD->getInheritedConstructor().getConstructor();
tools/clang/lib/AST/Interp/InterpFrame.cpp 115 if (M && M->isInstance() && !isa<CXXConstructorDecl>(F)) {
tools/clang/lib/AST/Interp/State.cpp 145 if (auto *CD = dyn_cast_or_null<CXXConstructorDecl>(F->getCallee())) {
tools/clang/lib/AST/ItaniumCXXABI.cpp 228 const CXXConstructorDecl *
234 CXXConstructorDecl *CD) override {}
tools/clang/lib/AST/ItaniumMangle.cpp 152 void mangleCXXCtor(const CXXConstructorDecl *D, CXXCtorType Type,
157 void mangleCXXCtorComdat(const CXXConstructorDecl *D, raw_ostream &) override;
394 const CXXConstructorDecl *D, CXXCtorType Type)
728 if (auto *CD = dyn_cast<CXXConstructorDecl>(FD))
750 if (!(isa<CXXConstructorDecl>(FD) || isa<CXXDestructorDecl>(FD) ||
1426 cast<CXXConstructorDecl>(ND)->getInheritedConstructor()) {
4949 void ItaniumMangleContextImpl::mangleCXXCtor(const CXXConstructorDecl *D,
4963 void ItaniumMangleContextImpl::mangleCXXCtorComdat(const CXXConstructorDecl *D,
tools/clang/lib/AST/JSONNodeDumper.cpp 1300 CXXConstructorDecl *Ctor = CE->getConstructor();
tools/clang/lib/AST/Mangle.cpp 213 void MangleContext::mangleCtorBlock(const CXXConstructorDecl *CD,
247 if (const auto *CD = dyn_cast<CXXConstructorDecl>(DC))
247 if (const auto *CD = dyn_cast<CXXConstructorDecl>(DC))
393 if (const auto *CD = dyn_cast_or_null<CXXConstructorDecl>(ND)) {
393 if (const auto *CD = dyn_cast_or_null<CXXConstructorDecl>(ND)) {
425 if (const auto *CtorD = dyn_cast<CXXConstructorDecl>(D))
425 if (const auto *CtorD = dyn_cast<CXXConstructorDecl>(D))
450 if (const auto *CD = dyn_cast_or_null<CXXConstructorDecl>(ND))
450 if (const auto *CD = dyn_cast_or_null<CXXConstructorDecl>(ND))
tools/clang/lib/AST/MicrosoftCXXABI.cpp 68 llvm::SmallDenseMap<CXXRecordDecl *, CXXConstructorDecl *> RecordToCopyCtor;
92 const CXXConstructorDecl *
99 CXXConstructorDecl *CD) override {
tools/clang/lib/AST/MicrosoftMangle.cpp 161 void mangleCXXCatchableType(QualType T, const CXXConstructorDecl *CD,
180 void mangleCXXCtor(const CXXConstructorDecl *D, CXXCtorType Type,
296 const CXXConstructorDecl *D, CXXCtorType Type)
2190 } else if (isa<CXXConstructorDecl>(MD)) {
3186 QualType T, const CXXConstructorDecl *CD, CXXCtorType CT, uint32_t Size,
3317 void MicrosoftMangleContextImpl::mangleCXXCtor(const CXXConstructorDecl *D,
tools/clang/lib/AST/TextNodeDumper.cpp 896 CXXConstructorDecl *Ctor = Node->getConstructor();
tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp 596 const internal::VariadicDynCastAllOfMatcher<Decl, CXXConstructorDecl>
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>());
361 RetTypes.push_back(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/AnalysisDeclContext.cpp 282 if (const auto *C = dyn_cast<CXXConstructorDecl>(getDecl())) {
282 if (const auto *C = dyn_cast<CXXConstructorDecl>(getDecl())) {
tools/clang/lib/Analysis/CFG.cpp 1516 if (const auto *CD = dyn_cast_or_null<CXXConstructorDecl>(D)) {
1516 if (const auto *CD = dyn_cast_or_null<CXXConstructorDecl>(D)) {
tools/clang/lib/Analysis/CallGraph.cpp 97 CXXConstructorDecl *Ctor = E->getConstructor();
186 if (auto constructor = dyn_cast<CXXConstructorDecl>(D)) {
tools/clang/lib/Analysis/Consumed.cpp 772 CXXConstructorDecl *Constructor = Call->getConstructor();
1201 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
1201 if (const auto *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
tools/clang/lib/Analysis/ExprMutationAnalyzer.cpp 437 if (const auto *Ctor = dyn_cast<CXXConstructorDecl>(&Func)) {
437 if (const auto *Ctor = dyn_cast<CXXConstructorDecl>(&Func)) {
tools/clang/lib/Analysis/PathDiagnostic.cpp 938 if (const auto *CD = dyn_cast<CXXConstructorDecl>(MD)) {
938 if (const auto *CD = dyn_cast<CXXConstructorDecl>(MD)) {
tools/clang/lib/Analysis/ThreadSafety.cpp 1812 if (const auto *CD = dyn_cast<const CXXConstructorDecl>(D)) {
1812 if (const auto *CD = dyn_cast<const CXXConstructorDecl>(D)) {
2095 const CXXConstructorDecl *D = Exp->getConstructor();
2104 static CXXConstructorDecl *
2110 CXXConstructorDecl *CopyCtor = nullptr;
2111 for (auto *Ctor : RD->ctors()) {
2122 static Expr *buildFakeCtorCall(CXXConstructorDecl *CD, ArrayRef<Expr *> Args,
2162 CXXConstructorDecl *CtorD = findConstructorForByValueReturn(RD);
2275 if (isa<CXXConstructorDecl>(D))
tools/clang/lib/CodeGen/Address.h 108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGCXXABI.h 288 virtual void EmitCXXConstructors(const CXXConstructorDecl *D) = 0;
373 addImplicitConstructorArgs(CodeGenFunction &CGF, const CXXConstructorDecl *D,
458 virtual size_t getSrcArgforCopyCtor(const CXXConstructorDecl *,
tools/clang/lib/CodeGen/CGCall.cpp 314 if (auto *CD = dyn_cast<CXXConstructorDecl>(MD)) {
390 const CXXConstructorDecl *D,
516 if (isa<CXXConstructorDecl>(GD.getDecl()) ||
539 CodeGenTypes::arrangeMSCtorClosure(const CXXConstructorDecl *CD,
tools/clang/lib/CodeGen/CGClass.cpp 576 auto *CD = dyn_cast<CXXConstructorDecl>(D);
609 const CXXConstructorDecl *Constructor,
711 const CXXConstructorDecl *Ctor) {
761 Prologue ? cast<CXXConstructorDecl>(CurGD.getDecl())->getParent()
823 const CXXConstructorDecl *Ctor = cast<CXXConstructorDecl>(CurGD.getDecl());
823 const CXXConstructorDecl *Ctor = cast<CXXConstructorDecl>(CurGD.getDecl());
1036 const CXXConstructorDecl *CD,
1068 ConstructorMemcpyizer(CodeGenFunction &CGF, const CXXConstructorDecl *CD,
1129 const CXXConstructorDecl *ConstructorDecl;
1257 void CodeGenFunction::EmitCtorPrologue(const CXXConstructorDecl *CD,
1265 CXXConstructorDecl::init_const_iterator B = CD->init_begin(),
1892 const CXXConstructorDecl *ctor, const ArrayType *arrayType,
1912 void CodeGenFunction::EmitCXXAggrConstructorCall(const CXXConstructorDecl *ctor,
2028 void CodeGenFunction::EmitCXXConstructorCall(const CXXConstructorDecl *D,
2080 const CXXConstructorDecl *Ctor,
2103 void CodeGenFunction::EmitCXXConstructorCall(const CXXConstructorDecl *D,
2181 const CXXConstructorDecl *D, bool ForVirtualBase, Address This,
2203 const auto *OuterCtor = cast<CXXConstructorDecl>(CurCodeDecl);
2203 const auto *OuterCtor = cast<CXXConstructorDecl>(CurCodeDecl);
2228 const CXXConstructorDecl *Ctor, CXXCtorType CtorType, bool ForVirtualBase,
2301 CodeGenFunction::EmitSynthesizedCXXCopyCtorCall(const CXXConstructorDecl *D,
2328 CodeGenFunction::EmitDelegateCXXConstructorCall(const CXXConstructorDecl *Ctor,
2385 CodeGenFunction::EmitDelegatingCXXConstructorCall(const CXXConstructorDecl *Ctor,
tools/clang/lib/CodeGen/CGDebugInfo.cpp 1541 isa<CXXConstructorDecl>(Method) || isa<CXXDestructorDecl>(Method);
1617 if (const auto *CXXC = dyn_cast<CXXConstructorDecl>(Method)) {
1617 if (const auto *CXXC = dyn_cast<CXXConstructorDecl>(Method)) {
tools/clang/lib/CodeGen/CGDecl.cpp 288 if (const auto *CD = dyn_cast<CXXConstructorDecl>(DC))
288 if (const auto *CD = dyn_cast<CXXConstructorDecl>(DC))
1082 if (const auto *CC = dyn_cast<CXXConstructorDecl>(FD))
1082 if (const auto *CC = dyn_cast<CXXConstructorDecl>(FD))
1652 if (CXXConstructorDecl *Constructor = Construct->getConstructor())
tools/clang/lib/CodeGen/CGException.cpp 1169 isa<CXXConstructorDecl>(CurCodeDecl);
tools/clang/lib/CodeGen/CGExprCXX.cpp 267 if (const CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(MD)) {
267 if (const CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(MD)) {
569 const CXXConstructorDecl *CD = E->getConstructor();
645 const CXXConstructorDecl *CD = E->getConstructor();
1133 CXXConstructorDecl *Ctor = CCE->getConstructor();
tools/clang/lib/CodeGen/CGExprConstant.cpp 1605 const CXXConstructorDecl *CD = E->getConstructor();
tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp 9619 for (const CXXConstructorDecl *Ctor : RD->ctors()) {
tools/clang/lib/CodeGen/CGStmtOpenMP.cpp 4164 if (const auto *D = dyn_cast<CXXConstructorDecl>(CGF.CurFuncDecl))
4164 if (const auto *D = dyn_cast<CXXConstructorDecl>(CGF.CurFuncDecl))
tools/clang/lib/CodeGen/CodeGenFunction.cpp 1002 EmitTypeCheck(isa<CXXConstructorDecl>(MD) ? TCK_ConstructorCall
1103 if (const CXXConstructorDecl *CD = dyn_cast<CXXConstructorDecl>(FD))
1103 if (const CXXConstructorDecl *CD = dyn_cast<CXXConstructorDecl>(FD))
1122 if (MD && (isa<CXXConstructorDecl>(MD) || isa<CXXDestructorDecl>(MD)))
1189 else if (isa<CXXConstructorDecl>(FD))
tools/clang/lib/CodeGen/CodeGenFunction.h 1490 cast<CXXConstructorDecl>(GD.getDecl());
1847 static bool IsConstructorDelegationValid(const CXXConstructorDecl *Ctor);
1896 void EmitCtorPrologue(const CXXConstructorDecl *CD, CXXCtorType Type,
2491 void EmitDelegateCXXConstructorCall(const CXXConstructorDecl *Ctor,
2499 void EmitDelegatingCXXConstructorCall(const CXXConstructorDecl *Ctor,
2506 void EmitInlinedInheritingCXXConstructorCall(const CXXConstructorDecl *Ctor,
2515 void EmitInheritedCXXConstructorCall(const CXXConstructorDecl *D,
2520 void EmitCXXConstructorCall(const CXXConstructorDecl *D, CXXCtorType Type,
2524 void EmitCXXConstructorCall(const CXXConstructorDecl *D, CXXCtorType Type,
2537 void EmitSynthesizedCXXCopyCtorCall(const CXXConstructorDecl *D,
2541 void EmitCXXAggrConstructorCall(const CXXConstructorDecl *D,
2548 void EmitCXXAggrConstructorCall(const CXXConstructorDecl *D,
tools/clang/lib/CodeGen/CodeGenModule.cpp 993 if (const auto *D = dyn_cast<CXXConstructorDecl>(ND))
993 if (const auto *D = dyn_cast<CXXConstructorDecl>(ND))
1078 if (const auto *CD = dyn_cast<CXXConstructorDecl>(CanonicalGD.getDecl())) {
1078 if (const auto *CD = dyn_cast<CXXConstructorDecl>(CanonicalGD.getDecl())) {
1115 else if (const auto *CD = dyn_cast<CXXConstructorDecl>(D))
1115 else if (const auto *CD = dyn_cast<CXXConstructorDecl>(D))
1197 if (isa<CXXConstructorDecl>(D) &&
1198 cast<CXXConstructorDecl>(D)->isInheritingConstructor() &&
1461 return !MD->isStatic() && !MD->isVirtual() && !isa<CXXConstructorDecl>(MD) &&
1850 if (isa<CXXConstructorDecl>(FD) || isa<CXXDestructorDecl>(FD))
2813 if (isa<CXXConstructorDecl>(Method) || isa<CXXDestructorDecl>(Method))
3094 if (const auto *CD = dyn_cast<CXXConstructorDecl>(FDDef))
3094 if (const auto *CD = dyn_cast<CXXConstructorDecl>(FDDef))
3595 if (isa<CXXConstructorDecl>(D) || isa<CXXDestructorDecl>(D))
5302 getCXXABI().EmitCXXConstructors(cast<CXXConstructorDecl>(D));
5534 GlobalDecl GD(cast<CXXConstructorDecl>(D), Ctor_Base);
tools/clang/lib/CodeGen/CodeGenPGO.cpp 774 if (const auto *CCD = dyn_cast<CXXConstructorDecl>(D))
774 if (const auto *CCD = dyn_cast<CXXConstructorDecl>(D))
tools/clang/lib/CodeGen/CodeGenTypes.h 242 const CXXConstructorDecl *D,
254 const CGFunctionInfo &arrangeMSCtorClosure(const CXXConstructorDecl *CD,
tools/clang/lib/CodeGen/ItaniumCXXABI.cpp 93 if (isa<CXXConstructorDecl>(GD.getDecl())) {
203 void EmitCXXConstructors(const CXXConstructorDecl *D) override;
225 addImplicitConstructorArgs(CodeGenFunction &CGF, const CXXConstructorDecl *D,
294 size_t getSrcArgforCopyCtor(const CXXConstructorDecl *,
462 return (isa<CXXConstructorDecl>(GD.getDecl()) || (
499 return isa<CXXConstructorDecl>(GD.getDecl()) ||
1501 void ItaniumCXXABI::EmitCXXConstructors(const CXXConstructorDecl *D) {
1526 if ((isa<CXXConstructorDecl>(GD.getDecl()) ? GD.getCtorType() == Ctor_Base
1600 CodeGenFunction &CGF, const CXXConstructorDecl *D, CXXCtorType Type,
2745 if (isa<CXXConstructorDecl>(MD) && GD.getCtorType() == Ctor_Base)
3898 const auto *CD = cast<CXXConstructorDecl>(MD);
3898 const auto *CD = cast<CXXConstructorDecl>(MD);
3956 auto *CD = dyn_cast<CXXConstructorDecl>(MD);
tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp 80 size_t getSrcArgforCopyCtor(const CXXConstructorDecl *CD,
173 void EmitCXXConstructors(const CXXConstructorDecl *D) override;
255 addImplicitConstructorArgs(CodeGenFunction &CGF, const CXXConstructorDecl *D,
746 llvm::Function *getAddrOfCXXCtorClosure(const CXXConstructorDecl *CD,
1043 return isa<CXXConstructorDecl>(GD.getDecl());
1075 for (const CXXConstructorDecl *Ctor : RD->ctors())
1217 void MicrosoftCXXABI::EmitCXXConstructors(const CXXConstructorDecl *D) {
1270 auto *CD = dyn_cast<CXXConstructorDecl>(GD.getDecl());
1454 if (isa<CXXConstructorDecl>(MD) && MD->getParent()->getNumVBases()) {
1525 if (isa<CXXConstructorDecl>(MD) && MD->getParent()->getNumVBases()) {
1545 CodeGenFunction &CGF, const CXXConstructorDecl *D, CXXCtorType Type,
1592 if (ForVirtualBase && isa<CXXConstructorDecl>(CGF.CurCodeDecl)) {
3854 if (auto *ctor = dyn_cast<CXXConstructorDecl>(GD.getDecl())) {
3884 MicrosoftCXXABI::getAddrOfCXXCtorClosure(const CXXConstructorDecl *CD,
4007 const CXXConstructorDecl *CD =
tools/clang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp 91 if (isa<CXXConstructorDecl>(ND) || isa<CXXDestructorDecl>(ND))
tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp 5083 CXXConstructorDecl *CXXDecl = CExp->getConstructor();
tools/clang/lib/Index/IndexDecl.cpp 248 if (const CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(D)) {
248 if (const CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(D)) {
tools/clang/lib/Index/IndexSymbol.cpp 257 auto *CD = cast<CXXConstructorDecl>(D);
292 if (isa<CXXConstructorDecl>(MD))
tools/clang/lib/Sema/JumpDiagnostics.cpp 194 const CXXConstructorDecl *Ctor = CCE->getConstructor();
tools/clang/lib/Sema/MultiplexExternalSemaSource.cpp 265 SmallVectorImpl<CXXConstructorDecl*> &Decls) {
tools/clang/lib/Sema/SemaAccess.cpp 1072 if (isa<CXXConstructorDecl>(D) || isa<CXXDestructorDecl>(D) ||
1074 isa<CXXConstructorDecl>(
1611 CXXConstructorDecl *Constructor,
1654 CXXConstructorDecl *Constructor,
1675 ObjectClass = cast<CXXConstructorDecl>(CurContext)->getParent();
tools/clang/lib/Sema/SemaCUDA.cpp 407 bool Sema::isEmptyCudaConstructor(SourceLocation Loc, CXXConstructorDecl *CD) {
tools/clang/lib/Sema/SemaCodeComplete.cpp 1052 return isa<CXXConstructorDecl>(ND);
5245 CXXConstructorDecl *Constructor =
5246 dyn_cast<CXXConstructorDecl>(ConstructorDecl);
5566 auto *Constructor = dyn_cast<CXXConstructorDecl>(ConstructorD);
5566 auto *Constructor = dyn_cast<CXXConstructorDecl>(ConstructorD);
tools/clang/lib/Sema/SemaCoroutine.cpp 224 if (MD && isa<CXXConstructorDecl>(MD))
tools/clang/lib/Sema/SemaDecl.cpp 1597 if (const CXXConstructorDecl *CD = dyn_cast<CXXConstructorDecl>(D))
1597 if (const CXXConstructorDecl *CD = dyn_cast<CXXConstructorDecl>(D))
1800 CXXConstructorDecl *CD = Construct->getConstructor();
3499 if (isa<CXXConstructorDecl>(OldMethod))
6213 } else if (isa<CXXConstructorDecl>(MD) || isa<CXXDestructorDecl>(MD)) {
7271 if (isa<CXXConstructorDecl>(NewDC))
8201 return CXXConstructorDecl::Create(
8807 } else if (!isa<CXXConstructorDecl>(NewFD) &&
9764 if (isa<CXXConstructorDecl>(NewCXXFD))
10320 !MD->isStatic() && !isa<CXXConstructorDecl>(MD) &&
10432 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(NewFD)) {
10432 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(NewFD)) {
13832 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(FD))
13832 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(FD))
13995 if (FD && isa<CXXConstructorDecl>(FD) && isa<CXXTryStmt>(Body))
tools/clang/lib/Sema/SemaDeclAttr.cpp 2727 !isa<CXXConstructorDecl>(D)) {
tools/clang/lib/Sema/SemaDeclCXX.cpp 625 if (isa<CXXConstructorDecl>(New) &&
1645 PD->getSourceRange(), isa<CXXConstructorDecl>(FD),
1693 << isa<CXXConstructorDecl>(NewFD)
1702 if (!isa<CXXConstructorDecl>(NewFD)) {
1796 << isa<CXXConstructorDecl>(Dcl);
1812 << isa<CXXConstructorDecl>(Dcl);
1838 << isa<CXXConstructorDecl>(Dcl)
1845 isa<CXXConstructorDecl>(Dcl)))
1855 << isa<CXXConstructorDecl>(Dcl);
1867 << isa<CXXConstructorDecl>(Dcl);
1885 << isa<CXXConstructorDecl>(Dcl) << Dcl->isConsteval();
1985 if (isa<CXXConstructorDecl>(Dcl)) {
2098 << isa<CXXConstructorDecl>(Dcl) << Dcl->isConsteval();
2137 << isa<CXXConstructorDecl>(Dcl);
2166 << isa<CXXConstructorDecl>(Dcl);
2172 << isa<CXXConstructorDecl>(Dcl);
2175 if (const CXXConstructorDecl *Constructor
2176 = dyn_cast<CXXConstructorDecl>(Dcl)) {
2302 << isa<CXXConstructorDecl>(Dcl);
3466 const CXXConstructorDecl *Constructor;
3661 void CheckInitializer(Expr *E, const CXXConstructorDecl *FieldConstructor,
3791 Sema &SemaRef, const CXXConstructorDecl *Constructor) {
4065 CXXConstructorDecl *Constructor
4066 = dyn_cast<CXXConstructorDecl>(ConstructorD);
4506 BuildImplicitBaseInitializer(Sema &SemaRef, CXXConstructorDecl *Constructor,
4589 BuildImplicitMemberInitializer(Sema &SemaRef, CXXConstructorDecl *Constructor,
4750 CXXConstructorDecl *Ctor;
4757 BaseAndFieldInfo(Sema &S, CXXConstructorDecl *Ctor, bool ErrorsInInits)
4922 Sema::SetDelegatingInitializer(CXXConstructorDecl *Constructor,
4943 bool Sema::SetCtorInitializers(CXXConstructorDecl *Constructor, bool AnyErrors,
5144 Sema &SemaRef, const CXXConstructorDecl *Constructor,
5310 CXXConstructorDecl *Constructor
5311 = dyn_cast<CXXConstructorDecl>(ConstructorDecl);
5495 if (CXXConstructorDecl *Constructor
5496 = dyn_cast<CXXConstructorDecl>(CDtorDecl)) {
5822 CXXConstructorDecl *LastExportedDefaultCtor = nullptr;
5825 auto *CD = dyn_cast<CXXConstructorDecl>(Member);
5825 auto *CD = dyn_cast<CXXConstructorDecl>(Member);
5962 auto *Ctor = dyn_cast<CXXConstructorDecl>(MD);
5962 auto *Ctor = dyn_cast<CXXConstructorDecl>(MD);
6097 if (const CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(FD)) {
6097 if (const CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(FD)) {
6153 cast<CXXConstructorDecl>(MD));
6156 S.DefineImplicitCopyConstructor(DefaultLoc, cast<CXXConstructorDecl>(MD));
6165 S.DefineImplicitMoveConstructor(DefaultLoc, cast<CXXConstructorDecl>(MD));
6206 for (const CXXConstructorDecl *CD : D->ctors()) {
6276 auto *CD = dyn_cast<CXXConstructorDecl>(MD);
6626 std::pair<CXXConstructorDecl *, bool>
6627 findConstructorForBase(CXXRecordDecl *Base, CXXConstructorDecl *Ctor) const {
6649 CXXConstructorDecl *InheritedCtor = nullptr,
6679 bool ConstArg, CXXConstructorDecl *InheritedCtor = nullptr,
6794 auto *CD = cast<CXXConstructorDecl>(MD);
6794 auto *CD = cast<CXXConstructorDecl>(MD);
6987 : isa<CXXConstructorDecl>(MD))) &&
7239 auto *BaseCtor =
7240 cast<CXXConstructorDecl>(MD)->getInheritedConstructor().getConstructor();
7241 if (auto *MD = ICI->findConstructorForBase(Class, BaseCtor).first)
7684 for (auto *I : RD->ctors()) {
7802 CXXConstructorDecl *DefCtor = nullptr;
7805 for (auto *CI : RD->ctors()) {
7904 static CXXConstructorDecl *findUserDeclaredCtor(CXXRecordDecl *RD) {
7905 for (auto *CI : RD->ctors())
7912 if (CXXConstructorDecl *CD =
7913 dyn_cast<CXXConstructorDecl>(TI->getTemplatedDecl()))
7953 if (CXXConstructorDecl *CD = findUserDeclaredCtor(SubRD))
8592 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(Method))
8592 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(Method))
8690 void Sema::CheckConstructor(CXXConstructorDecl *Constructor) {
10212 if (NonTemplateTarget && isa<CXXConstructorDecl>(NonTemplateTarget)) {
11430 CXXConstructorDecl *Sema::DeclareImplicitDefaultConstructor(
11456 CXXConstructorDecl *DefaultCon = CXXConstructorDecl::Create(
11456 CXXConstructorDecl *DefaultCon = CXXConstructorDecl::Create(
11494 CXXConstructorDecl *Constructor) {
11541 CXXConstructorDecl *
11543 CXXConstructorDecl *BaseCtor,
11556 if (declaresSameEntity(cast<CXXConstructorDecl>(Ctor)
11560 return cast<CXXConstructorDecl>(Ctor);
11577 CXXConstructorDecl *DerivedCtor = CXXConstructorDecl::Create(
11577 CXXConstructorDecl *DerivedCtor = CXXConstructorDecl::Create(
11623 void Sema::NoteDeletedInheritingConstructor(CXXConstructorDecl *Ctor) {
11631 CXXConstructorDecl *Constructor) {
11654 CXXConstructorDecl *InheritedCtor =
12411 } else if (!isa<CXXConstructorDecl>(CopyOp) &&
12415 for (auto *I : RD->ctors()) {
12422 } else if (isa<CXXConstructorDecl>(CopyOp) &&
12438 << RD << /*copy assignment*/!isa<CXXConstructorDecl>(CopyOp)
13019 CXXConstructorDecl *Sema::DeclareImplicitCopyConstructor(
13053 CXXConstructorDecl *CopyConstructor = CXXConstructorDecl::Create(
13053 CXXConstructorDecl *CopyConstructor = CXXConstructorDecl::Create(
13110 CXXConstructorDecl *CopyConstructor) {
13157 CXXConstructorDecl *Sema::DeclareImplicitMoveConstructor(
13185 CXXConstructorDecl *MoveConstructor = CXXConstructorDecl::Create(
13185 CXXConstructorDecl *MoveConstructor = CXXConstructorDecl::Create(
13242 CXXConstructorDecl *MoveConstructor) {
13418 CXXConstructorDecl *Constructor,
13456 CXXConstructorDecl *Constructor,
13481 CXXConstructorDecl *Constructor,
13635 Sema::CompleteConstructorCall(CXXConstructorDecl *Constructor,
15228 (!isa<CXXConstructorDecl>(FD) &&
15842 void DelegatingCycleHelper(CXXConstructorDecl* Ctor,
15843 llvm::SmallPtrSet<CXXConstructorDecl*, 4> &Valid,
15844 llvm::SmallPtrSet<CXXConstructorDecl*, 4> &Invalid,
15845 llvm::SmallPtrSet<CXXConstructorDecl*, 4> &Current,
15850 CXXConstructorDecl *Target = Ctor->getTargetConstructor();
15858 cast_or_null<CXXConstructorDecl>(FNTarget));
15861 CXXConstructorDecl *Canonical = Ctor->getCanonicalDecl(),
15886 CXXConstructorDecl *C = Target;
15893 cast<CXXConstructorDecl>(FNTarget));
15907 llvm::SmallPtrSet<CXXConstructorDecl*, 4> Valid, Invalid, Current;
tools/clang/lib/Sema/SemaExpr.cpp 118 auto *Ctor = dyn_cast<CXXConstructorDecl>(Decl);
118 auto *Ctor = dyn_cast<CXXConstructorDecl>(Decl);
255 auto *Ctor = dyn_cast<CXXConstructorDecl>(FD);
255 auto *Ctor = dyn_cast<CXXConstructorDecl>(FD);
279 ((isa<CXXConstructorDecl>(MD) &&
280 cast<CXXConstructorDecl>(MD)->isDefaultConstructor()) ||
283 << !isa<CXXConstructorDecl>(MD);
4940 if (dyn_cast_or_null<CXXConstructorDecl>(FDecl))
15421 if (auto *Constructor = dyn_cast<CXXConstructorDecl>(Func))
15421 if (auto *Constructor = dyn_cast<CXXConstructorDecl>(Func))
15489 if (CXXConstructorDecl *Constructor =
15490 dyn_cast<CXXConstructorDecl>(Func)) {
15491 Constructor = cast<CXXConstructorDecl>(Constructor->getFirstDecl());
tools/clang/lib/Sema/SemaExprCXX.cpp 923 CXXConstructorDecl *CD = LookupCopyingConstructor(Subobject, 0);
3038 bool hasMatchingNewInCtor(const CXXConstructorDecl *CD);
3089 const CXXConstructorDecl *CD) {
3097 for (const auto *CI : cast<const CXXConstructorDecl>(Definition)->inits()) {
3126 for (const auto *CD : RD->ctors()) {
3736 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(Method);
3736 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(Method);
3752 CastLoc, Ty, FoundDecl, cast<CXXConstructorDecl>(Method),
3823 const CXXConstructorDecl *Ctor = cast<CXXConstructorDecl>(FD);
3823 const CXXConstructorDecl *Ctor = cast<CXXConstructorDecl>(FD);
3908 if (CompleteConstructorCall(cast<CXXConstructorDecl>(SCS.CopyConstructor),
4826 auto *Constructor = cast<CXXConstructorDecl>(ND->getUnderlyingDecl());
4865 auto *Constructor = cast<CXXConstructorDecl>(ND->getUnderlyingDecl());
tools/clang/lib/Sema/SemaExprMember.cpp 999 (isa<CXXDestructorDecl>(FD) || isa<CXXConstructorDecl>(FD)) &&
tools/clang/lib/Sema/SemaInit.cpp 532 CXXConstructorDecl *CtorDecl = cast<CXXConstructorDecl>(Best->Function);
532 CXXConstructorDecl *CtorDecl = cast<CXXConstructorDecl>(Best->Function);
1232 auto *CD = SemaRef.LookupDefaultConstructor(CXXRD);
3623 DeclAccessPair FoundDecl, CXXConstructorDecl *Constructor, QualType T,
4122 CXXConstructorDecl *CtorDecl = cast<CXXConstructorDecl>(Best->Function);
4122 CXXConstructorDecl *CtorDecl = cast<CXXConstructorDecl>(Best->Function);
5037 CXXConstructorDecl *CD = S.LookupDefaultConstructor(ClassDecl);
5232 if (isa<CXXConstructorDecl>(Function)) {
6170 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(Best->Function);
6170 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(Best->Function);
6286 S.CheckConstructorAccess(Loc, cast<CXXConstructorDecl>(Best->Function),
6365 CXXConstructorDecl *Constructor
6366 = cast<CXXConstructorDecl>(Step.Function.Function);
6821 const auto *Ctor = CCE->getConstructor();
8050 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(Fn)) {
8050 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(Fn)) {
9010 isa<CXXConstructorDecl>(S.CurContext)) {
9015 CXXConstructorDecl *Constructor
9016 = cast<CXXConstructorDecl>(S.CurContext);
9094 isa<CXXConstructorDecl>(S.CurContext)) {
9098 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(S.CurContext);
9098 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(S.CurContext);
9138 CXXConstructorDecl *CtorDecl = cast<CXXConstructorDecl>(Best->Function);
9138 CXXConstructorDecl *CtorDecl = cast<CXXConstructorDecl>(Best->Function);
tools/clang/lib/Sema/SemaLookup.cpp 3277 CXXConstructorDecl *Sema::LookupDefaultConstructor(CXXRecordDecl *Class) {
3282 return cast_or_null<CXXConstructorDecl>(Result.getMethod());
3286 CXXConstructorDecl *Sema::LookupCopyingConstructor(CXXRecordDecl *Class,
3294 return cast_or_null<CXXConstructorDecl>(Result.getMethod());
3298 CXXConstructorDecl *Sema::LookupMovingConstructor(CXXRecordDecl *Class,
3304 return cast_or_null<CXXConstructorDecl>(Result.getMethod());
tools/clang/lib/Sema/SemaOpenMP.cpp 5122 if (isa<CXXConstructorDecl>(FD)) {
5444 if (const CXXConstructorDecl *Ctor = CE->getConstructor())
5732 if (const CXXConstructorDecl *Ctor = CE->getConstructor())
tools/clang/lib/Sema/SemaOverload.cpp 1207 !isa<CXXConstructorDecl>(NewMethod))
1299 if (CXXConstructorDecl *Constructor
1300 = dyn_cast<CXXConstructorDecl>(ICS.UserDefined.ConversionFunction)) {
3243 CXXConstructorDecl *Constructor,
3296 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(Best->Function);
3296 CXXConstructorDecl *Constructor = cast<CXXConstructorDecl>(Best->Function);
3471 if (CXXConstructorDecl *Constructor
3472 = dyn_cast<CXXConstructorDecl>(Best->Function)) {
6095 if (!isa<CXXConstructorDecl>(Method)) {
6119 CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(Function);
6119 CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(Function);
6613 !isa<CXXConstructorDecl>(FD)))) {
6916 !isa<CXXConstructorDecl>(Candidate.Function);
6953 bool HasThisConversion = Method && !isa<CXXConstructorDecl>(Method);
9417 isa<CXXConstructorDecl>(Cand1.Function) !=
9418 isa<CXXConstructorDecl>(Cand2.Function))
9419 return isa<CXXConstructorDecl>(Cand1.Function);
9723 if (CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(Fn)) {
9723 if (CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(Fn)) {
9926 if (isa<CXXMethodDecl>(Fn) && !isa<CXXConstructorDecl>(Fn)) {
10568 ES = cast<CXXConstructorDecl>(Cand->Function)->getExplicitSpecifier();
10696 if (cast<CXXConstructorDecl>(Fn)->isCopyOrMoveConstructor())
11001 !isa<CXXConstructorDecl>(Cand->Function)) {
13412 if (getLangOpts().MicrosoftExt && isa<CXXConstructorDecl>(Func)) {
13413 AddOverloadCandidate(cast<CXXConstructorDecl>(Func), I.getPair(), Args,
13550 if ((isa<CXXConstructorDecl>(CurContext) ||
tools/clang/lib/Sema/SemaStmt.cpp 307 if (const CXXConstructorDecl *Ctor = CE->getConstructor()) {
3069 if (isa<CXXConstructorDecl>(FD)) {
3087 if (isa<CXXConstructorDecl>(FD)) {
3660 else if (isa<CXXConstructorDecl>(CurDecl))
3676 if (isa<CXXConstructorDecl>(CurDecl) ||
3706 else if (isa<CXXConstructorDecl>(CurDecl))
tools/clang/lib/Sema/SemaTemplate.cpp 1761 CXXConstructorDecl *CD) {
2085 auto *CD =
2086 dyn_cast_or_null<CXXConstructorDecl>(FTD ? FTD->getTemplatedDecl() : D);
tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp 2156 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
2156 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(D)) {
2157 Method = CXXConstructorDecl::Create(
2384 Decl *TemplateDeclInstantiator::VisitCXXConstructorDecl(CXXConstructorDecl *D) {
4152 CXXConstructorDecl *Ctor) {
4364 if (CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(Function)) {
4364 if (CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(Function)) {
4366 InstantiateMemInitializers(Ctor, cast<CXXConstructorDecl>(PatternDecl),
4918 Sema::InstantiateMemInitializers(CXXConstructorDecl *New,
4919 const CXXConstructorDecl *Tmpl,
tools/clang/lib/Sema/TreeTransform.h11254 CXXConstructorDecl *Constructor = cast_or_null<CXXConstructorDecl>(
11254 CXXConstructorDecl *Constructor = cast_or_null<CXXConstructorDecl>(
11294 CXXConstructorDecl *Constructor = cast_or_null<CXXConstructorDecl>(
11294 CXXConstructorDecl *Constructor = cast_or_null<CXXConstructorDecl>(
11343 CXXConstructorDecl *Constructor = cast_or_null<CXXConstructorDecl>(
11343 CXXConstructorDecl *Constructor = cast_or_null<CXXConstructorDecl>(
tools/clang/lib/Serialization/ASTReader.cpp 8693 SmallVectorImpl<CXXConstructorDecl *> &Decls) {
8695 CXXConstructorDecl *D
8696 = dyn_cast_or_null<CXXConstructorDecl>(GetDecl(DelegatingCtorDecls[I]));
10955 if (isa<CXXConstructorDecl>(D)) return DiagConstructor;
tools/clang/lib/Serialization/ASTReaderDecl.cpp 144 T *ReadDeclAs() {
145 return Record.readDeclAs<T>();
371 void VisitCXXConstructorDecl(CXXConstructorDecl *D);
511 if (auto *CD = dyn_cast<CXXConstructorDecl>(FD)) {
511 if (auto *CD = dyn_cast<CXXConstructorDecl>(FD)) {
1922 void ASTDeclReader::VisitCXXConstructorDecl(CXXConstructorDecl *D) {
1928 auto *Ctor = ReadDeclAs<CXXConstructorDecl>();
1928 auto *Ctor = ReadDeclAs<CXXConstructorDecl>();
2987 if (const auto *CtorX = dyn_cast<CXXConstructorDecl>(X)) {
2987 if (const auto *CtorX = dyn_cast<CXXConstructorDecl>(X)) {
2988 const auto *CtorY = cast<CXXConstructorDecl>(Y);
2988 const auto *CtorY = cast<CXXConstructorDecl>(Y);
3712 D = CXXConstructorDecl::CreateDeserialized(Context, ID, Record.readInt());
tools/clang/lib/Serialization/ASTReaderStmt.cpp 95 T *ReadDeclAs() {
96 return Record.readDeclAs<T>();
1463 E->Constructor = ReadDeclAs<CXXConstructorDecl>();
1472 E->Constructor = ReadDeclAs<CXXConstructorDecl>();
tools/clang/lib/Serialization/ASTWriterDecl.cpp 92 void VisitCXXConstructorDecl(CXXConstructorDecl *D);
1354 void ASTDeclWriter::VisitCXXConstructorDecl(CXXConstructorDecl *D) {
2423 if (auto *CD = dyn_cast<CXXConstructorDecl>(FD)) {
tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp 264 recordFixedType(Target, cast<CXXConstructorDecl>(LCtx->getDecl()), C);
tools/clang/lib/StaticAnalyzer/Checkers/GTestChecker.cpp 193 const CXXConstructorDecl *CtorDecl = CtorCall->getDecl();
tools/clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp 483 const auto *Ctr = cast<CXXConstructorDecl>(Call.getDecl());
483 const auto *Ctr = cast<CXXConstructorDecl>(Call.getDecl());
724 if (cast<CXXConstructorDecl>(Func)->isMoveConstructor()) {
1664 if (const auto *Ctor = dyn_cast<CXXConstructorDecl>(Method)) {
1664 if (const auto *Ctor = dyn_cast<CXXConstructorDecl>(Method)) {
tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp 1315 const CXXConstructorDecl *CtorD = ConstructE->getConstructor();
tools/clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp 456 const auto *ConstructorDecl = dyn_cast<CXXConstructorDecl>(MethodDecl);
456 const auto *ConstructorDecl = dyn_cast<CXXConstructorDecl>(MethodDecl);
535 auto *CtorDec = dyn_cast_or_null<CXXConstructorDecl>(CtxDec);
tools/clang/lib/StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp 44 if (const CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(D))
44 if (const CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(D))
tools/clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp 92 if (const auto *CD =
93 dyn_cast<CXXConstructorDecl>(C.getStackFrame()->getDecl())) {
tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp 111 getConstructedRegion(const CXXConstructorDecl *CtorDecl,
117 static bool willObjectBeAnalyzedLater(const CXXConstructorDecl *Ctor,
141 const auto *CtorDecl = dyn_cast_or_null<CXXConstructorDecl>(
141 const auto *CtorDecl = dyn_cast_or_null<CXXConstructorDecl>(
458 getConstructedRegion(const CXXConstructorDecl *CtorDecl,
473 static bool willObjectBeAnalyzedLater(const CXXConstructorDecl *Ctor,
484 const auto *OtherCtor = dyn_cast<CXXConstructorDecl>(LC->getDecl());
484 const auto *OtherCtor = dyn_cast<CXXConstructorDecl>(LC->getDecl());
516 if (isa<CXXConstructorDecl>(M))
tools/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp 175 if (isa<CXXConstructorDecl>(MD)) {
tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp 2708 if (const auto *MD = dyn_cast<CXXConstructorDecl>(D)) {
2708 if (const auto *MD = dyn_cast<CXXConstructorDecl>(D)) {
tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp 245 else if (const auto *CD = dyn_cast<CXXConstructorDecl>(D))
245 else if (const auto *CD = dyn_cast<CXXConstructorDecl>(D))
tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp 828 const auto *decl = cast<CXXConstructorDecl>(stackFrame->getDecl());
828 const auto *decl = cast<CXXConstructorDecl>(stackFrame->getDecl());
tools/clang/lib/StaticAnalyzer/Core/IssueHash.cpp 42 if (!isa<CXXConstructorDecl>(Target) && !isa<CXXDestructorDecl>(Target) &&
tools/clang/lib/Tooling/Refactoring/Rename/USRFindingAction.cpp 46 if (const auto *CtorDecl = dyn_cast<CXXConstructorDecl>(FoundDecl))
46 if (const auto *CtorDecl = dyn_cast<CXXConstructorDecl>(FoundDecl))
136 for (const auto *CtorDecl : RecordDecl->ctors())
tools/clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp 228 bool VisitCXXConstructorDecl(const CXXConstructorDecl *CD) {
tools/clang/tools/extra/clang-reorder-fields/ReorderFieldsAction.cpp 159 const CXXConstructorDecl *CtorDecl, ArrayRef<unsigned> NewFieldsOrder,
280 for (const auto *C : CXXRD->ctors())
281 if (const auto *D = dyn_cast<CXXConstructorDecl>(C->getDefinition()))
281 if (const auto *D = dyn_cast<CXXConstructorDecl>(C->getDefinition()))
282 reorderFieldsInConstructor(cast<const CXXConstructorDecl>(D),
tools/clang/tools/extra/clang-tidy/bugprone/CopyConstructorInitCheck.cpp 38 const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor");
38 const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor");
67 for (const auto *Ctor : BaseClass->ctors()) {
tools/clang/tools/extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.cpp 112 const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor");
112 const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor");
119 for (const auto *OtherCtor : Ctor->getParent()->ctors()) {
135 for (const auto *OtherCtor : Ctor->getParent()->ctors()) {
tools/clang/tools/extra/clang-tidy/bugprone/VirtualNearMissCheck.cpp 188 bool IsPossible = !BaseMD->isImplicit() && !isa<CXXConstructorDecl>(BaseMD) &&
tools/clang/tools/extra/clang-tidy/cert/StaticObjectExceptionCheck.cpp 54 << (isa<CXXConstructorDecl>(Func) ? 0 : 1);
tools/clang/tools/extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp 114 const CXXConstructorDecl &Constructor) const {
231 const CXXConstructorDecl *Ctor,
299 if (const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor")) {
299 if (const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor")) {
395 const CXXConstructorDecl *Ctor) {
485 const CXXConstructorDecl *Ctor) {
tools/clang/tools/extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.h 49 const CXXConstructorDecl *Ctor);
55 const CXXConstructorDecl *Ctor);
tools/clang/tools/extra/clang-tidy/cppcoreguidelines/SlicingCheck.cpp 81 if (isa<CXXConstructorDecl>(Method) || isa<CXXDestructorDecl>(Method))
tools/clang/tools/extra/clang-tidy/google/ExplicitConstructorCheck.cpp 105 const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor");
105 const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor");
tools/clang/tools/extra/clang-tidy/misc/UnusedParametersCheck.cpp 188 (isa<CXXConstructorDecl>(Function) &&
189 cast<CXXConstructorDecl>(Function)->getNumCtorInitializers() > 0))
tools/clang/tools/extra/clang-tidy/modernize/PassByValueCheck.cpp 41 for (const CXXConstructorDecl *Ctor : Node.ctors()) {
60 static bool paramReferredExactlyOnce(const CXXConstructorDecl *Ctor,
77 bool hasExactlyOneUsageIn(const CXXConstructorDecl *Ctor) {
181 const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("Ctor");
181 const auto *Ctor = Result.Nodes.getNodeAs<CXXConstructorDecl>("Ctor");
tools/clang/tools/extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp 60 const CXXConstructorDecl *Ctor) {
275 if (const auto *Ctor = dyn_cast<CXXConstructorDecl>(SpecialFunctionDecl)) {
275 if (const auto *Ctor = dyn_cast<CXXConstructorDecl>(SpecialFunctionDecl)) {
tools/clang/tools/extra/clang-tidy/performance/MoveConstArgCheck.cpp 86 for (const auto *Ctor : R->ctors()) {
tools/clang/tools/extra/clang-tidy/performance/MoveConstructorInitCheck.cpp 47 const auto *CopyCtor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor");
47 const auto *CopyCtor = Result.Nodes.getNodeAs<CXXConstructorDecl>("ctor");
66 const CXXConstructorDecl *Candidate = nullptr;
67 for (const auto *Ctor : CopyCtor->getParent()->ctors()) {
tools/clang/tools/extra/clang-tidy/performance/NoexceptMoveConstructorCheck.cpp 37 if (const auto *Ctor = dyn_cast<CXXConstructorDecl>(Decl)) {
37 if (const auto *Ctor = dyn_cast<CXXConstructorDecl>(Decl)) {
tools/clang/tools/extra/clang-tidy/readability/DeletedDefaultCheck.cpp 41 if (const auto *Constructor =
42 Result.Nodes.getNodeAs<CXXConstructorDecl>("constructor")) {
tools/clang/tools/extra/clang-tidy/readability/IdentifierNamingCheck.cpp 711 if (const auto *Decl =
712 Result.Nodes.getNodeAs<CXXConstructorDecl>("classRef")) {
tools/clang/tools/extra/clang-tidy/readability/NonConstParameterCheck.cpp 49 } else if (const auto *Ctor =
50 Result.Nodes.getNodeAs<CXXConstructorDecl>("Ctor")) {
tools/clang/tools/extra/clang-tidy/utils/TypeTraits.cpp 32 for (const auto *Constructor : Record->ctors()) {
tools/clang/tools/extra/clangd/Quality.cpp 268 if (isa<CXXConstructorDecl>(D))
tools/clang/tools/extra/clangd/SemanticHighlighting.cpp 61 isa<CXXConstructorDecl>(D))
tools/clang/tools/extra/clangd/unittests/QualityTests.cpp 365 isa<CXXConstructorDecl>(&ND);
428 isa<CXXConstructorDecl>(&ND);
tools/clang/tools/libclang/CIndex.cpp 853 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(ND)) {
853 if (CXXConstructorDecl *Constructor = dyn_cast<CXXConstructorDecl>(ND)) {
8366 const CXXConstructorDecl *Constructor =
8367 D ? dyn_cast_or_null<CXXConstructorDecl>(D->getAsFunction()) : nullptr;
8376 const CXXConstructorDecl *Constructor =
8377 D ? dyn_cast_or_null<CXXConstructorDecl>(D->getAsFunction()) : nullptr;
8386 const CXXConstructorDecl *Constructor =
8387 D ? dyn_cast_or_null<CXXConstructorDecl>(D->getAsFunction()) : nullptr;
8396 const CXXConstructorDecl *Constructor =
8397 D ? dyn_cast_or_null<CXXConstructorDecl>(D->getAsFunction()) : nullptr;
tools/clang/tools/libclang/CIndexHigh.cpp 88 } else if (const CXXConstructorDecl *CXXCtorD =
89 dyn_cast<CXXConstructorDecl>(D)) {
tools/clang/unittests/AST/ASTImporterFixtures.h 174 template <class DeclT> DeclT *Import(DeclT *From, Language Lang) {
174 template <class DeclT> DeclT *Import(DeclT *From, Language Lang) {
175 return cast_or_null<DeclT>(Import(cast<Decl>(From), Lang));
tools/clang/unittests/AST/ASTImporterTest.cpp 2491 auto *FromD =
2493 auto *ImportedD = Import(FromD, Lang_CXX);
3455 auto *FromCtor =
3457 auto *ToCtor =
5469 auto *Constr1 = FirstDeclMatcher<CXXConstructorDecl>().match(
5471 auto *Constr2 = LastDeclMatcher<CXXConstructorDecl>().match(
tools/clang/unittests/AST/ASTTraverserTest.cpp 193 auto *CTor = dyn_cast<CXXConstructorDecl>(CTorFunc);
tools/clang/unittests/AST/DeclMatcher.h 22 NodeType *Node = nullptr;
26 Node = const_cast<NodeType *>(Result.Nodes.getNodeAs<NodeType>(""));
32 NodeType *match(const Decl *D, const MatcherType &AMatcher) {
tools/clang/unittests/AST/MatchVerifier.h 62 const NodeType &Node) {}
150 const NodeType *Node = Result.Nodes.getNodeAs<NodeType>("");
150 const NodeType *Node = Result.Nodes.getNodeAs<NodeType>("");
216 class RangeVerifier : public MatchVerifier<NodeType> {
228 const NodeType &Node) override {
250 virtual SourceRange getRange(const NodeType &Node) {
tools/clang/unittests/AST/SourceLocationTest.cpp 241 RangeVerifier<CXXConstructorDecl> Verifier;
247 RangeVerifier<CXXConstructorDecl> Verifier;
253 RangeVerifier<CXXConstructorDecl> Verifier;
tools/clang/unittests/AST/StructuralEquivalenceTest.cpp 25 std::tuple<NodeType *, NodeType *> makeDecls(
25 std::tuple<NodeType *, NodeType *> makeDecls(
37 NodeType *D0 = FirstDeclMatcher<NodeType>().match(
39 NodeType *D1 = FirstDeclMatcher<NodeType>().match(
63 std::tuple<NodeType *, NodeType *> makeDecls(
63 std::tuple<NodeType *, NodeType *> makeDecls(
66 return makeDecls<NodeType, MatcherType>(
501 auto t = makeDecls<CXXConstructorDecl>("struct X { X(); };",
508 auto t = makeDecls<CXXConstructorDecl>("struct X { X(int); };",
516 auto t = makeDecls<CXXConstructorDecl>("struct X { X(); };",
863 CXXConstructorDecl *First = FirstDeclMatcher<CXXConstructorDecl>().match(
865 CXXConstructorDecl *Second = FirstDeclMatcher<CXXConstructorDecl>().match(
873 CXXConstructorDecl *First = FirstDeclMatcher<CXXConstructorDecl>().match(
875 CXXConstructorDecl *Second = FirstDeclMatcher<CXXConstructorDecl>().match(
930 CXXConstructorDecl *First = FirstDeclMatcher<CXXConstructorDecl>().match(
932 CXXConstructorDecl *Second = FirstDeclMatcher<CXXConstructorDecl>().match(
940 CXXConstructorDecl *First = FirstDeclMatcher<CXXConstructorDecl>().match(
942 CXXConstructorDecl *Second = FirstDeclMatcher<CXXConstructorDecl>().match(
tools/clang/unittests/Tooling/RecursiveASTVisitorTests/ConstructExpr.cpp 33 if (const CXXConstructorDecl* Ctor = Expr->getConstructor()) {
tools/clang/unittests/Tooling/RecursiveASTVisitorTests/ImplicitCtor.cpp 21 bool VisitCXXConstructorDecl(CXXConstructorDecl* Ctor) {
tools/lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h 500 llvm::SmallVectorImpl<clang::CXXConstructorDecl *> &Decls) override {
tools/lldb/source/Symbol/ClangASTContext.cpp 4646 else if (llvm::isa<clang::CXXConstructorDecl>(cxx_method_decl))
8159 clang::CXXConstructorDecl *cxx_ctor_decl(nullptr);
8179 cxx_ctor_decl = clang::CXXConstructorDecl::Create(
9903 if (llvm::isa<clang::CXXConstructorDecl>(nd)) {
9904 mc->mangleCXXCtor(llvm::dyn_cast<clang::CXXConstructorDecl>(nd),
tools/lldb/tools/lldb-instr/Instrument.cpp 218 } else if (isa<CXXConstructorDecl>(Decl)) {
usr/include/c++/7.4.0/type_traits 215 : public __is_void_helper<typename remove_cv<_Tp>::type>::type
581 : public __or_<is_lvalue_reference<_Tp>,
582 is_rvalue_reference<_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
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
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; };
1983 { typedef _Up type; };
1999 { typedef typename remove_reference<_Tp>::type* type; };
2003 : public __add_pointer_helper<_Tp>