Home | History | Annotate | Download | only in Sema

Lines Matching defs:Dcl

52   /// CheckDefaultArgumentVisitor - C++ [dcl.fct.default] Traverses
87 // C++ [dcl.fct.default]p9
99 // C++ [dcl.fct.default]p7
113 // C++ [dcl.fct.default]p8:
256 // C++ [dcl.fct.default]p5
319 // C++11 [dcl.fct.default]p3
375 // C++ [dcl.fct.default]p3
478 // C++ [dcl.fct.default]p4:
491 // C++ [dcl.fct.default]p6:
587 // C++ [dcl.fct.default]p6 (DR217):
632 // C++11 [dcl.constexpr]p1: If any declaration of a function or function
642 // C++11 [dcl.fcn.spec]p4:
650 // C++11 [dcl.fct.default]p4: If a friend declaration specifies a default
711 /// [dcl.fct.default].
723 // C++11 [dcl.fct.default]p4:
802 // This implements C++11 [dcl.constexpr]p3,4, as amended by DR1360.
806 // C++11 [dcl.constexpr]p4:
823 // C++11 [dcl.constexpr]p3:
859 /// body. C++11 [dcl.constexpr]p3,p4, and C++1y [dcl.constexpr]p3.
863 static bool CheckConstexprDeclStmt(Sema &SemaRef, const FunctionDecl *Dcl,
865 // C++11 [dcl.constexpr]p3 and p4:
891 << isa<CXXConstructorDecl>(Dcl);
905 << isa<CXXConstructorDecl>(Dcl);
916 // C++1y [dcl.constexpr]p3 allows anything except:
924 << isa<CXXConstructorDecl>(Dcl)
932 isa<CXXConstructorDecl>(Dcl)))
938 << isa<CXXConstructorDecl>(Dcl);
946 << isa<CXXConstructorDecl>(Dcl);
960 << isa<CXXConstructorDecl>(Dcl);
970 /// \param Dcl The constexpr constructor being checked.
977 const FunctionDecl *Dcl,
998 SemaRef.Diag(Dcl->getLocation(), diag::err_constexpr_ctor_missing_init);
1008 CheckConstexprCtorInitializer(SemaRef, Dcl, I, Inits, Diagnosed);
1015 CheckConstexprFunctionStmt(Sema &SemaRef, const FunctionDecl *Dcl, Stmt *S,
1030 if (!CheckConstexprDeclStmt(SemaRef, Dcl, cast<DeclStmt>(S), Cxx1yLoc))
1036 if (isa<CXXConstructorDecl>(Dcl)) {
1053 if (!CheckConstexprFunctionStmt(SemaRef, Dcl, BodyIt, ReturnStmts,
1071 if (!CheckConstexprFunctionStmt(SemaRef, Dcl, If->getThen(), ReturnStmts,
1075 !CheckConstexprFunctionStmt(SemaRef, Dcl, If->getElse(), ReturnStmts,
1094 !CheckConstexprFunctionStmt(SemaRef, Dcl, SubStmt, ReturnStmts,
1109 !CheckConstexprFunctionStmt(SemaRef, Dcl, SubStmt, ReturnStmts,
1125 << isa<CXXConstructorDecl>(Dcl);
1130 /// the permitted types of statement. C++11 [dcl.constexpr]p3,p4.
1133 bool Sema::CheckConstexprFunctionBody(const FunctionDecl *Dcl, Stmt *Body) {
1135 // C++11 [dcl.constexpr]p3:
1141 // C++11 [dcl.constexpr]p4:
1145 << isa<CXXConstructorDecl>(Dcl);
1156 if (!CheckConstexprFunctionStmt(*this, Dcl, BodyIt, ReturnStmts, Cxx1yLoc))
1165 << isa<CXXConstructorDecl>(Dcl);
1168 = dyn_cast<CXXConstructorDecl>(Dcl)) {
1179 Diag(Dcl->getLocation(), diag::err_constexpr_union_ctor_no_init);
1216 CheckConstexprCtorInitializer(*this, Dcl, I, Inits, Diagnosed);
1228 (Dcl->getReturnType()->isVoidType() ||
1229 Dcl->getReturnType()->isDependentType());
1230 Diag(Dcl->getLocation(),
1245 // C++11 [dcl.constexpr]p5:
1249 // C++11 [dcl.constexpr]p3:
1252 // C++11 [dcl.constexpr]p4:
1256 if (!Expr::isPotentialConstantExpr(Dcl, Diags)) {
1257 Diag(Dcl->getLocation(), diag::ext_constexpr_function_never_constant_expr)
1258 << isa<CXXConstructorDecl>(Dcl);
3806 // the entity is initialized as specified in [dcl.init].
5080 // C++11 [dcl.constexpr]p4:
5238 // C++11 [dcl.fct.def.default]p1:
5324 // C++11 [dcl.fct.def.default]p2:
5380 // C++11 [dcl.fct.def.default]p4:
5396 /// C++11 [dcl.fct.def.default]p2.
7321 void Sema::ActOnFinishNamespaceDef(Decl *Dcl, SourceLocation RBrace) {
7322 NamespaceDecl *Namespc = dyn_cast_or_null<NamespaceDecl>(Dcl);
7467 // C++ [dcl.init.list]p2:
12757 // C++11 [dcl.fct.default]p4: If a friend declaration specifies a
12781 void Sema::SetDeclDeleted(Decl *Dcl, SourceLocation DelLoc) {
12782 AdjustDeclIfTemplate(Dcl);
12784 FunctionDecl *Fn = dyn_cast_or_null<FunctionDecl>(Dcl);
12840 void Sema::SetDeclDefaulted(Decl *Dcl, SourceLocation DefaultLoc) {
12841 CXXMethodDecl *MD = dyn_cast_or_null<CXXMethodDecl>(Dcl);
13095 /// an initializer for the out-of-line declaration 'Dcl'. The scope
13098 /// After this method is called, according to [C++ 3.4.1p13], if 'Dcl' is a
13145 Decl *Dcl = ActOnDeclarator(S, D);
13146 if (!Dcl)
13149 if (isa<FunctionDecl>(Dcl)) { // The declarator shall not specify a function.
13150 Diag(Dcl->getLocation(), diag::err_invalid_use_of_function_type)
13155 return Dcl;