fixed analysis of arrays with type character in function parameters
This commit is contained in:
@@ -723,7 +723,7 @@ static void fillIn(FuncInfo *currF, SgExpression *ex, const map<string, int> &pa
|
||||
{
|
||||
if (ex)
|
||||
{
|
||||
if (!isInFuncPar && (ex->variant() == VAR_REF || isArrayRef(ex)))
|
||||
if (!isInFuncPar && (ex->variant() == VAR_REF || ex->variant() == ARRAY_REF))
|
||||
{
|
||||
const char *name = ex->symbol()->identifier();
|
||||
if (name && name != string(""))
|
||||
@@ -880,7 +880,7 @@ static void fillInOut(FuncInfo *currF, SgStatement *start, SgStatement *last, co
|
||||
for (auto ex = read->itemList(); ex; ex = ex->rhs())
|
||||
{
|
||||
SgExpression* item = ex->lhs();
|
||||
if (item->variant() == VAR_REF || isArrayRef(item))
|
||||
if (item && (item->variant() == VAR_REF || item->variant() == ARRAY_REF))
|
||||
{
|
||||
string symb = "";
|
||||
if (item->symbol())
|
||||
@@ -901,7 +901,7 @@ static void fillInOut(FuncInfo *currF, SgStatement *start, SgStatement *last, co
|
||||
if (item->rhs())
|
||||
queue.push(item->rhs());
|
||||
|
||||
if (item->variant() == VAR_REF || isArrayRef(item))
|
||||
if (item->variant() == VAR_REF || item->variant() == ARRAY_REF)
|
||||
{
|
||||
string symb = "";
|
||||
if (item->symbol())
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
#pragma once
|
||||
|
||||
#define VERSION_SPF "2474"
|
||||
#define VERSION_SPF "2475"
|
||||
|
||||
Reference in New Issue
Block a user