Similar to procedure argument, the function result cannot be one
named constant.
Reviewed By: klausler
Differential Revision: https://reviews.llvm.org/D126693
"A dummy argument may not have the SAVE attribute"_err_en_US);
}
} else if (IsFunctionResult(symbol)) {
+ if (IsNamedConstant(symbol)) {
+ messages_.Say(
+ "A function result may not also be a named constant"_err_en_US);
+ }
if (!symbol.test(Symbol::Flag::InDataStmt) /*caught elsewhere*/ &&
IsSaved(symbol)) {
messages_.Say(
--- /dev/null
+! RUN: %python %S/test_errors.py %s %flang_fc1
+! test named constant declarations
+
+function f1() result(x)
+ !ERROR: A function result may not also be a named constant
+ integer, parameter :: x = 1
+end
+