Index: source/core/data/global.cxx =================================================================== --- source/core/data/global.cxx (revision 266676) +++ source/core/data/global.cxx (working copy) @@ -884,7 +884,7 @@ xub_StrLen ScGlobal::FindUnquoted( const String& r while (p < pStop) { if (*p == cChar && !bQuoted) - return p - pStart; + return static_cast(p - pStart); else if (*p == cQuote) { if (!bQuoted) Index: source/core/tool/token.cxx =================================================================== --- source/core/tool/token.cxx (revision 266676) +++ source/core/tool/token.cxx (working copy) @@ -1207,7 +1207,7 @@ bool ScTokenArray::AddFormulaToken(const com::sun: lcl_ExternalRefToCalc( aComplRef.Ref1, aApiCRef.Reference1 ); lcl_ExternalRefToCalc( aComplRef.Ref2, aApiCRef.Reference2 ); // NOTE: This assumes that cached sheets are in consecutive order! - aComplRef.Ref2.nTab = aComplRef.Ref1.nTab + (aApiCRef.Reference2.Sheet - aApiCRef.Reference1.Sheet); + aComplRef.Ref2.nTab = aComplRef.Ref1.nTab + static_cast(aApiCRef.Reference2.Sheet - aApiCRef.Reference1.Sheet); AddExternalDoubleReference( nFileId, aTabName, aComplRef ); } else Index: source/ui/app/inputhdl.cxx =================================================================== --- source/ui/app/inputhdl.cxx (revision 266676) +++ source/ui/app/inputhdl.cxx (working copy) @@ -739,7 +739,7 @@ void ScInputHandler::ShowTipCursor() if( ppFDesc->getFunctionName().getLength() ) { nArgPos = aHelper.GetArgStart( aSelText, nNextFStart, 0 ); - nArgs = ppFDesc->getParameterCount(); + nArgs = static_cast(ppFDesc->getParameterCount()); USHORT nActive = 0; USHORT nCount = 0; @@ -754,7 +754,7 @@ void ScInputHandler::ShowTipCursor() { for( USHORT i=0; i < nArgs; i++ ) { - xub_StrLen nLength=aArgs[i].getLength(); + xub_StrLen nLength = static_cast(aArgs[i].getLength()); if( nArgPos <= aSelText.Len()-1 ) { nActive = i+1; @@ -977,7 +977,7 @@ void ScInputHandler::UseFormulaData() { { nArgPos = aHelper.GetArgStart( aFormula, nNextFStart, 0 ); - nArgs = ppFDesc->getParameterCount(); + nArgs = static_cast(ppFDesc->getParameterCount()); USHORT nActive = 0; USHORT nCount = 0; @@ -992,7 +992,7 @@ void ScInputHandler::UseFormulaData() { for( USHORT i=0; i < nArgs; i++ ) { - xub_StrLen nLength=aArgs[i].getLength(); + xub_StrLen nLength = static_cast(aArgs[i].getLength()); if( nArgPos <= aFormula.Len()-1 ) { nActive = i+1; Index: source/ui/formdlg/formula.cxx =================================================================== --- source/ui/formdlg/formula.cxx (revision 266676) +++ source/ui/formdlg/formula.cxx (working copy) @@ -70,6 +70,7 @@ #include "sc.hrc" #include "servuno.hxx" #include "unonames.hxx" +#include "externalrefmgr.hxx" #include @@ -659,7 +660,7 @@ uno::Reference< sheet::XFormulaOpCodeMapper> ScFor ::std::auto_ptr ScFormulaDlg::convertToTokenArray(const uno::Sequence< sheet::FormulaToken >& _aTokenList) { ::std::auto_ptr pArray(new ScTokenArray()); - pArray->Fill(_aTokenList); + pArray->Fill( _aTokenList, pDoc->GetExternalRefManager()); return pArray; } Index: source/ui/docshell/externalrefmgr.cxx =================================================================== --- source/ui/docshell/externalrefmgr.cxx (revision 266676) +++ source/ui/docshell/externalrefmgr.cxx (working copy) @@ -622,7 +622,7 @@ SCsTAB ScExternalRefCache::getTabSpan( sal_uInt16 size_t nStartDist = ::std::distance( itrBeg, itrStartTab); size_t nEndDist = ::std::distance( itrBeg, itrEndTab); - return nStartDist <= nEndDist ? nEndDist - nStartDist + 1 : -(nStartDist - nEndDist + 1); + return nStartDist <= nEndDist ? static_cast(nEndDist - nStartDist + 1) : -static_cast(nStartDist - nEndDist + 1); } void ScExternalRefCache::getAllNumberFormats(vector& rNumFmts) const Index: inc/token.hxx =================================================================== --- inc/token.hxx (revision 266676) +++ inc/token.hxx (working copy) @@ -195,6 +195,7 @@ class ScExternalSingleRefToken : public ScToken virtual const ScSingleRefData& GetSingleRef() const; virtual ScSingleRefData& GetSingleRef(); virtual BOOL operator==( const formula::FormulaToken& rToken ) const; + virtual FormulaToken* Clone() const { return new ScExternalSingleRefToken(*this); } }; @@ -220,6 +221,7 @@ class ScExternalDoubleRefToken : public ScToken virtual const ScComplexRefData& GetDoubleRef() const; virtual ScComplexRefData& GetDoubleRef(); virtual BOOL operator==( const formula::FormulaToken& rToken ) const; + virtual FormulaToken* Clone() const { return new ScExternalDoubleRefToken(*this); } }; @@ -237,6 +239,7 @@ class ScExternalNameToken : public ScToken virtual USHORT GetIndex() const; virtual const String& GetString() const; virtual BOOL operator==( const formula::FormulaToken& rToken ) const; + virtual FormulaToken* Clone() const { return new ScExternalNameToken(*this); } };