diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2014-10-22 18:58:57 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2014-10-23 09:30:10 +0200 |
commit | 2e363d1135ede20e2560df4eff27c080bc7e782e (patch) | |
tree | 9d5b9728020c7974adbe5e247d3c12a92dbf58c3 /sc/qa | |
parent | d9a782be7ba158ce21ecce1fe53a7517bb6c5a28 (diff) |
Remove ScToken from the formula::FormulaToken hierarchy
...to keep UBSan from complaining about illegal downcasts from FormulaToken to
ScToken (which were practically harmless, given that ScToken did not add any
data members).
Change-Id: I8fdc026eec363442cc4b720b71d65c972b4a4446
Diffstat (limited to 'sc/qa')
-rw-r--r-- | sc/qa/unit/ucalc.cxx | 8 | ||||
-rw-r--r-- | sc/qa/unit/ucalc_sharedformula.cxx | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx index 7258326a7375..0c081c13dc69 100644 --- a/sc/qa/unit/ucalc.cxx +++ b/sc/qa/unit/ucalc.cxx @@ -1242,7 +1242,7 @@ bool broadcasterShifted(const ScDocument& rDoc, const ScAddress& rFrom, const Sc return true; } -ScToken* getSingleRefToken(ScDocument& rDoc, const ScAddress& rPos) +formula::FormulaToken* getSingleRefToken(ScDocument& rDoc, const ScAddress& rPos) { ScFormulaCell* pFC = rDoc.GetFormulaCell(rPos); if (!pFC) @@ -1258,7 +1258,7 @@ ScToken* getSingleRefToken(ScDocument& rDoc, const ScAddress& rPos) return NULL; } - ScToken* pToken = static_cast<ScToken*>(pTokens->First()); + formula::FormulaToken* pToken = pTokens->First(); if (!pToken || pToken->GetType() != formula::svSingleRef) { cerr << "Not a single reference token." << endl; @@ -1270,7 +1270,7 @@ ScToken* getSingleRefToken(ScDocument& rDoc, const ScAddress& rPos) bool checkRelativeRefToken(ScDocument& rDoc, const ScAddress& rPos, SCsCOL nRelCol, SCsROW nRelRow) { - ScToken* pToken = getSingleRefToken(rDoc, rPos); + formula::FormulaToken* pToken = getSingleRefToken(rDoc, rPos); if (!pToken) return false; @@ -1292,7 +1292,7 @@ bool checkRelativeRefToken(ScDocument& rDoc, const ScAddress& rPos, SCsCOL nRelC bool checkDeletedRefToken(ScDocument& rDoc, const ScAddress& rPos) { - ScToken* pToken = getSingleRefToken(rDoc, rPos); + formula::FormulaToken* pToken = getSingleRefToken(rDoc, rPos); if (!pToken) return false; diff --git a/sc/qa/unit/ucalc_sharedformula.cxx b/sc/qa/unit/ucalc_sharedformula.cxx index e4e1a12d9b69..16d55771f9d7 100644 --- a/sc/qa/unit/ucalc_sharedformula.cxx +++ b/sc/qa/unit/ucalc_sharedformula.cxx @@ -874,7 +874,7 @@ void Test::testSharedFormulasDeleteColumns() CPPUNIT_ASSERT(pCode && pCode->GetLen() == 1); const FormulaToken* pToken = pCode->GetArray()[0]; CPPUNIT_ASSERT(pToken->GetType() == svSingleRef); - const ScSingleRefData* pSRef = static_cast<const ScToken*>(pToken)->GetSingleRef(); + const ScSingleRefData* pSRef = pToken->GetSingleRef(); CPPUNIT_ASSERT(pSRef->IsColDeleted()); CPPUNIT_ASSERT_EQUAL(static_cast<SCROW>(0), pSRef->toAbs(ScAddress(1,0,0)).Row()); |