Lines Matching refs:LM
138 LexedMethod* LM = new LexedMethod(this, FnD);
139 getCurrentClass().LateParsedDeclarations.push_back(LM);
140 LM->TemplateScope = getCurScope()->isTemplateParamScope();
141 CachedTokens &Toks = LM->Toks;
283 void Parser::ParseLexedMethodDeclaration(LateParsedMethodDeclaration &LM) {
285 ParseScope TemplateScope(this, Scope::TemplateParamScope, LM.TemplateScope);
286 if (LM.TemplateScope)
287 Actions.ActOnReenterTemplateScope(getCurScope(), LM.Method);
290 Actions.ActOnStartDelayedCXXMethodDeclaration(getCurScope(), LM.Method);
296 for (unsigned I = 0, N = LM.DefaultArgs.size(); I != N; ++I) {
299 LM.DefaultArgs[I].Param);
301 if (CachedTokens *Toks = LM.DefaultArgs[I].Toks) {
320 LM.DefaultArgs[I].Param);
329 Actions.ActOnParamDefaultArgumentError(LM.DefaultArgs[I].Param);
335 Actions.ActOnParamDefaultArgument(LM.DefaultArgs[I].Param, EqualLoc,
348 LM.DefaultArgs[I].Toks = 0;
353 if (CachedTokens *Toks = LM.ExceptionSpecTokens) {
372 = dyn_cast<FunctionTemplateDecl>(LM.Method))
375 Method = cast<CXXMethodDecl>(LM.Method);
402 Actions.actOnDelayedExceptionSpecification(LM.Method, EST,
418 delete LM.ExceptionSpecTokens;
419 LM
425 Actions.ActOnFinishDelayedCXXMethodDeclaration(getCurScope(), LM.Method);
446 void Parser::ParseLexedMethodDef(LexedMethod &LM) {
448 ParseScope TemplateScope(this, Scope::TemplateParamScope, LM.TemplateScope);
449 if (LM.TemplateScope)
450 Actions.ActOnReenterTemplateScope(getCurScope(), LM.D);
455 assert(!LM.Toks.empty() && "Empty body!");
458 LM.Toks.push_back(Tok);
459 PP.EnterTokenStream(LM.Toks.data(), LM.Toks.size(), true, false);
469 Actions.ActOnStartOfFunctionDef(getCurScope(), LM.D);
472 ParseFunctionTryBlock(LM.D, FnScope);
483 ParseConstructorInitializer(LM.D);
488 Actions.ActOnFinishFunctionBody(LM.D, 0);
494 Actions.ActOnDefaultCtorInitializers(LM.D);
496 ParseFunctionStatementBody(LM.D, FnScope);