diff --git a/flang/lib/Evaluate/characteristics.cpp b/flang/lib/Evaluate/characteristics.cpp --- a/flang/lib/Evaluate/characteristics.cpp +++ b/flang/lib/Evaluate/characteristics.cpp @@ -366,11 +366,11 @@ // 15.4.3.6, paragraph 2. static std::optional CharacterizeDummyArgument( const semantics::Symbol &symbol, FoldingContext &context, - semantics::UnorderedSymbolSet &seenProcs); + semantics::UnorderedSymbolSet seenProcs); static std::optional CharacterizeProcedure( const semantics::Symbol &original, FoldingContext &context, - semantics::UnorderedSymbolSet &seenProcs) { + semantics::UnorderedSymbolSet seenProcs) { Procedure result; const auto &symbol{ResolveAssociations(original)}; if (seenProcs.find(symbol) != seenProcs.end()) { @@ -508,7 +508,7 @@ static std::optional CharacterizeDummyProcedure( const semantics::Symbol &symbol, FoldingContext &context, - semantics::UnorderedSymbolSet &seenProcs) { + semantics::UnorderedSymbolSet seenProcs) { if (auto procedure{CharacterizeProcedure(symbol, context, seenProcs)}) { // Dummy procedures may not be elemental. Elemental dummy procedure // interfaces are errors when the interface is not intrinsic, and that @@ -562,7 +562,7 @@ static std::optional CharacterizeDummyArgument( const semantics::Symbol &symbol, FoldingContext &context, - semantics::UnorderedSymbolSet &seenProcs) { + semantics::UnorderedSymbolSet seenProcs) { auto name{symbol.name().ToString()}; if (symbol.has() || symbol.has()) {