loplugin:unnecessaryoverride

Change-Id: I08c55a3023ec2e8990098eeb60e91cd18556e7ae
Reviewed-on: https://gerrit.libreoffice.org/29656
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
This commit is contained in:
Noel Grandin 2016-10-05 09:34:05 +02:00
parent 14a7ac2033
commit 62223f9a8a
24 changed files with 79 additions and 154 deletions

View File

@ -39,6 +39,19 @@ public:
return; return;
if (fn == SRCDIR "/forms/source/component/Time.cxx") if (fn == SRCDIR "/forms/source/component/Time.cxx")
return; return;
if (fn == SRCDIR "/svx/source/dialog/hyperdlg.cxx")
return;
if (fn == SRCDIR "/svx/source/dialog/rubydialog.cxx")
return;
if (fn.startswith(SRCDIR "/canvas"))
return;
if (fn == SRCDIR "/sc/source/ui/view/spelldialog.cxx")
return;
if (fn == SRCDIR "/sd/source/ui/dlg/SpellDialogChildWindow.cxx")
return;
// HAVE_ODBC_ADMINISTRATION
if (fn == SRCDIR "/dbaccess/source/ui/dlg/dsselect.cxx")
return;
TraverseDecl(compiler.getASTContext().getTranslationUnitDecl()); TraverseDecl(compiler.getASTContext().getTranslationUnitDecl());
} }
@ -72,6 +85,10 @@ bool UnnecessaryOverride::VisitCXXMethodDecl(const CXXMethodDecl* methodDecl)
// entertaining template magic // entertaining template magic
if (aFileName == SRCDIR "/sc/source/ui/vba/vbaformatcondition.cxx") if (aFileName == SRCDIR "/sc/source/ui/vba/vbaformatcondition.cxx")
return true; return true;
// not sure what is going on here, but removing the override causes a crash
if (methodDecl->getQualifiedNameAsString() == "SwXTextDocument::queryAdapter")
return true;
const CXXMethodDecl* overriddenMethodDecl = *methodDecl->begin_overridden_methods(); const CXXMethodDecl* overriddenMethodDecl = *methodDecl->begin_overridden_methods();
@ -80,62 +97,78 @@ bool UnnecessaryOverride::VisitCXXMethodDecl(const CXXMethodDecl* methodDecl)
{ {
return true; return true;
} }
if (methodDecl->getAccess() == AS_public && overriddenMethodDecl->getAccess() == AS_protected)
return true;
//TODO: check for identical exception specifications //TODO: check for identical exception specifications
const CompoundStmt* compoundStmt = dyn_cast<CompoundStmt>(methodDecl->getBody()); const CompoundStmt* compoundStmt = dyn_cast<CompoundStmt>(methodDecl->getBody());
if (!compoundStmt || compoundStmt->size() != 1) if (!compoundStmt || compoundStmt->size() != 1)
return true; return true;
auto returnStmt = dyn_cast<ReturnStmt>(*compoundStmt->body_begin());
if (returnStmt == nullptr) {
return true;
}
auto returnExpr = returnStmt->getRetValue();
if (returnExpr == nullptr) {
return true;
}
returnExpr = returnExpr->IgnoreImplicit();
// In something like const CXXMemberCallExpr* callExpr;
// if (compat::getReturnType(*methodDecl).getCanonicalType()->isVoidType())
// Reference< XResultSet > SAL_CALL OPreparedStatement::executeQuery( {
// const rtl::OUString& sql) callExpr = dyn_cast<CXXMemberCallExpr>(*compoundStmt->body_begin());
// throw(SQLException, RuntimeException, std::exception) }
// { else
// return OCommonStatement::executeQuery( sql ); {
// } auto returnStmt = dyn_cast<ReturnStmt>(*compoundStmt->body_begin());
// if (returnStmt == nullptr) {
// look down through all the return true;
// }
// ReturnStmt auto returnExpr = returnStmt->getRetValue();
// `-ExprWithCleanups if (returnExpr == nullptr) {
// `-CXXConstructExpr return true;
// `-MaterializeTemporaryExpr }
// `-ImplicitCastExpr returnExpr = returnExpr->IgnoreImplicit();
// `-CXXBindTemporaryExpr
// `-CXXMemberCallExpr // In something like
// //
// where the fact that the overriding and overridden function have identical // Reference< XResultSet > SAL_CALL OPreparedStatement::executeQuery(
// return types makes us confident that all we need to check here is whether // const rtl::OUString& sql)
// there's an (arbitrary, one-argument) CXXConstructorExpr and // throw(SQLException, RuntimeException, std::exception)
// CXXBindTemporaryExpr in between: // {
if (auto ctorExpr = dyn_cast<CXXConstructExpr>(returnExpr)) { // return OCommonStatement::executeQuery( sql );
if (ctorExpr->getNumArgs() == 1) { // }
if (auto tempExpr = dyn_cast<CXXBindTemporaryExpr>( //
ctorExpr->getArg(0)->IgnoreImplicit())) // look down through all the
{ //
returnExpr = tempExpr->getSubExpr(); // ReturnStmt
// `-ExprWithCleanups
// `-CXXConstructExpr
// `-MaterializeTemporaryExpr
// `-ImplicitCastExpr
// `-CXXBindTemporaryExpr
// `-CXXMemberCallExpr
//
// where the fact that the overriding and overridden function have identical
// return types makes us confident that all we need to check here is whether
// there's an (arbitrary, one-argument) CXXConstructorExpr and
// CXXBindTemporaryExpr in between:
if (auto ctorExpr = dyn_cast<CXXConstructExpr>(returnExpr)) {
if (ctorExpr->getNumArgs() == 1) {
auto tempExpr1 = ctorExpr->getArg(0)->IgnoreImplicit();
if (auto tempExpr2 = dyn_cast<CXXBindTemporaryExpr>(tempExpr1))
{
returnExpr = tempExpr2->getSubExpr();
}
else if (auto tempExpr2 = dyn_cast<CXXMemberCallExpr>(tempExpr1))
{
returnExpr = tempExpr2;
}
} }
} }
callExpr = dyn_cast<CXXMemberCallExpr>(returnExpr->IgnoreParenImpCasts());
} }
const CXXMemberCallExpr* callExpr = dyn_cast<CXXMemberCallExpr>(
returnExpr->IgnoreParenImpCasts());
if (!callExpr || callExpr->getMethodDecl() != overriddenMethodDecl) if (!callExpr || callExpr->getMethodDecl() != overriddenMethodDecl)
return true; return true;
const ImplicitCastExpr* expr1 = dyn_cast_or_null<ImplicitCastExpr>(callExpr->getImplicitObjectArgument()); const Expr* expr1 = callExpr->getImplicitObjectArgument()->IgnoreImpCasts();
if (!expr1) if (!expr1)
return true; return true;
const CXXThisExpr* expr2 = dyn_cast_or_null<CXXThisExpr>(expr1->getSubExpr()); const CXXThisExpr* expr2 = dyn_cast_or_null<CXXThisExpr>(expr1);
if (!expr2) if (!expr2)
return true; return true;
for (unsigned i = 0; i<callExpr->getNumArgs(); ++i) { for (unsigned i = 0; i<callExpr->getNumArgs(); ++i) {
@ -146,9 +179,10 @@ bool UnnecessaryOverride::VisitCXXMethodDecl(const CXXMethodDecl* methodDecl)
} }
report( report(
DiagnosticsEngine::Warning, "%0 virtual function just calls %1 parent", DiagnosticsEngine::Warning, "%0 virtual function just calls %1 parent",
methodDecl->getSourceRange().getBegin()) methodDecl->getSourceRange().getBegin())
<< methodDecl->getAccess() << overriddenMethodDecl->getAccess() << methodDecl->getAccess()
<< overriddenMethodDecl->getAccess()
<< methodDecl->getSourceRange(); << methodDecl->getSourceRange();
if (methodDecl->getCanonicalDecl()->getLocation() != methodDecl->getLocation()) { if (methodDecl->getCanonicalDecl()->getLocation() != methodDecl->getLocation()) {
const CXXMethodDecl* pOther = methodDecl->getCanonicalDecl(); const CXXMethodDecl* pOther = methodDecl->getCanonicalDecl();

View File

@ -61,11 +61,6 @@ OCatalog::~OCatalog()
delete m_pUsers; delete m_pUsers;
} }
void SAL_CALL OCatalog::acquire() throw()
{
OCatalog_BASE::acquire();
}
void SAL_CALL OCatalog::release() throw() void SAL_CALL OCatalog::release() throw()
{ {
release_ChildImpl(); release_ChildImpl();

View File

@ -183,11 +183,6 @@ namespace drawinglayer
{ {
} }
bool SdrCubePrimitive3D::operator==(const BasePrimitive3D& rPrimitive) const
{
return SdrPrimitive3D::operator==(rPrimitive);
}
basegfx::B3DRange SdrCubePrimitive3D::getB3DRange(const geometry::ViewInformation3D& /*rViewInformation*/) const basegfx::B3DRange SdrCubePrimitive3D::getB3DRange(const geometry::ViewInformation3D& /*rViewInformation*/) const
{ {
// use default from sdrPrimitive3D which uses transformation expanded by line width/2. // use default from sdrPrimitive3D which uses transformation expanded by line width/2.

View File

@ -99,12 +99,6 @@ namespace accessibility
} }
} }
uno::Any SAL_CALL AccessibleImageBullet::queryInterface (const uno::Type & rType) throw (uno::RuntimeException, std::exception)
{
return AccessibleImageBulletInterfaceBase::queryInterface(rType);
}
uno::Reference< XAccessibleContext > SAL_CALL AccessibleImageBullet::getAccessibleContext( ) throw (uno::RuntimeException, std::exception) uno::Reference< XAccessibleContext > SAL_CALL AccessibleImageBullet::getAccessibleContext( ) throw (uno::RuntimeException, std::exception)
{ {

View File

@ -31,8 +31,6 @@ typedef SvRefMemberList< SvMetaSlot* > SvSlotElementList;
class SvMetaAttribute : public SvMetaReference class SvMetaAttribute : public SvMetaReference
{ {
public: public:
virtual void ReadAttributesSvIdl( SvIdlDataBase & rBase,
SvTokenStream & rInStm ) override;
tools::SvRef<SvMetaType> aType; tools::SvRef<SvMetaType> aType;
SvIdentifier aSlotId; SvIdentifier aSlotId;
SvMetaAttribute(); SvMetaAttribute();

View File

@ -97,12 +97,6 @@ bool SvMetaAttribute::ReadSvIdl( SvIdlDataBase & rBase,
return bOk; return bOk;
} }
void SvMetaAttribute::ReadAttributesSvIdl( SvIdlDataBase & rBase,
SvTokenStream & rInStm )
{
SvMetaReference::ReadAttributesSvIdl( rBase, rInStm );
}
sal_uLong SvMetaAttribute::MakeSfx( OStringBuffer& rAttrArray ) sal_uLong SvMetaAttribute::MakeSfx( OStringBuffer& rAttrArray )
{ {
SvMetaType * pType = GetType(); SvMetaType * pType = GetType();

View File

@ -105,7 +105,6 @@ namespace connectivity
// ::cppu::OComponentHelper // ::cppu::OComponentHelper
virtual void SAL_CALL disposing() override; virtual void SAL_CALL disposing() override;
// XInterface // XInterface
void SAL_CALL acquire() throw() override;
void SAL_CALL release() throw() override; void SAL_CALL release() throw() override;
// XTablesSupplier // XTablesSupplier
virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getTables( ) throw(css::uno::RuntimeException, std::exception) override; virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getTables( ) throw(css::uno::RuntimeException, std::exception) override;

View File

@ -49,9 +49,6 @@ namespace drawinglayer
const attribute::SdrLineFillShadowAttribute3D& rSdrLFSAttribute, const attribute::SdrLineFillShadowAttribute3D& rSdrLFSAttribute,
const attribute::Sdr3DObjectAttribute& rSdr3DObjectAttribute); const attribute::Sdr3DObjectAttribute& rSdr3DObjectAttribute);
/// compare operator
virtual bool operator==(const BasePrimitive3D& rPrimitive) const override;
/// get range /// get range
virtual basegfx::B3DRange getB3DRange(const geometry::ViewInformation3D& rViewInformation) const override; virtual basegfx::B3DRange getB3DRange(const geometry::ViewInformation3D& rViewInformation) const override;

View File

@ -53,9 +53,6 @@ namespace accessibility
virtual ~AccessibleImageBullet () override; virtual ~AccessibleImageBullet () override;
// XInterface
virtual css::uno::Any SAL_CALL queryInterface (const css::uno::Type & rType) throw (css::uno::RuntimeException, std::exception) override;
// XAccessible // XAccessible
virtual css::uno::Reference< css::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (css::uno::RuntimeException, std::exception) override; virtual css::uno::Reference< css::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (css::uno::RuntimeException, std::exception) override;

View File

@ -67,8 +67,6 @@ public:
basegfx::B2DHomMatrix& aTransformation, basegfx::B2DHomMatrix& aTransformation,
::oox::drawingml::ShapeIdMap* pShapeMap = nullptr ); ::oox::drawingml::ShapeIdMap* pShapeMap = nullptr );
virtual void applyShapeReference( const oox::drawingml::Shape& rReferencedShape, bool bUseText = true ) override;
ShapeLocation getShapeLocation() const { return meShapeLocation; }; ShapeLocation getShapeLocation() const { return meShapeLocation; };
void setReferenced( bool bReferenced ){ mbReferenced = bReferenced; }; void setReferenced( bool bReferenced ){ mbReferenced = bReferenced; };
void setPlaceholder( oox::drawingml::ShapePtr pPlaceholder ) { mpPlaceholder = pPlaceholder; } void setPlaceholder( oox::drawingml::ShapePtr pPlaceholder ) { mpPlaceholder = pPlaceholder; }

View File

@ -49,7 +49,6 @@ public:
virtual ~ScreenshotTest() override; virtual ~ScreenshotTest() override;
virtual void setUp() override; virtual void setUp() override;
virtual void tearDown() override;
/// Dialog creation for known dialogs by Name (path and UIXMLDescription, *.ui file). /// Dialog creation for known dialogs by Name (path and UIXMLDescription, *.ui file).
/// This uses maKnownDialogs to check if known, and if so, calls createDialogByID /// This uses maKnownDialogs to check if known, and if so, calls createDialogByID

View File

@ -378,7 +378,6 @@ public:
virtual ~VCLXFrame() override; virtual ~VCLXFrame() override;
// css::uno::XInterface // css::uno::XInterface
css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) throw(css::uno::RuntimeException, std::exception) override;
void SAL_CALL acquire() throw() override { OWeakObject::acquire(); } void SAL_CALL acquire() throw() override { OWeakObject::acquire(); }
void SAL_CALL release() throw() override { OWeakObject::release(); } void SAL_CALL release() throw() override { OWeakObject::release(); }
@ -452,7 +451,6 @@ public:
virtual ~VCLXTabPage() override; virtual ~VCLXTabPage() override;
// css::uno::XInterface // css::uno::XInterface
css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) throw(css::uno::RuntimeException, std::exception) override;
void SAL_CALL acquire() throw() override { OWeakObject::acquire(); } void SAL_CALL acquire() throw() override { OWeakObject::acquire(); }
void SAL_CALL release() throw() override { OWeakObject::release(); } void SAL_CALL release() throw() override { OWeakObject::release(); }

