18 expr(unless(isInTemplateInstantiation()),
19 expr(sizeOfExpr(has(ignoringParenImpCasts(
20 expr(hasType(hasCanonicalType(hasDeclaration(cxxRecordDecl(
21 matchesName(
"^(::std::|::string)"),
22 unless(matchesName(
"^::std::(bitset|array)$")),
23 hasMethod(cxxMethodDecl(hasName(
"size"), isPublic(),
27 unless(hasAncestor(binaryOperator(
28 hasAnyOperatorName(
"/",
"%"),
29 hasLHS(ignoringParenCasts(sizeOfExpr(expr()))),
30 hasRHS(ignoringParenCasts(equalsBoundNode(
"sizeof"))))))),