[flang] Address review comments
Change `const Symbol *` to `const Symbol &`. Simplify expression for `Assumed()` and `Deferred()` in `ParamValue`. Original-commit: flang-compiler/f18@b3e76706ca Reviewed-on: https://github.com/flang-compiler/f18/pull/223
This commit is contained in:
parent
9095548553
commit
66d2705025
|
@ -27,10 +27,10 @@ using namespace Fortran::parser::literals;
|
|||
|
||||
namespace Fortran::evaluate {
|
||||
|
||||
int GetSymbolRank(const Symbol *symbol) { return symbol->Rank(); }
|
||||
int GetSymbolRank(const Symbol &symbol) { return symbol.Rank(); }
|
||||
|
||||
const parser::CharBlock &GetSymbolName(const Symbol *symbol) {
|
||||
return symbol->name();
|
||||
const parser::CharBlock &GetSymbolName(const Symbol &symbol) {
|
||||
return symbol.name();
|
||||
}
|
||||
|
||||
// Constructors, accessors, mutators
|
||||
|
|
|
@ -48,8 +48,8 @@ template<typename A> struct Variable;
|
|||
using IndirectSubscriptIntegerExpr =
|
||||
CopyableIndirection<Expr<SubscriptInteger>>;
|
||||
|
||||
int GetSymbolRank(const Symbol *);
|
||||
const parser::CharBlock &GetSymbolName(const Symbol *);
|
||||
int GetSymbolRank(const Symbol &);
|
||||
const parser::CharBlock &GetSymbolName(const Symbol &);
|
||||
|
||||
// R913 structure-component & C920: Defined to be a multi-part
|
||||
// data-ref whose last part has no subscripts (or image-selector, although
|
||||
|
@ -267,7 +267,7 @@ public:
|
|||
|
||||
int Rank() const {
|
||||
return std::visit(
|
||||
common::visitors{[](const Symbol *sym) { return GetSymbolRank(sym); },
|
||||
common::visitors{[](const Symbol *sym) { return GetSymbolRank(*sym); },
|
||||
[](const auto &x) { return x.Rank(); }},
|
||||
u);
|
||||
}
|
||||
|
@ -282,7 +282,7 @@ public:
|
|||
|
||||
std::ostream &Dump(std::ostream &o) const {
|
||||
std::visit(common::visitors{[&](const Symbol *sym) {
|
||||
o << GetSymbolName(sym).ToString();
|
||||
o << GetSymbolName(*sym).ToString();
|
||||
},
|
||||
[&](const auto &x) { x.Dump(o); }},
|
||||
u);
|
||||
|
|
|
@ -228,8 +228,8 @@ private:
|
|||
// A type parameter value: integer expression or assumed or deferred.
|
||||
class ParamValue {
|
||||
public:
|
||||
static const ParamValue Assumed() { return ParamValue(Category::Assumed); }
|
||||
static const ParamValue Deferred() { return ParamValue(Category::Deferred); }
|
||||
static const ParamValue Assumed() { return Category::Assumed; }
|
||||
static const ParamValue Deferred() { return Category::Deferred; }
|
||||
ParamValue(const parser::Expr &);
|
||||
bool isExplicit() const { return category_ == Category::Explicit; }
|
||||
bool isAssumed() const { return category_ == Category::Assumed; }
|
||||
|
|
Loading…
Reference in a new issue