View File

@ -88,8 +88,6 @@ public:
virtual css::uno::Reference< ov::msforms::XShapeRange > SAL_CALL Range( const css::uno::Any& shapes ) throw (css::uno::RuntimeException, std::exception) override; virtual css::uno::Reference< ov::msforms::XShapeRange > SAL_CALL Range( const css::uno::Any& shapes ) throw (css::uno::RuntimeException, std::exception) override;
// ScVbaCollectionBaseImpl // ScVbaCollectionBaseImpl
virtual css::uno::Any createCollectionObject( const css::uno::Any& aSource ) throw (css::uno::RuntimeException) override; virtual css::uno::Any createCollectionObject( const css::uno::Any& aSource ) throw (css::uno::RuntimeException) override;
virtual css::uno::Any SAL_CALL Item( const css::uno::Any& Index1, const css::uno::Any& Index2)
throw (css::lang::IndexOutOfBoundsException, css::script::BasicErrorException, css::uno::RuntimeException) override;
}; };
#endif // INCLUDED_VBAHELPER_VBASHAPES_HXX #endif // INCLUDED_VBAHELPER_VBASHAPES_HXX

View File

@ -174,7 +174,6 @@ public:
const OUString& rLocalName, const OUString& rLocalName,
const css::uno::Reference< css::xml::sax::XAttributeList>& xAttrList ) override; const css::uno::Reference< css::xml::sax::XAttributeList>& xAttrList ) override;
virtual void CreateAndInsert(bool bOverwrite) override; virtual void CreateAndInsert(bool bOverwrite) override;
virtual void Finish(bool bOverwrite) override;
SvXMLNumImpData* GetData() const { return pData; } SvXMLNumImpData* GetData() const { return pData; }
sal_Int32 GetKey(); sal_Int32 GetKey();

