private_removing: исправление багов #16

Merged
Alexander_KS merged 1 commits from private_removing into master 2023-11-29 11:04:32 +00:00
Showing only changes of commit 5b34551310 - Show all commits

View File

@@ -433,9 +433,8 @@ static void fillReadShortFixedSumscripts(SgExpression* exp, const PrivateToRemov
{
auto subscripts = getShortFixedSubscriptsVector((SgArrayRefExp*)exp, var.fixedDimensions);
fixedSubscripts.insert(subscripts);
return;
}
return;
}
fillReadShortFixedSumscripts(exp->lhs(), var, fixedSubscripts);
@@ -1350,16 +1349,14 @@ static SgForStmt* getScopeLoopStmt(SgStatement* stmt)
static int getDimension(SgSymbol* arraySym)
{
SgStatement* declarationStmt = arraySym->declaredInStmt();
if (declarationStmt == nullptr)
return 0;
SgExprListExp* expList = (SgExprListExp*)declarationStmt->expr(0);
for (int i = 0; i < expList->length(); ++i)
if (expList->elem(i)->symbol()->identifier() == arraySym->identifier())
return ((SgExprListExp*)expList->elem(i)->lhs())->length();
SgExpression* declExpr = arraySym->makeDeclExpr();
if (declExpr == nullptr)
printInternalError(convertFileName(__FILE__).c_str(), __LINE__);
return 0;
int dimensionNum = ((SgExprListExp*)declExpr->lhs())->length();
delete declExpr;
Review

лучше ничего связанного с Sage не удалять, иначе потом замучаемся искать ошибку в испорченных структурах на более низком уровне.

лучше ничего связанного с Sage не удалять, иначе потом замучаемся искать ошибку в испорченных структурах на более низком уровне.
return dimensionNum;
}
// findChildLoop returns LoopGraph for provided loop statement