[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:
Tim Keith 2018-11-07 12:41:52 -08:00
parent 9095548553
commit 66d2705025
3 changed files with 9 additions and 9 deletions

View file

@ -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

View file

@ -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);

View file

@ -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; }