Lines Matching full:lm
180 LexedMethod* LM = new LexedMethod(this, FnD); in ParseCXXInlineMethodDef() local
181 getCurrentClass().LateParsedDeclarations.push_back(LM); in ParseCXXInlineMethodDef()
182 CachedTokens &Toks = LM->Toks; in ParseCXXInlineMethodDef()
388 void Parser::ParseLexedMethodDeclaration(LateParsedMethodDeclaration &LM) { in ParseLexedMethodDeclaration() argument
390 ReenterTemplateScopeRAII InFunctionTemplateScope(*this, LM.Method); in ParseLexedMethodDeclaration()
393 Actions.ActOnStartDelayedCXXMethodDeclaration(getCurScope(), LM.Method); in ParseLexedMethodDeclaration()
400 for (unsigned I = 0, N = LM.DefaultArgs.size(); I != N; ++I) { in ParseLexedMethodDeclaration()
401 auto Param = cast<ParmVarDecl>(LM.DefaultArgs[I].Param); in ParseLexedMethodDeclaration()
405 std::unique_ptr<CachedTokens> Toks = std::move(LM.DefaultArgs[I].Toks); in ParseLexedMethodDeclaration()
470 if (const auto *FunTmpl = dyn_cast<FunctionTemplateDecl>(LM.Method)) in ParseLexedMethodDeclaration()
474 Old = cast<FunctionDecl>(LM.Method)->getPreviousDecl(); in ParseLexedMethodDeclaration()
488 if (CachedTokens *Toks = LM.ExceptionSpecTokens) { in ParseLexedMethodDeclaration()
497 ExceptionSpecEnd.setEofData(LM.Method); in ParseLexedMethodDeclaration()
516 = dyn_cast<FunctionTemplateDecl>(LM.Method)) in ParseLexedMethodDeclaration()
519 FunctionToPush = cast<FunctionDecl>(LM.Method); in ParseLexedMethodDeclaration()
555 if (Tok.isNot(tok::eof) || Tok.getEofData() != LM.Method) in ParseLexedMethodDeclaration()
559 Actions.actOnDelayedExceptionSpecification(LM.Method, EST, in ParseLexedMethodDeclaration()
572 if (Tok.is(tok::eof) && Tok.getEofData() == LM.Method) in ParseLexedMethodDeclaration()
576 LM.ExceptionSpecTokens = nullptr; in ParseLexedMethodDeclaration()
582 Actions.ActOnFinishDelayedCXXMethodDeclaration(getCurScope(), LM.Method); in ParseLexedMethodDeclaration()
595 void Parser::ParseLexedMethodDef(LexedMethod &LM) { in ParseLexedMethodDef() argument
597 ReenterTemplateScopeRAII InFunctionTemplateScope(*this, LM.D); in ParseLexedMethodDef()
601 assert(!LM.Toks.empty() && "Empty body!"); in ParseLexedMethodDef()
602 Token LastBodyToken = LM.Toks.back(); in ParseLexedMethodDef()
607 BodyEnd.setEofData(LM.D); in ParseLexedMethodDef()
608 LM.Toks.push_back(BodyEnd); in ParseLexedMethodDef()
611 LM.Toks.push_back(Tok); in ParseLexedMethodDef()
612 PP.EnterTokenStream(LM.Toks, true, /*IsReinject*/true); in ParseLexedMethodDef()
625 Actions.ActOnStartOfFunctionDef(getCurScope(), LM.D); in ParseLexedMethodDef()
628 ParseFunctionTryBlock(LM.D, FnScope); in ParseLexedMethodDef()
633 if (Tok.is(tok::eof) && Tok.getEofData() == LM.D) in ParseLexedMethodDef()
638 ParseConstructorInitializer(LM.D); in ParseLexedMethodDef()
643 Actions.ActOnFinishFunctionBody(LM.D, nullptr); in ParseLexedMethodDef()
648 if (Tok.is(tok::eof) && Tok.getEofData() == LM.D) in ParseLexedMethodDef()
653 Actions.ActOnDefaultCtorInitializers(LM.D); in ParseLexedMethodDef()
656 !isa<FunctionTemplateDecl>(LM.D) || in ParseLexedMethodDef()
657 cast<FunctionTemplateDecl>(LM.D)->getTemplateParameters()->getDepth() in ParseLexedMethodDef()
662 ParseFunctionStatementBody(LM.D, FnScope); in ParseLexedMethodDef()
667 if (Tok.is(tok::eof) && Tok.getEofData() == LM.D) in ParseLexedMethodDef()
670 if (auto *FD = dyn_cast_or_null<FunctionDecl>(LM.D)) in ParseLexedMethodDef()