Lines Matching refs:DummyArgument
423 static std::optional<DummyArgument> CharacterizeDummyArgument(
615 DummyArgument::~DummyArgument() {} in ~DummyArgument()
617 bool DummyArgument::operator==(const DummyArgument &that) const { in operator ==()
621 bool DummyArgument::IsCompatibleWith( in IsCompatibleWith()
622 const DummyArgument &actual, std::string *whyNot) const { in IsCompatibleWith()
649 static std::optional<DummyArgument> CharacterizeDummyArgument( in CharacterizeDummyArgument()
656 return DummyArgument{std::move(name), std::move(obj.value())}; in CharacterizeDummyArgument()
660 return DummyArgument{std::move(name), std::move(proc.value())}; in CharacterizeDummyArgument()
665 std::optional<DummyArgument> DummyArgument::FromActual( in FromActual()
670 return std::make_optional<DummyArgument>(std::move(name), in FromActual()
675 return std::make_optional<DummyArgument>(std::move(name), in FromActual()
681 return std::make_optional<DummyArgument>( in FromActual()
684 return std::optional<DummyArgument>{}; in FromActual()
689 return std::make_optional<DummyArgument>( in FromActual()
692 return std::optional<DummyArgument>{}; in FromActual()
697 return std::make_optional<DummyArgument>( in FromActual()
700 return std::optional<DummyArgument>{}; in FromActual()
707 bool DummyArgument::IsOptional() const { in IsOptional()
721 void DummyArgument::SetOptional(bool value) { in SetOptional()
734 void DummyArgument::SetIntent(common::Intent intent) { in SetIntent()
743 common::Intent DummyArgument::GetIntent() const { in GetIntent()
755 bool DummyArgument::CanBePassedViaImplicitInterface() const { in CanBePassedViaImplicitInterface()
763 bool DummyArgument::IsTypelessIntrinsicDummy() const { in IsTypelessIntrinsicDummy()
768 llvm::raw_ostream &DummyArgument::Dump(llvm::raw_ostream &o) const { in Dump()
1072 for (const DummyArgument &arg : dummyArguments) { in CanBeCalledViaImplicitInterface()
1112 for (const DummyArgument &arg : args) { in CountDummyProcedures()
1124 const DummyArgument *Rule1DistinguishingArg(
1130 int CountCompatibleWith(const DummyArgument &, const DummyArguments &) const;
1132 const DummyArgument &, const DummyArguments &) const;
1133 bool Distinguishable(const DummyArgument &, const DummyArgument &) const;
1138 bool IsTkrCompatible(const DummyArgument &, const DummyArgument &) const;
1140 const DummyArgument *GetAtEffectivePosition(
1142 const DummyArgument *GetPassArg(const Procedure &) const;
1195 const DummyArgument *pass1{GetPassArg(proc1)}; in Rule3Distinguishable()
1196 const DummyArgument *pass2{GetPassArg(proc2)}; in Rule3Distinguishable()
1207 const DummyArgument *DistinguishUtils::Rule1DistinguishingArg( in Rule1DistinguishingArg()
1212 const DummyArgument &x{i < size1 ? args1[i] : args2[i - size1]}; in Rule1DistinguishingArg()
1233 const DummyArgument &arg1{args1.at(i)}; in FindFirstToDistinguishByPosition()
1235 const DummyArgument *arg2{GetAtEffectivePosition(args2, effective)}; in FindFirstToDistinguishByPosition()
1251 std::map<std::string, const DummyArgument *> nameToArg; in FindLastToDistinguishByName()
1256 const DummyArgument &arg1{args1.at(i)}; in FindLastToDistinguishByName()
1270 const DummyArgument &x, const DummyArguments &args) const { in CountCompatibleWith()
1271 return std::count_if(args.begin(), args.end(), [&](const DummyArgument &y) { in CountCompatibleWith()
1279 const DummyArgument &x, const DummyArguments &args) const { in CountNotDistinguishableFrom()
1280 return std::count_if(args.begin(), args.end(), [&](const DummyArgument &y) { in CountNotDistinguishableFrom()
1287 const DummyArgument &x, const DummyArgument &y) const { in Distinguishable()
1373 const DummyArgument &x, const DummyArgument &y) const { in IsTkrCompatible()
1387 const DummyArgument *DistinguishUtils::GetAtEffectivePosition( in GetAtEffectivePosition()
1389 for (const DummyArgument &arg : args) { in GetAtEffectivePosition()
1401 const DummyArgument *DistinguishUtils::GetPassArg(const Procedure &proc) const { in GetPassArg()
1420 DEFINE_DEFAULT_CONSTRUCTORS_AND_ASSIGNMENTS(DummyArgument)