diff options
Diffstat (limited to 'idlc')
-rw-r--r-- | idlc/inc/astexpression.hxx | 4 | ||||
-rw-r--r-- | idlc/source/astenum.cxx | 2 | ||||
-rw-r--r-- | idlc/source/astexpression.cxx | 29 |
3 files changed, 4 insertions, 31 deletions
diff --git a/idlc/inc/astexpression.hxx b/idlc/inc/astexpression.hxx index ca060719ef2e..9bc1b9004409 100644 --- a/idlc/inc/astexpression.hxx +++ b/idlc/inc/astexpression.hxx @@ -114,8 +114,8 @@ public: // Evaluate then store value inside this AstExpression void evaluate(); - // Compare to AstExpressions - bool compare(AstExpression *pExpr); + // Compare LONG AstExpression values + bool compareLong(AstExpression *pExpr); OString toString(); private: diff --git a/idlc/source/astenum.cxx b/idlc/source/astenum.cxx index f006f611a8d4..ece9609a88d2 100644 --- a/idlc/source/astenum.cxx +++ b/idlc/source/astenum.cxx @@ -43,7 +43,7 @@ AstConstant* AstEnum::checkValue(AstExpression* pExpr) AstDeclaration* pDecl = *iter; AstConstant* pConst = static_cast<AstConstant*>(pDecl); - if (pConst->getConstValue()->compare(pExpr)) + if (pConst->getConstValue()->compareLong(pExpr)) return pConst; ++iter; diff --git a/idlc/source/astexpression.cxx b/idlc/source/astexpression.cxx index 4e583b35e43c..0953c9bdbc3c 100644 --- a/idlc/source/astexpression.cxx +++ b/idlc/source/astexpression.cxx @@ -758,7 +758,7 @@ bool AstExpression::coerce(ExprType t) return m_exprValue != nullptr; } -bool AstExpression::compare(AstExpression *pExpr) +bool AstExpression::compareLong(AstExpression *pExpr) { bool bRet = false; if (m_combOperator != pExpr->getCombOperator()) @@ -771,36 +771,9 @@ bool AstExpression::compare(AstExpression *pExpr) return bRet; switch (m_exprValue->et) { - case ET_short: - bRet = m_exprValue->u.sval == pExpr->getExprValue()->u.sval; - break; - case ET_ushort: - bRet = m_exprValue->u.usval == pExpr->getExprValue()->u.usval; - break; case ET_long: bRet = m_exprValue->u.lval == pExpr->getExprValue()->u.lval; break; - case ET_ulong: - bRet = m_exprValue->u.ulval == pExpr->getExprValue()->u.ulval; - break; - case ET_hyper: - bRet = m_exprValue->u.hval == pExpr->getExprValue()->u.hval; - break; - case ET_uhyper: - bRet = m_exprValue->u.uhval == pExpr->getExprValue()->u.uhval; - break; - case ET_float: - bRet = m_exprValue->u.fval == pExpr->getExprValue()->u.fval; - break; - case ET_double: - bRet = m_exprValue->u.dval == pExpr->getExprValue()->u.dval; - break; - case ET_byte: - bRet = m_exprValue->u.byval == pExpr->getExprValue()->u.byval; - break; - case ET_boolean: - bRet = m_exprValue->u.lval == pExpr->getExprValue()->u.lval; - break; default: OSL_ASSERT(false); bRet = false; |