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

Declarations

tools/clang/include/clang/Sema/Sema.h
  216   class LambdaScopeInfo;

References

include/llvm/Support/Casting.h
   58     return To::classof(&Val);
   77     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) {
  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;
tools/clang/include/clang/Sema/Sema.h
 1441   sema::LambdaScopeInfo *PushLambdaScope();
 1493   sema::LambdaScopeInfo *getEnclosingLambda() const;
 1499   sema::LambdaScopeInfo *
 1503   sema::LambdaScopeInfo *getCurGenericLambda();
 2130   void DiagnoseShadowingLambdaDecls(const sema::LambdaScopeInfo *LSI);
 6005   void buildLambdaScope(sema::LambdaScopeInfo *LSI,
 6041   void addInitCapture(sema::LambdaScopeInfo *LSI, VarDecl *Var);
 6045   void finishLambdaExplicitCaptures(sema::LambdaScopeInfo *LSI);
 6098                              sema::LambdaScopeInfo *LSI);
tools/clang/lib/Sema/AnalysisBasedWarnings.cpp
 1431   else if (isa<sema::LambdaScopeInfo>(CurFn))
tools/clang/lib/Sema/Sema.cpp
 1649 LambdaScopeInfo *Sema::PushLambdaScope() {
 1650   LambdaScopeInfo *const LSI = new LambdaScopeInfo(getDiagnostics());
 1650   LambdaScopeInfo *const LSI = new LambdaScopeInfo(getDiagnostics());
 1656   if (LambdaScopeInfo *const LSI = getCurLambda()) {
 1827 LambdaScopeInfo *Sema::getEnclosingLambda() const {
 1829     if (auto *LSI = dyn_cast<sema::LambdaScopeInfo>(Scope)) {
 1829     if (auto *LSI = dyn_cast<sema::LambdaScopeInfo>(Scope)) {
 1843 LambdaScopeInfo *Sema::getCurLambda(bool IgnoreNonLambdaCapturingScope) {
 1850     while (I != E && isa<CapturingScopeInfo>(*I) && !isa<LambdaScopeInfo>(*I))
 1855   auto *CurLSI = dyn_cast<LambdaScopeInfo>(*I);
 1855   auto *CurLSI = dyn_cast<LambdaScopeInfo>(*I);
 1868 LambdaScopeInfo *Sema::getCurGenericLambda() {
 1869   if (LambdaScopeInfo *LSI =  getCurLambda()) {
tools/clang/lib/Sema/SemaDecl.cpp
 7199 static SourceLocation getCaptureLocation(const LambdaScopeInfo *LSI,
 7301           const auto *LSI = cast<LambdaScopeInfo>(getCurFunction());
 7301           const auto *LSI = cast<LambdaScopeInfo>(getCurFunction());
 7309           cast<LambdaScopeInfo>(getCurFunction())
 7363 void Sema::DiagnoseShadowingLambdaDecls(const LambdaScopeInfo *LSI) {
13183     if (auto *LSI = getEnclosingLambda())
13439   LambdaScopeInfo *LSI = S.PushLambdaScope();
13796       auto *LSI = getCurLambda();
tools/clang/lib/Sema/SemaExpr.cpp
 3204   else if (const LambdaScopeInfo *LSI = getCurLambda())
 4103           (isa<CapturedRegionScopeInfo>(CSI) || isa<LambdaScopeInfo>(CSI)))
 4167         if (auto *LSI = dyn_cast<LambdaScopeInfo>(CSI))
 4167         if (auto *LSI = dyn_cast<LambdaScopeInfo>(CSI))
 4784         if (auto *LSI = dyn_cast<LambdaScopeInfo>(CSI))
 4784         if (auto *LSI = dyn_cast<LambdaScopeInfo>(CSI))
 5550   LambdaScopeInfo *const CurLSI = S.getCurLambda();
15718         !(isa<LambdaScopeInfo>(CSI) && cast<LambdaScopeInfo>(CSI)->Mutable) &&
15718         !(isa<LambdaScopeInfo>(CSI) && cast<LambdaScopeInfo>(CSI)->Mutable) &&
15749   bool IsLambda = isa<LambdaScopeInfo>(CSI);
15923 static bool captureInLambda(LambdaScopeInfo *LSI,
15939     ByRef = (LSI->ImpCaptureStyle == LambdaScopeInfo::ImpCap_LambdaByref);
16105         LambdaScopeInfo *LSI = cast<LambdaScopeInfo>(CSI);
16105         LambdaScopeInfo *LSI = cast<LambdaScopeInfo>(CSI);
16176         if (cast<LambdaScopeInfo>(CSI)->Lambda)
16177           Diag(cast<LambdaScopeInfo>(CSI)->Lambda->getBeginLoc(),
16231       LambdaScopeInfo *LSI = cast<LambdaScopeInfo>(CSI);
16231       LambdaScopeInfo *LSI = cast<LambdaScopeInfo>(CSI);
16377     if (LambdaScopeInfo *LSI = S.getCurLambda())
16833       LambdaScopeInfo *const LSI =
tools/clang/lib/Sema/SemaExprCXX.cpp
  975   LambdaScopeInfo *CurLSI = nullptr;
 1015        I-- && isa<LambdaScopeInfo>(FunctionScopes[I]) &&
 1017                        cast<LambdaScopeInfo>(FunctionScopes[I])->CallOperator);
 1019     CurLSI = cast<LambdaScopeInfo>(FunctionScopes[I]);
 1190       LambdaScopeInfo *LSI = dyn_cast<LambdaScopeInfo>(CSI);
 1190       LambdaScopeInfo *LSI = dyn_cast<LambdaScopeInfo>(CSI);
 7456     Expr *const FE, LambdaScopeInfo *const CurrentLSI, Sema &S) {
 8012   LambdaScopeInfo *const CurrentLSI =
tools/clang/lib/Sema/SemaLambda.cpp
   84       cast<sema::LambdaScopeInfo>(FunctionScopes[CurScopeIndex])->CallOperator;
   87     const clang::sema::LambdaScopeInfo *LSI =
   88         cast<sema::LambdaScopeInfo>(FunctionScopes[CurScopeIndex]);
  116     if (LSI->ImpCaptureStyle == sema::LambdaScopeInfo::ImpCap_None) {
  191   const sema::LambdaScopeInfo *const CaptureReadyLambdaLSI =
  192       cast<sema::LambdaScopeInfo>(FunctionScopes[IndexOfCaptureReadyLambda]);
  228 getGenericLambdaTemplateParameterList(LambdaScopeInfo *LSI, Sema &SemaRef) {
  481 void Sema::buildLambdaScope(LambdaScopeInfo *LSI,
  493     LSI->ImpCaptureStyle = LambdaScopeInfo::ImpCap_LambdaByval;
  495     LSI->ImpCaptureStyle = LambdaScopeInfo::ImpCap_LambdaByref;
  516 void Sema::finishLambdaExplicitCaptures(LambdaScopeInfo *LSI) {
  523   LambdaScopeInfo *LSI = getCurLambda();
  780         << ReturnType << CSI.ReturnType << isa<LambdaScopeInfo>(CSI);
  877 void Sema::addInitCapture(LambdaScopeInfo *LSI, VarDecl *Var) {
  887   LambdaScopeInfo *const LSI = getCurLambda();
 1235   LambdaScopeInfo *LSI = cast<LambdaScopeInfo>(FunctionScopes.back());
 1235   LambdaScopeInfo *LSI = cast<LambdaScopeInfo>(FunctionScopes.back());
 1533   LambdaScopeInfo LSI = *cast<LambdaScopeInfo>(FunctionScopes.back());
 1533   LambdaScopeInfo LSI = *cast<LambdaScopeInfo>(FunctionScopes.back());
 1646                                  LambdaScopeInfo *LSI) {
tools/clang/lib/Sema/SemaStmt.cpp
 3243   LambdaScopeInfo *CurLambda = dyn_cast<LambdaScopeInfo>(CurCap);
 3243   LambdaScopeInfo *CurLambda = dyn_cast<LambdaScopeInfo>(CurCap);
 3533       const LambdaScopeInfo *LambdaSI = getCurLambda();
tools/clang/lib/Sema/SemaTemplate.cpp
  996     if (auto *LSI = getEnclosingLambda())
 1204     if (auto *LSI = getEnclosingLambda())
 1271     if (auto *LSI = getEnclosingLambda())
tools/clang/lib/Sema/SemaTemplateVariadic.cpp
  282     if (isa<sema::LambdaScopeInfo>(SI))
  302   if (auto *LSI = getEnclosingLambda()) {
tools/clang/lib/Sema/SemaType.cpp
 2983         sema::LambdaScopeInfo *LSI = SemaRef.getCurLambda();
tools/clang/lib/Sema/TreeTransform.h
11457   LambdaScopeInfo *LSI = getSema().PushLambdaScope();
11689   auto LSICopy = *LSI;