Lines Matching defs:ultimate

213   const Symbol &ultimate{symbol.GetUltimate()};
214 if (const auto *generic{ultimate.detailsIf<GenericDetails>()}) {
216 } else if (const auto *misc{ultimate.detailsIf<MiscDetails>()}) {
388 const Symbol &ultimate{GetAssociationRoot(object)};
389 if (IsDummy(ultimate)) {
390 if (IsIntentIn(ultimate)) {
391 return &ultimate;
393 if (!isPointerDefinition && IsPointer(ultimate) &&
394 IsPureProcedure(ultimate.owner()) && IsFunction(ultimate.owner())) {
395 return &ultimate;
397 } else if (ultimate.owner().IsDerivedType()) {
399 } else if (&GetProgramUnitContaining(ultimate) !=
402 } else if (const Symbol * block{FindCommonBlockContaining(ultimate)}) {
409 const Symbol &ultimate{symbol.GetUltimate()};
410 if (const auto *generic{ultimate.detailsIf<GenericDetails>()}) {
568 const Symbol &ultimate{original.GetUltimate()};
569 if (ultimate.owner().IsGlobal()) {
570 return &ultimate;
573 if (IsDummy(ultimate)) {
574 } else if (IsPointer(ultimate)) {
575 } else if (ultimate.has<ProcEntityDetails>()) {
576 isLocal = IsExternal(ultimate);
577 } else if (const auto *subp{ultimate.detailsIf<SubprogramDetails>()}) {
581 const std::string *bind{ultimate.GetBindName()};
582 if (!bind || ultimate.name() == *bind) {
583 const Scope &globalScope{ultimate.owner().context().globalScope()};
584 if (auto iter{globalScope.find(ultimate.name())};
630 const Symbol &ultimate{symbol.GetUltimate()};
631 for (const EquivalenceSet &set : ultimate.owner().equivalenceSets()) {
633 if (object.symbol == ultimate) {
1128 const Symbol &ultimate{original.GetUltimate()};
1129 if (ultimate.attrs().test(Attr::PRIVATE)) {
1130 const Scope *module{FindModuleContaining(ultimate.owner())};
1200 const Symbol &ultimate{symbol.GetUltimate()};
1201 if (!IsProcedure(ultimate)) {
1203 } else if (ultimate.attrs().test(Attr::INTRINSIC)) {
1205 } else if (IsDummy(ultimate)) {
1209 } else if (ultimate.attrs().test(Attr::EXTERNAL)) {
1212 ultimate.detailsIf<SubprogramNameDetails>()}) {
1225 switch (ultimate.owner().kind()) {
1734 const Symbol &ultimate{ResolveAssociations(*symbol)};
1735 if (const DeclTypeSpec * type{ultimate.GetType()}; type &&
1738 IsAllocatable(ultimate) && ultimate.Rank() == 0) {
1749 const Symbol &ultimate{original->GetUltimate()};
1750 if (const Symbol * result{FindFunctionResult(ultimate)}) {
1753 if (const auto *generic{ultimate.detailsIf<GenericDetails>()}) {
1791 const Symbol &ultimate{sym->GetUltimate()};
1795 if (&*sym != &ultimate) {
1799 attachment.Attach(ultimate.name(),
1800 "ultimately from '%s' in module '%s'"_en_US, ultimate.name(),
1801 ultimate.owner().GetName().value());