Lines Matching defs:keyword
43 // their keyword name (rarely used, but always defined), allowable type
258 const char *keyword{nullptr};
316 while (n < maxArguments && dummy[n].keyword) {
1666 static bool CheckMaxMinArgument(parser::CharBlock keyword,
1670 for (; j < keyword.size(); ++j) {
1671 char ch{(keyword)[j]};
1676 if (keyword.size() < 2 || (keyword)[0] != 'a' || j < keyword.size()) {
1677 messages.Say(keyword,
1678 "argument keyword '%s=' is not known in call to '%s'"_err_en_US,
1679 keyword, intrinsicName);
1682 if (!set.insert(keyword).second) {
1683 messages.Say(keyword,
1684 "argument keyword '%s=' was repeated in call to '%s'"_err_en_US,
1685 keyword, intrinsicName);
1691 // Validate the keyword, if any, and ensure that A1 and A2 are always placed in
1699 if (std::optional<parser::CharBlock> keyword{arg.keyword()}) {
1700 if (!CheckMaxMinArgument(*keyword, set, intrinsicName, messages)) {
1703 const bool isA1{*keyword == parser::CharBlock{"a1", 2}};
1708 const bool isA2{*keyword == parser::CharBlock{"a2", 2}};
1716 messages.Say(*keyword,
1717 "keyword argument '%s=' to intrinsic '%s' was supplied "
1719 *keyword, intrinsicName);
1739 const char *keyword) {
1757 keyword, type->category() == TypeCategory::Integer ? "int" : "logical",
1775 for (; dummyArgPatterns < maxArguments && dummy[dummyArgPatterns].keyword;
1799 if (arg->keyword()) {
1803 "actual argument #%d without a keyword may not follow an actual argument with a keyword"_err_en_US,
1822 if (arg->keyword()) {
1823 found = *arg->keyword() == dummy[j].keyword;
1826 if (previous->keyword()) {
1827 messages.Say(*arg->keyword(),
1828 "repeated keyword argument to intrinsic '%s'"_err_en_US,
1831 messages.Say(*arg->keyword(),
1832 "keyword argument to intrinsic '%s' was supplied "
1847 if (arg->keyword()) {
1848 messages.Say(*arg->keyword(),
1849 "unknown keyword argument to intrinsic '%s'"_err_en_US, name);
1879 std::string kw{d.keyword};
1893 d.keyword);
1904 d.keyword);
1914 d.keyword, name);
1930 d.keyword);
1948 d.keyword, nextParam->keyword);
1952 d.keyword);
1970 d.keyword);
1976 "Actual argument for '%s=' has bad type '%s'"_err_en_US, d.keyword,
2068 d.keyword, name);
2083 argOk = CheckAtomicKind(DEREF(arg), builtinsScope, messages, d.keyword);
2089 d.keyword, type->AsFortran());
2097 argOk = CheckAtomicKind(DEREF(arg), builtinsScope, messages, d.keyword);
2103 argOk = CheckAtomicKind(DEREF(arg), builtinsScope, messages, d.keyword);
2114 d.keyword, type->AsFortran());
2133 d.keyword);
2186 arrayArgName = d.keyword;
2203 d.keyword, name);
2261 argMsg = argMsg + d.keyword + "='" + " argument";
2284 d.keyword, name);
2288 "'%s=' argument has unacceptable rank %d"_err_en_US, d.keyword,
2564 std::string kw{d.keyword};
2565 if (arg->keyword()) {
2566 kw = arg->keyword()->ToString();
2603 dummyArgs.emplace_back(std::string{d.keyword},
2619 dummyArgs.emplace_back(std::string{d.keyword},
2624 dummyArgs.emplace_back(std::string{d.keyword},
2804 if (arg && arg->keyword()) {
2807 if (*arg->keyword() == dummyKeywords[dummyIndex]) {
2812 messages.Say(*arg->keyword(),
2813 "Unknown argument keyword '%s='"_err_en_US, *arg->keyword());
2818 "A positional actual argument may not appear after any keyword arguments"_err_en_US);
3401 // DIM= argument and it wasn't specified with a keyword.
3407 if (auto kw{a->keyword()}; kw && kw == "dim") {
3543 std::string{specific.dummy[j].keyword}, std::move(dummy));
3634 if (keyword) {
3635 o << keyword << '=';