Lines Matching refs:AL
1378 static void handleOwnershipAttr(Sema &S, Decl *D, const AttributeList &AL) {
1387 if (!AL.isArgIdent(0)) {
1388 S.Diag(AL.getLoc(), diag::err_attribute_argument_n_type)
1389 << AL.getName() << 1 << AANT_ArgumentIdentifier;
1395 OwnershipAttr(AL.getLoc(), S.Context, nullptr, nullptr, 0,
1396 AL.getAttributeSpellingListIndex()).getOwnKind();
1402 if (AL.getNumArgs() < 2) {
1403 S.Diag(AL.getLoc(), diag::err_attribute_too_few_arguments)
1404 << AL.getName() << 2;
1409 if (AL.getNumArgs() > 2) {
1410 S.Diag(AL.getLoc(), diag::err_attribute_too_many_arguments)
1411 << AL.getName() << 1;
1417 IdentifierInfo *Module = AL.getArgAsIdent(0)->Ident;
1425 for (unsigned i = 1; i < AL.getNumArgs(); ++i) {
1426 Expr *Ex = AL.getArgAsExpr(i);
1428 if (!checkFunctionOrMethodParameterIndex(S, D, AL, i, Ex, Idx))
1446 S.Diag(AL.getLoc(), diag::err_ownership_type) << AL.getName() << Err
1457 S.Diag(AL.getLoc(), diag::err_attributes_are_not_compatible)
1458 << AL.getName() << I;
1469 S.Diag(AL.getLoc(), diag::note_ownership_returns_index_mismatch)
1483 OwnershipAttr(AL.getLoc(), S.Context, Module, start, size,
1484 AL.getAttributeSpellingListIndex()));