View File

@ -376,11 +376,6 @@ void PPTShape::addShape(
} }
} }
void PPTShape::applyShapeReference( const oox::drawingml::Shape& rReferencedShape, bool bUseText )
{
Shape::applyShapeReference( rReferencedShape, bUseText );
}
namespace namespace
{ {
bool ShapeLocationIsMaster(oox::drawingml::Shape *pInShape) bool ShapeLocationIsMaster(oox::drawingml::Shape *pInShape)

View File

@ -50,7 +50,6 @@ class ParserTest: public test::BootstrapFixture
public: public:
virtual void setUp() override; virtual void setUp() override;
virtual void tearDown() override;
void parse(); void parse();
@ -70,11 +69,6 @@ void ParserTest::setUp()
mxParser->setTokenHandler( mxTokenHandler.get() ); mxParser->setTokenHandler( mxTokenHandler.get() );
} }
void ParserTest::tearDown()
{
test::BootstrapFixture::tearDown();
}
uno::Reference< io::XInputStream > ParserTest::createStream(const OString& sInput) uno::Reference< io::XInputStream > ParserTest::createStream(const OString& sInput)
{ {
uno::Reference< io::XOutputStream > xPipe( io::Pipe::create(m_xContext) ); uno::Reference< io::XOutputStream > xPipe( io::Pipe::create(m_xContext) );

View File

@ -343,7 +343,6 @@ private:
public: public:
virtual void setUp() override; virtual void setUp() override;
virtual void tearDown() override;
XMLImportTest() : BootstrapFixture(true, false) {} XMLImportTest() : BootstrapFixture(true, false) {}
void parse(); void parse();
@ -390,11 +389,6 @@ void XMLImportTest::setUp()
m_sDirPath = m_directories.getPathFromSrc( "/sax/qa/data/" ); m_sDirPath = m_directories.getPathFromSrc( "/sax/qa/data/" );
} }
void XMLImportTest::tearDown()
{
test::BootstrapFixture::tearDown();
}
void XMLImportTest::parse() void XMLImportTest::parse()
{ {
OUString fileNames[] = {"simple.xml", "defaultns.xml", "inlinens.xml", OUString fileNames[] = {"simple.xml", "defaultns.xml", "inlinens.xml",

View File

@ -66,8 +66,6 @@ class Test : public test::BootstrapFixture, public XmlTestTools
Primitive2DSequence parseSvg(const char* aSource); Primitive2DSequence parseSvg(const char* aSource);
public: public:
virtual void tearDown() override;
CPPUNIT_TEST_SUITE(Test); CPPUNIT_TEST_SUITE(Test);
CPPUNIT_TEST(testStyles); CPPUNIT_TEST(testStyles);
CPPUNIT_TEST(testTdf87309); CPPUNIT_TEST(testTdf87309);
@ -115,11 +113,6 @@ Primitive2DSequence Test::parseSvg(const char* aSource)
return xSvgParser->getDecomposition(aInputStream, aPath); return xSvgParser->getDecomposition(aInputStream, aPath);
} }
void Test::tearDown()
{
BootstrapFixture::tearDown();
}
void Test::checkRectPrimitive(Primitive2DSequence& rPrimitive) void Test::checkRectPrimitive(Primitive2DSequence& rPrimitive)
{ {
Primitive2dXmlDump dumper; Primitive2dXmlDump dumper;

View File

@ -59,11 +59,6 @@ void ScreenshotTest::setUp()
} }
} }
void ScreenshotTest::tearDown()
{
test::BootstrapFixture::tearDown();
}
void ScreenshotTest::implSaveScreenshot(const Bitmap& rScreenshot, const OString& rScreenshotId) void ScreenshotTest::implSaveScreenshot(const Bitmap& rScreenshot, const OString& rScreenshotId)
{ {
OUString aDirname, aBasename; OUString aDirname, aBasename;

View File

@ -2727,12 +2727,6 @@ VCLXTabPage::~VCLXTabPage()
{ {
} }
css::uno::Any SAL_CALL VCLXTabPage::queryInterface(const css::uno::Type & rType )
throw(css::uno::RuntimeException, std::exception)
{
return VCLXContainer::queryInterface( rType );
}
// css::lang::XTypeProvider // css::lang::XTypeProvider
IMPL_XTYPEPROVIDER_START( VCLXTabPage ) IMPL_XTYPEPROVIDER_START( VCLXTabPage )
VCLXContainer::getTypes() VCLXContainer::getTypes()
@ -6537,12 +6531,6 @@ VCLXFrame::~VCLXFrame()
{ {
} }
css::uno::Any SAL_CALL VCLXFrame::queryInterface(const css::uno::Type & rType )
throw(css::uno::RuntimeException, std::exception)
{
return VCLXContainer::queryInterface( rType );
}
// css::lang::XTypeProvider // css::lang::XTypeProvider
IMPL_XTYPEPROVIDER_START( VCLXFrame ) IMPL_XTYPEPROVIDER_START( VCLXFrame )
VCLXContainer::getTypes() VCLXContainer::getTypes()

View File

@ -320,11 +320,6 @@ namespace cmis
XTYPEPROVIDER_COMMON_IMPL( RepoContent ); XTYPEPROVIDER_COMMON_IMPL( RepoContent );
uno::Any SAL_CALL RepoContent::queryInterface( const uno::Type & rType ) throw ( uno::RuntimeException, std::exception )
{
return ContentImplHelper::queryInterface(rType);
}
OUString SAL_CALL RepoContent::getImplementationName() throw( uno::RuntimeException, std::exception ) OUString SAL_CALL RepoContent::getImplementationName() throw( uno::RuntimeException, std::exception )
{ {
return OUString("com.sun.star.comp.CmisRepoContent"); return OUString("com.sun.star.comp.CmisRepoContent");

View File

@ -89,8 +89,6 @@ public:
virtual OUString getParentURL() override; virtual OUString getParentURL() override;
// XInterface // XInterface
virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType )
throw( css::uno::RuntimeException, std::exception ) override;
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
throw( css::uno::RuntimeException, std::exception ) override; throw( css::uno::RuntimeException, std::exception ) override;

View File

@ -173,23 +173,6 @@ ScVbaShapes::getShapesByArrayIndices( const uno::Any& Index ) throw (uno::Runti
return xIndexAccess; return xIndexAccess;
} }
uno::Any SAL_CALL
ScVbaShapes::Item(const uno::Any& Index, const uno::Any& Index2)
throw (lang::IndexOutOfBoundsException, script::BasicErrorException, uno::RuntimeException)
{
// I don't think we need to support Array of indices for shapes
/*
if ( Index.getValueTypeClass() == uno::TypeClass_SEQUENCE )
{
uno::Reference< container::XIndexAccess > xIndexAccess( getShapesByArrayIndices( Index ) );
// return new collection instance
uno::Reference< XCollection > xShapesCollection( new ScVbaShapes( this->getParent(), mxContext, xIndexAccess ) );
return uno::makeAny( xShapesCollection );
}
*/
return ScVbaShapes_BASE::Item( Index, Index2 );
}
uno::Reference< msforms::XShapeRange > SAL_CALL uno::Reference< msforms::XShapeRange > SAL_CALL
ScVbaShapes::Range( const uno::Any& shapes ) throw (css::uno::RuntimeException, std::exception) ScVbaShapes::Range( const uno::Any& shapes ) throw (css::uno::RuntimeException, std::exception)
{ {

View File

@ -1829,11 +1829,6 @@ sal_Int32 SvXMLNumFormatContext::CreateAndInsert(SvNumberFormatter* pFormatter)
return nKey; return nKey;
} }
void SvXMLNumFormatContext::Finish( bool bOverwrite )
{
SvXMLStyleContext::Finish( bOverwrite );
}
const LocaleDataWrapper& SvXMLNumFormatContext::GetLocaleData() const const LocaleDataWrapper& SvXMLNumFormatContext::GetLocaleData() const
{ {
return pData->GetLocaleData( nFormatLang ); return pData->GetLocaleData( nFormatLang );