Lines Matching refs:computation
159 static bool hasExplicitVisibilityAlready(LVComputationKind computation) { in hasExplicitVisibilityAlready() argument
160 return computation.IgnoreExplicitVisibility; in hasExplicitVisibilityAlready()
240 LVComputationKind computation) { in getLVForType() argument
241 if (computation.IgnoreAllVisibility) in getLVForType()
250 const TemplateParameterList *Params, LVComputationKind computation) { in getLVForTemplateParameterList() argument
266 LV.merge(getLVForType(*NTTP->getType(), computation)); in getLVForTemplateParameterList()
287 computation)); in getLVForTemplateParameterList()
295 TTP->getExpansionTemplateParameters(i), computation)); in getLVForTemplateParameterList()
320 LVComputationKind computation) { in getLVForTemplateArgumentList() argument
331 LV.merge(getLVForType(*Arg.getAsType(), computation)); in getLVForTemplateArgumentList()
337 LV.merge(getLVForDecl(ND, computation)); in getLVForTemplateArgumentList()
349 LV.merge(getLVForDecl(Template, computation)); in getLVForTemplateArgumentList()
353 LV.merge(getLVForTemplateArgumentList(Arg.getPackAsArray(), computation)); in getLVForTemplateArgumentList()
364 LVComputationKind computation) { in getLVForTemplateArgumentList() argument
365 return getLVForTemplateArgumentList(TArgs.asArray(), computation); in getLVForTemplateArgumentList()
390 LVComputationKind computation) { in mergeTemplateLV() argument
397 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in mergeTemplateLV()
402 LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation); in mergeTemplateLV()
409 LVComputationKind computation) { in hasDirectVisibilityAttribute() argument
410 if (computation.IgnoreAllVisibility) in hasDirectVisibilityAttribute()
413 return (computation.isTypeVisibility() && D->hasAttr<TypeVisibilityAttr>()) || in hasDirectVisibilityAttribute()
421 LVComputationKind computation) { in shouldConsiderTemplateVisibility() argument
447 hasExplicitVisibilityAlready(computation)) in shouldConsiderTemplateVisibility()
450 return !hasDirectVisibilityAttribute(spec, computation); in shouldConsiderTemplateVisibility()
457 LVComputationKind computation) { in mergeTemplateLV() argument
458 bool considerVisibility = shouldConsiderTemplateVisibility(spec, computation); in mergeTemplateLV()
465 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in mergeTemplateLV()
467 considerVisibility && !hasExplicitVisibilityAlready(computation)); in mergeTemplateLV()
473 LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation); in mergeTemplateLV()
485 LVComputationKind computation) { in shouldConsiderTemplateVisibility() argument
498 hasExplicitVisibilityAlready(computation)) in shouldConsiderTemplateVisibility()
501 return !hasDirectVisibilityAttribute(spec, computation); in shouldConsiderTemplateVisibility()
509 LVComputationKind computation) { in mergeTemplateLV() argument
510 bool considerVisibility = shouldConsiderTemplateVisibility(spec, computation); in mergeTemplateLV()
517 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in mergeTemplateLV()
519 considerVisibility && !hasExplicitVisibilityAlready(computation)); in mergeTemplateLV()
525 LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation); in mergeTemplateLV()
613 LVComputationKind computation, in getLVForNamespaceScopeDecl() argument
642 return getLVForDecl(PrevVar, computation); in getLVForNamespaceScopeDecl()
671 return getLVForNamespaceScopeDecl(VD, computation, IgnoreVarTypeLinkage); in getLVForNamespaceScopeDecl()
698 if (!hasExplicitVisibilityAlready(computation)) { in getLVForNamespaceScopeDecl()
699 if (Optional<Visibility> Vis = getExplicitVisibility(D, computation)) { in getLVForNamespaceScopeDecl()
709 if (Optional<Visibility> Vis = getExplicitVisibility(ND, computation)) { in getLVForNamespaceScopeDecl()
720 computation.isValueVisibility() in getLVForNamespaceScopeDecl()
762 LinkageInfo TypeLV = getLVForType(*Var->getType(), computation); in getLVForNamespaceScopeDecl()
780 mergeTemplateLV(LV, spec, computation); in getLVForNamespaceScopeDecl()
816 mergeTemplateLV(LV, Function, specInfo, computation); in getLVForNamespaceScopeDecl()
834 mergeTemplateLV(LV, spec, computation); in getLVForNamespaceScopeDecl()
840 computation); in getLVForNamespaceScopeDecl()
848 bool considerVisibility = !hasExplicitVisibilityAlready(computation); in getLVForNamespaceScopeDecl()
850 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in getLVForNamespaceScopeDecl()
886 LVComputationKind computation, in getLVForClassMember() argument
909 if (!hasExplicitVisibilityAlready(computation)) { in getLVForClassMember()
910 if (Optional<Visibility> Vis = getExplicitVisibility(D, computation)) in getLVForClassMember()
924 LVComputationKind classComputation = computation; in getLVForClassMember()
926 classComputation = withExplicitVisibilityAlready(computation); in getLVForClassMember()
956 mergeTemplateLV(LV, MD, spec, computation); in getLVForClassMember()
968 mergeTemplateLV(LV, spec, computation); in getLVForClassMember()
984 mergeTemplateLV(LV, spec, computation); in getLVForClassMember()
989 LinkageInfo typeLV = getLVForType(*VD->getType(), computation); in getLVForClassMember()
1006 !hasExplicitVisibilityAlready(computation)); in getLVForClassMember()
1008 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in getLVForClassMember()
1028 hasDirectVisibilityAttribute(explicitSpecSuppressor, computation)) { in getLVForClassMember()
1160 LVComputationKind computation) { in getLVForClosure() argument
1181 ? computeLVForDecl(Owner, computation, /*IgnoreVarTypeLinkage*/true) in getLVForClosure()
1182 : getLVForDecl(Owner, computation); in getLVForClosure()
1193 LVComputationKind computation) { in getLVForLocalDecl() argument
1204 if (!hasExplicitVisibilityAlready(computation)) { in getLVForLocalDecl()
1206 getExplicitVisibility(Function, computation)) in getLVForLocalDecl()
1225 else if (!hasExplicitVisibilityAlready(computation)) { in getLVForLocalDecl()
1226 if (Optional<Visibility> Vis = getExplicitVisibility(Var, computation)) in getLVForLocalDecl()
1231 LinkageInfo PrevLV = getLVForDecl(Prev, computation); in getLVForLocalDecl()
1258 BD->getBlockManglingContextDecl(), computation); in getLVForLocalDecl()
1268 LV = getLVForDecl(FD, computation); in getLVForLocalDecl()
1276 LV = getLVForDecl(MD->getParent(), computation); in getLVForLocalDecl()
1279 computation.isValueVisibility() in getLVForLocalDecl()
1307 LVComputationKind computation, in computeLVForDecl() argument
1337 return getLVForDecl(cast<EnumDecl>(D->getDeclContext()), computation); in computeLVForDecl()
1387 OuterMostLambda->getLambdaContextDecl(), computation); in computeLVForDecl()
1396 return getLVForNamespaceScopeDecl(D, computation, IgnoreVarTypeLinkage); in computeLVForDecl()
1406 return getLVForClassMember(D, computation, IgnoreVarTypeLinkage); in computeLVForDecl()
1420 return getLVForLocalDecl(D, computation); in computeLVForDecl()
1429 LVComputationKind computation) { in getLVForDecl() argument
1434 if (computation.IgnoreAllVisibility && D->hasCachedLinkage()) in getLVForDecl()
1437 if (llvm::Optional<LinkageInfo> LI = lookup(D, computation)) in getLVForDecl()
1440 LinkageInfo LV = computeLVForDecl(D, computation); in getLVForDecl()
1445 cache(D, computation, LV); in getLVForDecl()