Lines Matching defs:LM
142 LexedMethod* LM = new LexedMethod(this, FnD);
143 getCurrentClass().LateParsedDeclarations.push_back(LM);
144 LM->TemplateScope = getCurScope()->isTemplateParamScope();
145 CachedTokens &Toks = LM->Toks;
302 void Parser::ParseLexedMethodDeclaration(LateParsedMethodDeclaration &LM) {
304 ParseScope TemplateScope(this, Scope::TemplateParamScope, LM.TemplateScope);
306 if (LM.TemplateScope) {
307 Actions.ActOnReenterTemplateScope(getCurScope(), LM.Method);
311 Actions.ActOnStartDelayedCXXMethodDeclaration(getCurScope(), LM.Method);
317 for (unsigned I = 0, N = LM.DefaultArgs.size(); I != N; ++I) {
320 LM.DefaultArgs[I].Param);
322 if (CachedTokens *Toks = LM.DefaultArgs[I].Toks) {
341 LM.DefaultArgs[I].Param);
350 Actions.ActOnParamDefaultArgumentError(LM.DefaultArgs[I].Param);
356 Actions.ActOnParamDefaultArgument(LM.DefaultArgs[I].Param, EqualLoc,
369 LM.DefaultArgs[I].Toks = 0;
376 Actions.ActOnFinishDelayedCXXMethodDeclaration(getCurScope(), LM.Method);
399 void Parser::ParseLexedMethodDef(LexedMethod &LM) {
401 ParseScope TemplateScope(this, Scope::TemplateParamScope, LM.TemplateScope);
403 if (LM.TemplateScope) {
404 Actions.ActOnReenterTemplateScope(getCurScope(), LM.D);
410 assert(!LM.Toks.empty() && "Empty body!");
413 LM.Toks.push_back(Tok);
414 PP.EnterTokenStream(LM.Toks.data(), LM.Toks.size(), true, false);
424 Actions.ActOnStartOfFunctionDef(getCurScope(), LM.D);
427 ParseFunctionTryBlock(LM.D, FnScope);
438 ParseConstructorInitializer(LM.D);
443 Actions.ActOnFinishFunctionBody(LM.D, 0);
449 Actions.ActOnDefaultCtorInitializers(LM.D);
452 !isa<FunctionTemplateDecl>(LM.D) ||
453 cast<FunctionTemplateDecl>(LM.D)->getTemplateParameters()->getDepth()
458 ParseFunctionStatementBody(LM.D, FnScope);
461 if (LM.D) getFunctionDecl(LM.D)->setLateTemplateParsed(false);