Lines Matching defs:subroutine
79 const Symbol &subroutine, SourceName, const Symbol &derivedType);
418 "Result of pure function may not have an impure FINAL subroutine"_err_en_US);
765 const char *what{InFunction() ? "function" : "subroutine"};
785 "An INTENT(OUT) dummy argument of a pure %s may not have an impure FINAL subroutine"_err_en_US,
1488 "An ELEMENTAL subroutine may not have an alternate return dummy argument"_err_en_US);
1530 "A subroutine may not have LAUNCH_BOUNDS() or CLUSTER_DIMS() unless it has ATTRIBUTES(GLOBAL) or ATTRIBUTES(GRID_GLOBAL)"_err_en_US);
1694 const Symbol &subroutine, SourceName finalName, const Symbol &derivedType) {
1695 if (!IsModuleProcedure(subroutine)) {
1696 SayWithDeclaration(subroutine, finalName,
1697 "FINAL subroutine '%s' of derived type '%s' must be a module procedure"_err_en_US,
1698 subroutine.name(), derivedType.name());
1701 const Procedure *proc{Characterize(subroutine)};
1706 SayWithDeclaration(subroutine, finalName,
1707 "FINAL subroutine '%s' of derived type '%s' must be a subroutine"_err_en_US,
1708 subroutine.name(), derivedType.name());
1712 SayWithDeclaration(subroutine, finalName,
1713 "FINAL subroutine '%s' of derived type '%s' must have a single dummy argument"_err_en_US,
1714 subroutine.name(), derivedType.name());
1718 const Symbol *errSym{&subroutine};
1719 if (const auto *details{subroutine.detailsIf<SubprogramDetails>()}) {
1728 SayWithDeclaration(subroutine, finalName,
1729 "FINAL subroutine '%s' of derived type '%s' must have a single dummy argument that is a data object"_err_en_US,
1730 subroutine.name(), derivedType.name());
1736 "FINAL subroutine '%s' of derived type '%s' must not have an OPTIONAL dummy argument"_err_en_US,
1737 subroutine.name(), derivedType.name());
1742 "FINAL subroutine '%s' of derived type '%s' must not have an ALLOCATABLE dummy argument"_err_en_US,
1743 subroutine.name(), derivedType.name());
1748 "FINAL subroutine '%s' of derived type '%s' must not have a POINTER dummy argument"_err_en_US,
1749 subroutine.name(), derivedType.name());
1754 "FINAL subroutine '%s' of derived type '%s' must not have a dummy argument with INTENT(OUT)"_err_en_US,
1755 subroutine.name(), derivedType.name());
1760 "FINAL subroutine '%s' of derived type '%s' must not have a dummy argument with the VALUE attribute"_err_en_US,
1761 subroutine.name(), derivedType.name());
1766 "FINAL subroutine '%s' of derived type '%s' must not have a coarray dummy argument"_err_en_US,
1767 subroutine.name(), derivedType.name());
1772 "FINAL subroutine '%s' of derived type '%s' must not have a polymorphic dummy argument"_err_en_US,
1773 subroutine.name(), derivedType.name());
1778 "FINAL subroutine '%s' of derived type '%s' must have a TYPE(%s) dummy argument"_err_en_US,
1779 subroutine.name(), derivedType.name(), derivedType.name());
1788 "FINAL subroutine '%s' of derived type '%s' must have a dummy argument with an assumed LEN type parameter '%s=*'"_err_en_US,
1789 subroutine.name(), derivedType.name(), ref->name());
2142 msg = "Defined assignment procedure '%s' must be a subroutine"_err_en_US;
2144 msg = "Defined assignment subroutine '%s' must have"
2154 "Defined assignment subroutine '%s' conflicts with intrinsic assignment"_err_en_US;
2168 msg = "In defined assignment subroutine '%s', dummy argument '%s'"
2173 msg = "In defined assignment subroutine '%s', first dummy argument '%s'"
2178 "In defined assignment subroutine '%s', first dummy argument '%s' should have INTENT(OUT) or INTENT(INOUT)"_warn_en_US;
2182 msg = "In defined assignment subroutine '%s', second dummy"
2187 "In defined assignment subroutine '%s', second dummy argument '%s' should have INTENT(IN) or VALUE attribute"_warn_en_US;
2190 "In defined assignment subroutine '%s', second dummy argument '%s' must not be a pointer"_err_en_US;
2193 "In defined assignment subroutine '%s', second dummy argument '%s' must not be an allocatable"_err_en_US;
2199 msg = "In defined assignment subroutine '%s', dummy argument '%s'"
2246 "'%s' of derived type '%s' does not have a FINAL subroutine for its rank (%d)"_warn_en_US,
2249 "'%s' of derived type '%s' extended from '%s' does not have a FINAL subroutine for its rank (%d)"_warn_en_US,
3441 symbol.name(), isSubroutine ? "subroutine" : "function",
3442 ref->name(), isSubroutine ? "function" : "subroutine");
3657 ? "Module function '%s' was declared as a subroutine in the"
3659 : "Module subroutine '%s' was declared as a function in the"