Lines Matching refs:computation
161 static bool hasExplicitVisibilityAlready(LVComputationKind computation) { in hasExplicitVisibilityAlready() argument
162 return computation.IgnoreExplicitVisibility; in hasExplicitVisibilityAlready()
242 LVComputationKind computation) { in getLVForType() argument
243 if (computation.IgnoreAllVisibility) in getLVForType()
252 const TemplateParameterList *Params, LVComputationKind computation) { in getLVForTemplateParameterList() argument
268 LV.merge(getLVForType(*NTTP->getType(), computation)); in getLVForTemplateParameterList()
289 computation)); in getLVForTemplateParameterList()
297 TTP->getExpansionTemplateParameters(i), computation)); in getLVForTemplateParameterList()
322 LVComputationKind computation) { in getLVForTemplateArgumentList() argument
333 LV.merge(getLVForType(*Arg.getAsType(), computation)); in getLVForTemplateArgumentList()
339 LV.merge(getLVForDecl(ND, computation)); in getLVForTemplateArgumentList()
351 LV.merge(getLVForDecl(Template, computation)); in getLVForTemplateArgumentList()
355 LV.merge(getLVForTemplateArgumentList(Arg.getPackAsArray(), computation)); in getLVForTemplateArgumentList()
366 LVComputationKind computation) { in getLVForTemplateArgumentList() argument
367 return getLVForTemplateArgumentList(TArgs.asArray(), computation); in getLVForTemplateArgumentList()
392 LVComputationKind computation) { in mergeTemplateLV() argument
398 LinkageInfo tempLV = getLVForDecl(temp, computation); in mergeTemplateLV()
405 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in mergeTemplateLV()
410 LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation); in mergeTemplateLV()
417 LVComputationKind computation) { in hasDirectVisibilityAttribute() argument
418 if (computation.IgnoreAllVisibility) in hasDirectVisibilityAttribute()
421 return (computation.isTypeVisibility() && D->hasAttr<TypeVisibilityAttr>()) || in hasDirectVisibilityAttribute()
429 LVComputationKind computation) { in shouldConsiderTemplateVisibility() argument
455 hasExplicitVisibilityAlready(computation)) in shouldConsiderTemplateVisibility()
458 return !hasDirectVisibilityAttribute(spec, computation); in shouldConsiderTemplateVisibility()
465 LVComputationKind computation) { in mergeTemplateLV() argument
466 bool considerVisibility = shouldConsiderTemplateVisibility(spec, computation); in mergeTemplateLV()
472 LinkageInfo tempLV = getLVForDecl(temp, computation); in mergeTemplateLV()
478 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in mergeTemplateLV()
480 considerVisibility && !hasExplicitVisibilityAlready(computation)); in mergeTemplateLV()
486 LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation); in mergeTemplateLV()
498 LVComputationKind computation) { in shouldConsiderTemplateVisibility() argument
511 hasExplicitVisibilityAlready(computation)) in shouldConsiderTemplateVisibility()
514 return !hasDirectVisibilityAttribute(spec, computation); in shouldConsiderTemplateVisibility()
522 LVComputationKind computation) { in mergeTemplateLV() argument
523 bool considerVisibility = shouldConsiderTemplateVisibility(spec, computation); in mergeTemplateLV()
529 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in mergeTemplateLV()
531 considerVisibility && !hasExplicitVisibilityAlready(computation)); in mergeTemplateLV()
537 LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation); in mergeTemplateLV()
648 LVComputationKind computation, in getLVForNamespaceScopeDecl() argument
681 return getLVForDecl(PrevVar, computation); in getLVForNamespaceScopeDecl()
702 return getLVForNamespaceScopeDecl(VD, computation, IgnoreVarTypeLinkage); in getLVForNamespaceScopeDecl()
731 if (!hasExplicitVisibilityAlready(computation)) { in getLVForNamespaceScopeDecl()
732 if (Optional<Visibility> Vis = getExplicitVisibility(D, computation)) { in getLVForNamespaceScopeDecl()
742 if (Optional<Visibility> Vis = getExplicitVisibility(ND, computation)) { in getLVForNamespaceScopeDecl()
753 computation.isValueVisibility() in getLVForNamespaceScopeDecl()
806 LinkageInfo TypeLV = getLVForType(*Var->getType(), computation); in getLVForNamespaceScopeDecl()
824 mergeTemplateLV(LV, spec, computation); in getLVForNamespaceScopeDecl()
860 mergeTemplateLV(LV, Function, specInfo, computation); in getLVForNamespaceScopeDecl()
878 mergeTemplateLV(LV, spec, computation); in getLVForNamespaceScopeDecl()
885 computation); in getLVForNamespaceScopeDecl()
892 bool considerVisibility = !hasExplicitVisibilityAlready(computation); in getLVForNamespaceScopeDecl()
894 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in getLVForNamespaceScopeDecl()
935 LVComputationKind computation, in getLVForClassMember() argument
958 if (!hasExplicitVisibilityAlready(computation)) { in getLVForClassMember()
959 if (Optional<Visibility> Vis = getExplicitVisibility(D, computation)) in getLVForClassMember()
973 LVComputationKind classComputation = computation; in getLVForClassMember()
975 classComputation = withExplicitVisibilityAlready(computation); in getLVForClassMember()
1005 mergeTemplateLV(LV, MD, spec, computation); in getLVForClassMember()
1017 mergeTemplateLV(LV, spec, computation); in getLVForClassMember()
1033 mergeTemplateLV(LV, spec, computation); in getLVForClassMember()
1038 LinkageInfo typeLV = getLVForType(*VD->getType(), computation); in getLVForClassMember()
1055 !hasExplicitVisibilityAlready(computation)); in getLVForClassMember()
1057 getLVForTemplateParameterList(temp->getTemplateParameters(), computation); in getLVForClassMember()
1077 hasDirectVisibilityAttribute(explicitSpecSuppressor, computation)) { in getLVForClassMember()
1247 LVComputationKind computation) { in getLVForClosure() argument
1268 ? computeLVForDecl(Owner, computation, /*IgnoreVarTypeLinkage*/true) in getLVForClosure()
1269 : getLVForDecl(Owner, computation); in getLVForClosure()
1280 LVComputationKind computation) { in getLVForLocalDecl() argument
1291 if (!hasExplicitVisibilityAlready(computation)) { in getLVForLocalDecl()
1293 getExplicitVisibility(Function, computation)) in getLVForLocalDecl()
1312 else if (!hasExplicitVisibilityAlready(computation)) { in getLVForLocalDecl()
1313 if (Optional<Visibility> Vis = getExplicitVisibility(Var, computation)) in getLVForLocalDecl()
1318 LinkageInfo PrevLV = getLVForDecl(Prev, computation); in getLVForLocalDecl()
1345 BD->getBlockManglingContextDecl(), computation); in getLVForLocalDecl()
1355 LV = getLVForDecl(FD, computation); in getLVForLocalDecl()
1364 LV = getLVForDecl(MD->getParent(), computation); in getLVForLocalDecl()
1367 computation.isValueVisibility() in getLVForLocalDecl()
1382 LVComputationKind computation, in computeLVForDecl() argument
1413 return getLVForDecl(cast<EnumDecl>(D->getDeclContext()), computation); in computeLVForDecl()
1449 Record->getLambdaContextDecl(), computation); in computeLVForDecl()
1459 LinkageInfo LV = getLVForType(*TPO->getType(), computation); in computeLVForDecl()
1460 LV.merge(getLVForValue(TPO->getValue(), computation)); in computeLVForDecl()
1467 return getLVForNamespaceScopeDecl(D, computation, IgnoreVarTypeLinkage); in computeLVForDecl()
1477 return getLVForClassMember(D, computation, IgnoreVarTypeLinkage); in computeLVForDecl()
1491 return getLVForLocalDecl(D, computation); in computeLVForDecl()
1500 LVComputationKind computation) { in getLVForDecl() argument
1505 if (computation.IgnoreAllVisibility && D->hasCachedLinkage()) in getLVForDecl()
1508 if (llvm::Optional<LinkageInfo> LI = lookup(D, computation)) in getLVForDecl()
1511 LinkageInfo LV = computeLVForDecl(D, computation); in getLVForDecl()
1516 cache(D, computation, LV); in getLVForDecl()