Lines Matching refs:Procedure

34 using characteristics::Procedure;
55 const Procedure *Characterize(const Symbol &);
85 SourceName, GenericKind, const Symbol &, const Procedure &);
89 const SourceName &, const Symbol &, const Procedure &, std::size_t);
90 bool CheckDefinedAssignment(const Symbol &, const Procedure &);
190 // Cache of calls to Procedure::Characterize(Symbol)
191 std::map<SymbolRef, std::optional<Procedure>, SymbolAddressCompare>
210 void Add(const Symbol &, GenericKind, const Symbol &, const Procedure &);
221 const Procedure &procedure;
504 "Procedure '%s' may not be ALLOCATABLE"_err_en_US, symbol.name());
508 "Procedure '%s' may not be an array without an explicit interface"_err_en_US,
1151 "Procedure pointer '%s' initializer '%s' is neither an external nor a module procedure"_err_en_US,
1155 context_.Say("Procedure pointer '%s' cannot be initialized with the "
1302 "Procedure pointer '%s' should not have an ELEMENTAL intrinsic as its interface"_port_en_US,
1306 messages_.Say("Procedure pointer '%s' may not be ELEMENTAL"_err_en_US,
1316 "Procedure component '%s' must have POINTER attribute"_err_en_US, name);
1395 if (!Procedure::Characterize(symbol, foldingContext_)) {
1701 const Procedure *proc{Characterize(subroutine)};
1801 const Procedure *p1{Characterize(f1)};
1802 const Procedure *p2{Characterize(f2)};
1889 "Procedure '%s' of generic interface '%s' is INTRINSIC but not an unrestricted specific intrinsic function"_port_en_US,
1905 if (const Procedure *procedure{Characterize(specific)}) {
1922 const Procedure &proc, const DummyDataObject &arg) {
1939 static bool ConflictsWithIntrinsicAssignment(const Procedure &proc) {
1952 const GenericKind &kind, const Procedure &proc) {
2002 const Symbol &specific, const Procedure &proc) {
2008 [&](SourceName opName, const Symbol &specific, const Procedure &proc) {
2097 const Symbol &symbol, const Procedure &proc, std::size_t pos) {
2133 const Symbol &specific, const Procedure &proc) {
2262 const Procedure *CheckHelper::Characterize(const Symbol &symbol) {
2266 Procedure::Characterize(symbol, context_.foldingContext()))};
2344 "Procedure component '%s' must have NOPASS attribute or explicit interface"_err_en_US,
2351 "Procedure component '%s' has invalid interface '%s'"_err_en_US, name,
2361 ? "Procedure component '%s' with no dummy arguments"
2363 : "Procedure binding '%s' with no dummy arguments"
2454 "Procedure bound to non-ABSTRACT derived type '%s' may not be DEFERRED"_err_en_US,
2782 if (const Procedure *proc{Characterize(specific)}) {
3701 const Procedure *proc1{checkHelper.Characterize(symbol1)};
3702 const Procedure *proc2{checkHelper.Characterize(symbol2)};
3706 if (proc1->attrs.test(Procedure::Attr::Pure) !=
3707 proc2->attrs.test(Procedure::Attr::Pure)) {
3711 if (proc1->attrs.test(Procedure::Attr::Elemental) !=
3712 proc2->attrs.test(Procedure::Attr::Elemental)) {
3716 if (proc1->attrs.test(Procedure::Attr::BindC) !=
3717 proc2->attrs.test(Procedure::Attr::BindC)) {
3887 const Symbol &ultimateSpecific, const Procedure &procedure) {