Fix link transport
This commit is contained in:
@@ -7,13 +7,13 @@ using std::set;
|
||||
|
||||
static const char commonIntLetters[6] = {'i', 'j', 'k', 'm', 'n', 'l'};
|
||||
|
||||
static void InitTypes(map<char, SgType*> types)
|
||||
static void InitTypes(map<char, SgType*>& types)
|
||||
{
|
||||
for (char letter = 'a'; letter <= 'z'; letter++)
|
||||
types[letter] = NULL;
|
||||
}
|
||||
|
||||
static void FillCommonTypes(map<char, SgType*> types)
|
||||
static void FillCommonTypes(map<char, SgType*>& types)
|
||||
{
|
||||
for (char letter : commonIntLetters)
|
||||
if (types[letter] == NULL)
|
||||
@@ -24,13 +24,13 @@ static void FillCommonTypes(map<char, SgType*> types)
|
||||
types[letter.first] = new SgType(T_FLOAT);
|
||||
}
|
||||
|
||||
static void FindAllVars(SgExpression* expr, set<SgSymbol*>* allVars)
|
||||
static void FindAllVars(SgExpression* expr, set<SgSymbol*>& allVars)
|
||||
{
|
||||
if (expr == NULL)
|
||||
return;
|
||||
|
||||
if (expr->variant() == VAR_REF || expr->variant() == ARRAY_REF)
|
||||
allVars->insert(expr->symbol());
|
||||
allVars.insert(expr->symbol());
|
||||
|
||||
FindAllVars(expr->lhs(), allVars);
|
||||
FindAllVars(expr->rhs(), allVars);
|
||||
@@ -114,7 +114,7 @@ static map<char, SgType*> FunctionImplicitCheck(SgStatement* function, map<SgSta
|
||||
statement != NULL && statement->variant() != CONTAINS_STMT; statement = statement->lexNext())
|
||||
{
|
||||
for (int expressionNumber = 0; expressionNumber < 3; expressionNumber++)
|
||||
FindAllVars(statement->expr(expressionNumber), &allVars);
|
||||
FindAllVars(statement->expr(expressionNumber), allVars);
|
||||
|
||||
if (statement == function->lastExecutable())
|
||||
break;
|
||||
@@ -174,6 +174,4 @@ void ImplicitCheck(SgFile* file)
|
||||
}
|
||||
|
||||
typesByFunctions.clear();
|
||||
|
||||
printf("%s", file->firstStatement()->unparse());
|
||||
}
|
||||
Reference in New Issue
Block a user