diff --git a/src/mapleall/maple_me/src/alias_class.cpp b/src/mapleall/maple_me/src/alias_class.cpp index 0e0896110abbe1d14afcb0baa9c4ac52e1f2558c..c6c884e480bb9bae02a633fce4f72f5b02940e8f 100644 --- a/src/mapleall/maple_me/src/alias_class.cpp +++ b/src/mapleall/maple_me/src/alias_class.cpp @@ -992,9 +992,8 @@ void AliasClass::CollectMayDefForDassign(const StmtNode &stmt, std::setHasFields()) { - if ((ostOfAliasAe->GetFieldID() < ostOfLhsAe->GetFieldID()) || - (ostOfAliasAe->GetFieldID() > - (ostOfLhsAe->GetFieldID() + static_cast(lhsAeType->NumberOfFieldIDs())))) { + if (fldIDB < fldIDA || + fldIDB > fldIDA + static_cast(lhsAeType->NumberOfFieldIDs())) { if (!aliasAeType->HasFields()) { continue; } @@ -1009,6 +1008,7 @@ void AliasClass::CollectMayDefForDassign(const StmtNode &stmt, std::set