canvas/source/directx/dx_9rm.cxx                          |    2 
 compilerplugins/clang/duplicate-defines.cxx               |    4 
 embedserv/source/embed/ed_idataobj.cxx                    |   18 -
 embedserv/source/embed/ed_iinplace.cxx                    |   12 -
 embedserv/source/embed/ed_ioleobject.cxx                  |   50 ++--
 embedserv/source/embed/ed_ipersiststr.cxx                 |   28 +-
 embedserv/source/embed/servprov.cxx                       |   10 
 embedserv/source/inprocserv/dllentry.cxx                  |   10 
 embedserv/source/inprocserv/inprocembobj.cxx              |  150 +++++++-------
 extensions/source/activex/SOActionsApproval.cxx           |    2 
 extensions/source/activex/SOActiveX.cxx                   |   10 
 extensions/source/activex/SOComWindowPeer.cxx             |    2 
 extensions/source/activex/SODispatchInterceptor.cxx       |    2 
 extensions/source/ole/jscriptclasses.cxx                  |   30 +-
 extensions/source/ole/servprov.cxx                        |   10 
 extensions/source/ole/unoobjw.cxx                         |   24 +-
 extensions/source/ole/unotypewrapper.cxx                  |   12 -
 fpicker/source/win32/asyncrequests.hxx                    |    2 
 shell/inc/columninfo.hxx                                  |   12 -
 shell/inc/infotips.hxx                                    |    4 
 shell/source/win32/shlxthandler/columninfo/columninfo.cxx |   12 -
 shell/source/win32/shlxthandler/infotips/infotips.cxx     |    4 
 vcl/inc/win/salbmp.h                                      |    2 
 vcl/inc/win/salframe.h                                    |    2 
 winaccessibility/source/UAccCOM/AccAction.cxx             |   14 -
 winaccessibility/source/UAccCOM/AccActionBase.cxx         |   14 -
 winaccessibility/source/UAccCOM/AccComponent.cxx          |    6 
 winaccessibility/source/UAccCOM/AccComponentBase.cxx      |   12 -
 winaccessibility/source/UAccCOM/AccEditableText.cxx       |   16 -
 winaccessibility/source/UAccCOM/AccHyperLink.cxx          |   26 +-
 winaccessibility/source/UAccCOM/AccHypertext.cxx          |   46 ++--
 winaccessibility/source/UAccCOM/AccImage.cxx              |    8 
 winaccessibility/source/UAccCOM/AccRelation.cxx           |   12 -
 winaccessibility/source/UAccCOM/AccTable.cxx              |   60 ++---
 winaccessibility/source/UAccCOM/AccText.cxx               |   38 +--
 winaccessibility/source/UAccCOM/AccTextBase.cxx           |   42 +--
 winaccessibility/source/UAccCOM/AccValue.cxx              |   10 
 winaccessibility/source/UAccCOM/EnumVariant.cxx           |    2 
 winaccessibility/source/UAccCOM/MAccessible.cxx           |  128 +++++------
 winaccessibility/source/UAccCOM/UNOXWrapper.cxx           |    4 
 40 files changed, 426 insertions(+), 426 deletions(-)

New commits:
commit 9d99dc8a835d66cbe27e4cbf5869e6704dd781f9
Author:     Stephan Bergmann <sberg...@redhat.com>
AuthorDate: Tue Oct 1 19:10:34 2019 +0200
Commit:     Stephan Bergmann <sberg...@redhat.com>
CommitDate: Wed Oct 2 08:19:26 2019 +0200

    -Werror,-Winconsistent-missing-override
    
    Change-Id: I4cfb01582e5cfef55909ae56fd14ce8ccd5c14be
    Reviewed-on: https://gerrit.libreoffice.org/79990
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sberg...@redhat.com>

diff --git a/compilerplugins/clang/duplicate-defines.cxx 
b/compilerplugins/clang/duplicate-defines.cxx
index 2dacdb0f3cbd..0209d0893a36 100644
--- a/compilerplugins/clang/duplicate-defines.cxx
+++ b/compilerplugins/clang/duplicate-defines.cxx
@@ -35,9 +35,9 @@ class DuplicateDefines : public clang::PPCallbacks, public 
Plugin
 public:
     explicit DuplicateDefines(const InstantiationData& data);
     virtual void run() override;
-    void MacroDefined(const Token& MacroNameTok, const MacroDirective* MD);
+    void MacroDefined(const Token& MacroNameTok, const MacroDirective* MD) 
override;
     void MacroUndefined(const Token& MacroNameTok, const MacroDefinition& MD,
-                        const MacroDirective* Undef);
+                        const MacroDirective* Undef) override;
     enum
     {
         isPPCallback = true
commit b7e4e20b6214198224e0ac42f5248b42f44342ee
Author:     Stephan Bergmann <sberg...@redhat.com>
AuthorDate: Tue Oct 1 16:28:43 2019 +0200
Commit:     Stephan Bergmann <sberg...@redhat.com>
CommitDate: Wed Oct 2 08:19:12 2019 +0200

    loplugin:fragiledestructor (clang-cl)
    
    Change-Id: Ibf5b8022df00bb6c49b53853811b6503146dddd7
    Reviewed-on: https://gerrit.libreoffice.org/79971
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sberg...@redhat.com>

diff --git a/canvas/source/directx/dx_9rm.cxx b/canvas/source/directx/dx_9rm.cxx
index f1557af69961..872b537aa769 100644
--- a/canvas/source/directx/dx_9rm.cxx
+++ b/canvas/source/directx/dx_9rm.cxx
@@ -120,7 +120,7 @@ namespace dxcanvas
 
 
         /// Default implementation of IDXRenderModule
-        class DXRenderModule : public IDXRenderModule
+        class DXRenderModule final: public IDXRenderModule
         {
         public:
             explicit DXRenderModule( const vcl::Window& rWindow );
diff --git a/fpicker/source/win32/asyncrequests.hxx 
b/fpicker/source/win32/asyncrequests.hxx
index c1a3f569fbfa..5fbd7dde848f 100644
--- a/fpicker/source/win32/asyncrequests.hxx
+++ b/fpicker/source/win32/asyncrequests.hxx
@@ -135,7 +135,7 @@ typedef std::shared_ptr< RequestHandler > RequestHandlerRef;
 
 /** @todo document me
  */
-class AsyncRequests : private ::cppu::BaseMutex
+class AsyncRequests final: private ::cppu::BaseMutex
                     , public  ::osl::Thread
 {
     public:
diff --git a/vcl/inc/win/salbmp.h b/vcl/inc/win/salbmp.h
index 7f172d21af82..05aed0ee9d30 100644
--- a/vcl/inc/win/salbmp.h
+++ b/vcl/inc/win/salbmp.h
@@ -33,7 +33,7 @@ class   BitmapPalette;
 class   SalGraphics;
 namespace Gdiplus { class Bitmap; }
 
-class WinSalBitmap : public SalBitmap, public 
basegfx::SystemDependentDataHolder
+class WinSalBitmap final: public SalBitmap, public 
basegfx::SystemDependentDataHolder
 {
 private:
     Size                maSize;
diff --git a/vcl/inc/win/salframe.h b/vcl/inc/win/salframe.h
index 8e94f384b523..76b3e1e69f54 100644
--- a/vcl/inc/win/salframe.h
+++ b/vcl/inc/win/salframe.h
@@ -27,7 +27,7 @@
 class WinSalGraphics;
 
 
-class WinSalFrame : public SalFrame
+class WinSalFrame final: public SalFrame
 {
 public:
     HWND                    mhWnd;                  // Window handle
commit 38ee6b2ad540c0d5cc0182396787d4c7625ea064
Author:     Stephan Bergmann <sberg...@redhat.com>
AuthorDate: Tue Oct 1 16:19:32 2019 +0200
Commit:     Stephan Bergmann <sberg...@redhat.com>
CommitDate: Wed Oct 2 08:18:57 2019 +0200

    -Werror,-Wmicrosoft-exception-spec (clang-cl)
    
    No idea why that started to show up now, but
    C:/Program Files (x86)/Windows Kits/10/Include/10.0.17763.0/um/combaseapi.h
    contains
    
    > #define STDMETHOD(method)        virtual COM_DECLSPEC_NOTHROW HRESULT 
STDMETHODCALLTYPE method
    
    while
    C:/Program Files (x86)/Windows Kits/10/Include/10.0.17763.0/um/winnt.h
    contains
    
    > #define STDMETHODIMP            HRESULT STDMETHODCALLTYPE
    
    which caused failures like
    
    > [build CXX] embedserv/source/inprocserv/dllentry.cxx
    > embedserv/source/inprocserv/dllentry.cxx(261,40): error: 'QueryInterface' 
is missing exception specification '__attribute__((nothrow))' 
[-Werror,-Wmicrosoft-exception-spec]
    > STDMETHODIMP InprocEmbedProvider_Impl::QueryInterface( REFIID riid, void 
** ppv )
    >                                        ^
    > embedserv/source/inprocserv/dllentry.cxx(143,15): note: previous 
declaration is here
    >     STDMETHOD(QueryInterface)(REFIID riid, void ** ppvObj) override;
    >               ^
    
    Change-Id: I0fe3554c2da4089bf0f883e1132d6f2ee95ae2c3
    Reviewed-on: https://gerrit.libreoffice.org/79970
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sberg...@redhat.com>

diff --git a/embedserv/source/embed/ed_idataobj.cxx 
b/embedserv/source/embed/ed_idataobj.cxx
index 9e602867c856..2f0b4d960b16 100644
--- a/embedserv/source/embed/ed_idataobj.cxx
+++ b/embedserv/source/embed/ed_idataobj.cxx
@@ -64,7 +64,7 @@ sal_uInt64 EmbedDocument_Impl::getMetaFileHandle_Impl( bool 
isEnhMeta )
 
 // IDataObject
 
-STDMETHODIMP EmbedDocument_Impl::GetData( FORMATETC * pFormatetc, STGMEDIUM * 
pMedium )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetData( FORMATETC * 
pFormatetc, STGMEDIUM * pMedium )
 {
     if ( !pFormatetc )
         return DV_E_FORMATETC;
@@ -141,7 +141,7 @@ STDMETHODIMP EmbedDocument_Impl::GetData( FORMATETC * 
pFormatetc, STGMEDIUM * pM
     return DV_E_FORMATETC;
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetDataHere( FORMATETC * pFormatetc, 
STGMEDIUM * pMedium )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetDataHere( FORMATETC * 
pFormatetc, STGMEDIUM * pMedium )
 {
     if ( !pFormatetc )
         return DV_E_FORMATETC;
@@ -176,7 +176,7 @@ STDMETHODIMP EmbedDocument_Impl::GetDataHere( FORMATETC * 
pFormatetc, STGMEDIUM
     return DV_E_FORMATETC;
 }
 
-STDMETHODIMP EmbedDocument_Impl::QueryGetData( FORMATETC * pFormatetc )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::QueryGetData( FORMATETC 
* pFormatetc )
 {
     if ( pFormatetc )
     {
@@ -217,7 +217,7 @@ STDMETHODIMP EmbedDocument_Impl::QueryGetData( FORMATETC * 
pFormatetc )
 
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetCanonicalFormatEtc( FORMATETC * 
pFormatetcIn, FORMATETC * pFormatetcOut )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetCanonicalFormatEtc( 
FORMATETC * pFormatetcIn, FORMATETC * pFormatetcOut )
 {
     if ( !pFormatetcIn || !pFormatetcOut )
         return DV_E_FORMATETC;
@@ -250,12 +250,12 @@ STDMETHODIMP EmbedDocument_Impl::GetCanonicalFormatEtc( 
FORMATETC * pFormatetcIn
     return DV_E_FORMATETC;
 }
 
-STDMETHODIMP EmbedDocument_Impl::SetData( FORMATETC * /*pFormatetc*/, 
STGMEDIUM * /*pMedium*/, BOOL /*fRelease*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::SetData( FORMATETC * 
/*pFormatetc*/, STGMEDIUM * /*pMedium*/, BOOL /*fRelease*/ )
 {
     return E_NOTIMPL;
 }
 
-STDMETHODIMP EmbedDocument_Impl::EnumFormatEtc( DWORD dwDirection, 
IEnumFORMATETC ** /*ppFormatetc*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::EnumFormatEtc( DWORD 
dwDirection, IEnumFORMATETC ** /*ppFormatetc*/ )
 {
     if ( dwDirection == DATADIR_GET )
         return OLE_S_USEREG;
@@ -263,7 +263,7 @@ STDMETHODIMP EmbedDocument_Impl::EnumFormatEtc( DWORD 
dwDirection, IEnumFORMATET
     return E_NOTIMPL;
 }
 
-STDMETHODIMP EmbedDocument_Impl::DAdvise( FORMATETC * pFormatetc, DWORD advf, 
IAdviseSink * pAdvSink, DWORD * pdwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::DAdvise( FORMATETC * 
pFormatetc, DWORD advf, IAdviseSink * pAdvSink, DWORD * pdwConnection )
 {
     if ( !m_pDAdviseHolder )
         if ( !SUCCEEDED( CreateDataAdviseHolder( &m_pDAdviseHolder ) ) || 
!m_pDAdviseHolder )
@@ -272,7 +272,7 @@ STDMETHODIMP EmbedDocument_Impl::DAdvise( FORMATETC * 
pFormatetc, DWORD advf, IA
     return m_pDAdviseHolder->Advise( static_cast<IDataObject*>(this), 
pFormatetc, advf, pAdvSink, pdwConnection );
 }
 
-STDMETHODIMP EmbedDocument_Impl::DUnadvise( DWORD dwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::DUnadvise( DWORD 
dwConnection )
 {
     if ( !m_pDAdviseHolder )
         if ( !SUCCEEDED( CreateDataAdviseHolder( &m_pDAdviseHolder ) ) || 
!m_pDAdviseHolder )
@@ -281,7 +281,7 @@ STDMETHODIMP EmbedDocument_Impl::DUnadvise( DWORD 
dwConnection )
     return m_pDAdviseHolder->Unadvise( dwConnection );
 }
 
-STDMETHODIMP EmbedDocument_Impl::EnumDAdvise( IEnumSTATDATA ** ppenumAdvise )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::EnumDAdvise( 
IEnumSTATDATA ** ppenumAdvise )
 {
     if ( !m_pDAdviseHolder )
         if ( !SUCCEEDED( CreateDataAdviseHolder( &m_pDAdviseHolder ) ) || 
!m_pDAdviseHolder )
diff --git a/embedserv/source/embed/ed_iinplace.cxx 
b/embedserv/source/embed/ed_iinplace.cxx
index 710ea722b6a0..0c6e869e633c 100644
--- a/embedserv/source/embed/ed_iinplace.cxx
+++ b/embedserv/source/embed/ed_iinplace.cxx
@@ -21,7 +21,7 @@
 #include <osl/diagnose.h>
 
 
-STDMETHODIMP EmbedDocument_Impl::GetWindow(HWND *hWnd)
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetWindow(HWND *hWnd)
 {
     OSL_ENSURE(m_pDocHolder,"no document for inplace activation");
 
@@ -32,12 +32,12 @@ STDMETHODIMP EmbedDocument_Impl::GetWindow(HWND *hWnd)
         return ERROR;
 }
 
-STDMETHODIMP EmbedDocument_Impl::ContextSensitiveHelp(BOOL)
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
EmbedDocument_Impl::ContextSensitiveHelp(BOOL)
 {
     return NOERROR;
 }
 
-STDMETHODIMP EmbedDocument_Impl::InPlaceDeactivate()
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::InPlaceDeactivate()
 {
     // no locking is used since the OLE must use the same thread always
     if ( m_bIsInVerbHandling )
@@ -54,7 +54,7 @@ STDMETHODIMP EmbedDocument_Impl::InPlaceDeactivate()
     return NOERROR;
 }
 
-STDMETHODIMP EmbedDocument_Impl::UIDeactivate()
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::UIDeactivate()
 {
     // no locking is used since the OLE must use the same thread always
     if ( m_bIsInVerbHandling )
@@ -72,14 +72,14 @@ STDMETHODIMP EmbedDocument_Impl::UIDeactivate()
     return NOERROR;
 }
 
-STDMETHODIMP EmbedDocument_Impl::SetObjectRects(LPCRECT aRect, LPCRECT aClip)
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::SetObjectRects(LPCRECT 
aRect, LPCRECT aClip)
 {
     OSL_ENSURE(m_pDocHolder,"no document for inplace activation");
 
     return m_pDocHolder->SetObjectRects(aRect,aClip);
 }
 
-STDMETHODIMP EmbedDocument_Impl::ReactivateAndUndo()
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::ReactivateAndUndo()
 {
     return E_NOTIMPL;
 }
diff --git a/embedserv/source/embed/ed_ioleobject.cxx 
b/embedserv/source/embed/ed_ioleobject.cxx
index 19438dbe3e40..a84b1c2bdedd 100644
--- a/embedserv/source/embed/ed_ioleobject.cxx
+++ b/embedserv/source/embed/ed_ioleobject.cxx
@@ -28,19 +28,19 @@ using namespace ::com::sun::star;
 // IOleObject
 
 
-STDMETHODIMP EmbedDocument_Impl::SetClientSite( IOleClientSite* pSite )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::SetClientSite( 
IOleClientSite* pSite )
 {
     m_pClientSite = pSite;
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetClientSite( IOleClientSite** pSite )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetClientSite( 
IOleClientSite** pSite )
 {
     *pSite = m_pClientSite;
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::SetHostNames( LPCOLESTR szContainerApp, 
LPCOLESTR szContainerObj )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::SetHostNames( LPCOLESTR 
szContainerApp, LPCOLESTR szContainerObj )
 {
     // the code should be ignored for links
     if ( !m_aFileName.getLength() )
@@ -52,7 +52,7 @@ STDMETHODIMP EmbedDocument_Impl::SetHostNames( LPCOLESTR 
szContainerApp, LPCOLES
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::Close( DWORD dwSaveOption )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::Close( DWORD 
dwSaveOption )
 {
     HRESULT hr = S_OK;
 
@@ -100,22 +100,22 @@ HRESULT EmbedDocument_Impl::OLENotifyClosing()
 
 }
 
-STDMETHODIMP EmbedDocument_Impl::SetMoniker( DWORD /*dwWhichMoniker*/, 
IMoniker * /*pmk*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::SetMoniker( DWORD 
/*dwWhichMoniker*/, IMoniker * /*pmk*/ )
 {
     return E_NOTIMPL;
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetMoniker( DWORD /*dwAssign*/, DWORD 
/*dwWhichMoniker*/, IMoniker ** /*ppmk*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetMoniker( DWORD 
/*dwAssign*/, DWORD /*dwWhichMoniker*/, IMoniker ** /*ppmk*/ )
 {
     return E_NOTIMPL;
 }
 
-STDMETHODIMP EmbedDocument_Impl::InitFromData( IDataObject * /*pDataObject*/, 
BOOL /*fCreation*/, DWORD /*dwReserved*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::InitFromData( 
IDataObject * /*pDataObject*/, BOOL /*fCreation*/, DWORD /*dwReserved*/ )
 {
     return E_NOTIMPL;
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetClipboardData( DWORD /*dwReserved*/, 
IDataObject ** /*ppDataObject*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetClipboardData( DWORD 
/*dwReserved*/, IDataObject ** /*ppDataObject*/ )
 {
     return E_NOTIMPL;
 }
@@ -125,7 +125,7 @@ STDMETHODIMP EmbedDocument_Impl::GetClipboardData( DWORD 
/*dwReserved*/, IDataOb
  *
  */
 
-STDMETHODIMP EmbedDocument_Impl::DoVerb(
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::DoVerb(
     LONG iVerb,
     LPMSG,
     IOleClientSite *pActiveSite,
@@ -233,34 +233,34 @@ STDMETHODIMP EmbedDocument_Impl::DoVerb(
 }
 
 
-STDMETHODIMP EmbedDocument_Impl::EnumVerbs( IEnumOLEVERB ** /*ppEnumOleVerb*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::EnumVerbs( IEnumOLEVERB 
** /*ppEnumOleVerb*/ )
 {
     return OLE_S_USEREG;
 }
 
-STDMETHODIMP EmbedDocument_Impl::Update()
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::Update()
 {
     return S_OK;
 //    HRESULT hr = CACHE_E_NOCACHE_UPDATED;
 //    return hr;
 }
 
-STDMETHODIMP EmbedDocument_Impl::IsUpToDate()
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::IsUpToDate()
 {
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetUserClassID( CLSID *pClsid )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetUserClassID( CLSID 
*pClsid )
 {
     return GetClassID( pClsid );
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetUserType( DWORD /*dwFormOfTypeUe*/, 
LPOLESTR * /*pszUserType*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetUserType( DWORD 
/*dwFormOfTypeUe*/, LPOLESTR * /*pszUserType*/ )
 {
     return OLE_S_USEREG;
 }
 
-STDMETHODIMP EmbedDocument_Impl::SetExtent( DWORD /*dwDrawAspect*/, SIZEL 
*psizel )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::SetExtent( DWORD 
/*dwDrawAspect*/, SIZEL *psizel )
 {
     if ( !psizel )
         return E_FAIL;
@@ -270,7 +270,7 @@ STDMETHODIMP EmbedDocument_Impl::SetExtent( DWORD 
/*dwDrawAspect*/, SIZEL *psize
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetExtent( DWORD /*dwDrawAspect*/, SIZEL * 
psizel )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetExtent( DWORD 
/*dwDrawAspect*/, SIZEL * psizel )
 {
     if ( !psizel )
         return E_INVALIDARG;
@@ -285,7 +285,7 @@ STDMETHODIMP EmbedDocument_Impl::GetExtent( DWORD 
/*dwDrawAspect*/, SIZEL * psiz
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::Advise( IAdviseSink *pAdvSink, DWORD 
*pdwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::Advise( IAdviseSink 
*pAdvSink, DWORD *pdwConnection )
 {
     if ( m_nAdviseNum == 0xFFFFFFFF )
         return E_OUTOFMEMORY;
@@ -297,7 +297,7 @@ STDMETHODIMP EmbedDocument_Impl::Advise( IAdviseSink 
*pAdvSink, DWORD *pdwConnec
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::Unadvise( DWORD dwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::Unadvise( DWORD 
dwConnection )
 {
     auto iAdvise = m_aAdviseHashMap.find( dwConnection );
     if ( iAdvise != m_aAdviseHashMap.end() )
@@ -311,17 +311,17 @@ STDMETHODIMP EmbedDocument_Impl::Unadvise( DWORD 
dwConnection )
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::EnumAdvise( IEnumSTATDATA ** /*ppenumAdvise*/ 
)
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::EnumAdvise( 
IEnumSTATDATA ** /*ppenumAdvise*/ )
 {
     return E_NOTIMPL;
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetMiscStatus( DWORD /*dwAspect*/, DWORD * 
/*pdwStatus*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetMiscStatus( DWORD 
/*dwAspect*/, DWORD * /*pdwStatus*/ )
 {
     return OLE_S_USEREG;
 }
 
-STDMETHODIMP EmbedDocument_Impl::SetColorScheme( LOGPALETTE * /*pLogpal*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::SetColorScheme( 
LOGPALETTE * /*pLogpal*/ )
 {
     return E_NOTIMPL;
 }
@@ -329,7 +329,7 @@ STDMETHODIMP EmbedDocument_Impl::SetColorScheme( LOGPALETTE 
* /*pLogpal*/ )
 
 // IDispatch
 
-STDMETHODIMP EmbedDocument_Impl::GetTypeInfoCount( unsigned int FAR*  pctinfo )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetTypeInfoCount( 
unsigned int FAR*  pctinfo )
 {
     if ( m_pDocHolder->GetIDispatch() )
         return m_pDocHolder->GetIDispatch()->GetTypeInfoCount( pctinfo );
@@ -337,7 +337,7 @@ STDMETHODIMP EmbedDocument_Impl::GetTypeInfoCount( unsigned 
int FAR*  pctinfo )
     return E_NOTIMPL;
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetTypeInfo( unsigned int iTInfo, LCID lcid, 
ITypeInfo FAR* FAR* ppTInfo )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetTypeInfo( unsigned 
int iTInfo, LCID lcid, ITypeInfo FAR* FAR* ppTInfo )
 {
     if ( m_pDocHolder->GetIDispatch() )
         return m_pDocHolder->GetIDispatch()->GetTypeInfo( iTInfo, lcid, 
ppTInfo );
@@ -345,7 +345,7 @@ STDMETHODIMP EmbedDocument_Impl::GetTypeInfo( unsigned int 
iTInfo, LCID lcid, IT
     return DISP_E_BADINDEX; // the only error that can be returned
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetIDsOfNames( REFIID riid,
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetIDsOfNames( REFIID 
riid,
                                                 OLECHAR FAR* FAR* rgszNames,
                                                 unsigned int cNames,
                                                 LCID lcid,
@@ -360,7 +360,7 @@ STDMETHODIMP EmbedDocument_Impl::GetIDsOfNames( REFIID riid,
     return DISP_E_UNKNOWNNAME;
 }
 
-STDMETHODIMP EmbedDocument_Impl::Invoke( DISPID dispIdMember,
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::Invoke( DISPID 
dispIdMember,
                                          REFIID riid,
                                          LCID lcid,
                                          WORD wFlags,
diff --git a/embedserv/source/embed/ed_ipersiststr.cxx 
b/embedserv/source/embed/ed_ipersiststr.cxx
index ba21f0772d8c..905055cc9513 100644
--- a/embedserv/source/embed/ed_ipersiststr.cxx
+++ b/embedserv/source/embed/ed_ipersiststr.cxx
@@ -274,7 +274,7 @@ HRESULT EmbedDocument_Impl::SaveTo_Impl( IStorage* pStg )
 
 // IUnknown
 
-STDMETHODIMP EmbedDocument_Impl::QueryInterface( REFIID riid, void FAR* FAR* 
ppv )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::QueryInterface( REFIID 
riid, void FAR* FAR* ppv )
 {
     if(IsEqualIID(riid, IID_IUnknown))
     {
@@ -341,12 +341,12 @@ STDMETHODIMP EmbedDocument_Impl::QueryInterface( REFIID 
riid, void FAR* FAR* ppv
     return ResultFromScode(E_NOINTERFACE);
 }
 
-STDMETHODIMP_(ULONG) EmbedDocument_Impl::AddRef()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) EmbedDocument_Impl::AddRef()
 {
     return osl_atomic_increment( &m_refCount);
 }
 
-STDMETHODIMP_(ULONG) EmbedDocument_Impl::Release()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) EmbedDocument_Impl::Release()
 {
     // if there is a time when the last reference is destructed, that means 
that only internal pointers are alive
     // after the following call either the refcount is increased or the 
pointers are empty
@@ -362,7 +362,7 @@ STDMETHODIMP_(ULONG) EmbedDocument_Impl::Release()
 
 // IPersist
 
-STDMETHODIMP EmbedDocument_Impl::GetClassID( CLSID* pClassId )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetClassID( CLSID* 
pClassId )
 {
     *pClassId = m_guid;
     return S_OK;
@@ -371,7 +371,7 @@ STDMETHODIMP EmbedDocument_Impl::GetClassID( CLSID* 
pClassId )
 
 // IPersistStorage
 
-STDMETHODIMP EmbedDocument_Impl::IsDirty()
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::IsDirty()
 {
     // the link modified state is controlled by the document
     if ( m_bIsDirty && !m_aFileName.getLength() )
@@ -383,7 +383,7 @@ STDMETHODIMP EmbedDocument_Impl::IsDirty()
     return S_FALSE;
 }
 
-STDMETHODIMP EmbedDocument_Impl::InitNew( IStorage *pStg )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::InitNew( IStorage *pStg )
 {
     HRESULT hr = CO_E_ALREADYINITIALIZED;
 
@@ -469,7 +469,7 @@ STDMETHODIMP EmbedDocument_Impl::InitNew( IStorage *pStg )
     return hr;
 }
 
-STDMETHODIMP EmbedDocument_Impl::Load( IStorage *pStg )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::Load( IStorage *pStg )
 {
     if ( m_pDocHolder->GetDocument().is() )
         return CO_E_ALREADYINITIALIZED;
@@ -577,7 +577,7 @@ STDMETHODIMP EmbedDocument_Impl::Load( IStorage *pStg )
     return hr;
 }
 
-STDMETHODIMP EmbedDocument_Impl::Save( IStorage *pStgSave, BOOL fSameAsLoad )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::Save( IStorage 
*pStgSave, BOOL fSameAsLoad )
 {
     if ( !m_pDocHolder->GetDocument().is() || !m_xFactory.is() || !pStgSave || 
!m_pOwnStream || !m_pExtStream )
         return E_FAIL;
@@ -672,7 +672,7 @@ STDMETHODIMP EmbedDocument_Impl::Save( IStorage *pStgSave, 
BOOL fSameAsLoad )
     return hr;
 }
 
-STDMETHODIMP EmbedDocument_Impl::SaveCompleted( IStorage *pStgNew )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::SaveCompleted( IStorage 
*pStgNew )
 {
     // m_pOwnStream == NULL && m_pMasterStorage != NULL means the object is in 
NoScribble mode
     // m_pOwnStream == NULL && m_pMasterStorage == NULL means the object is in 
HandsOff mode
@@ -714,7 +714,7 @@ STDMETHODIMP EmbedDocument_Impl::SaveCompleted( IStorage 
*pStgNew )
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::HandsOffStorage()
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::HandsOffStorage()
 {
     m_pMasterStorage = CComPtr< IStorage >();
     m_pOwnStream = CComPtr< IStream >();
@@ -726,7 +726,7 @@ STDMETHODIMP EmbedDocument_Impl::HandsOffStorage()
 
 // IPersistFile
 
-STDMETHODIMP EmbedDocument_Impl::Load( LPCOLESTR pszFileName, DWORD /*dwMode*/ 
)
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::Load( LPCOLESTR 
pszFileName, DWORD /*dwMode*/ )
 {
     if ( m_pDocHolder->GetDocument().is() )
         return CO_E_ALREADYINITIALIZED;
@@ -839,7 +839,7 @@ STDMETHODIMP EmbedDocument_Impl::Load( LPCOLESTR 
pszFileName, DWORD /*dwMode*/ )
     return hr;
 }
 
-STDMETHODIMP EmbedDocument_Impl::Save( LPCOLESTR pszFileName, BOOL fRemember )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::Save( LPCOLESTR 
pszFileName, BOOL fRemember )
 {
     if ( !m_pDocHolder->GetDocument().is() || !m_xFactory.is() )
         return E_FAIL;
@@ -881,14 +881,14 @@ STDMETHODIMP EmbedDocument_Impl::Save( LPCOLESTR 
pszFileName, BOOL fRemember )
     return hr;
 }
 
-STDMETHODIMP EmbedDocument_Impl::SaveCompleted( LPCOLESTR pszFileName )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::SaveCompleted( LPCOLESTR 
pszFileName )
 {
     // the different file name would mean error here
     m_aFileName = o3tl::toU(pszFileName);
     return S_OK;
 }
 
-STDMETHODIMP EmbedDocument_Impl::GetCurFile( LPOLESTR *ppszFileName )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedDocument_Impl::GetCurFile( LPOLESTR 
*ppszFileName )
 {
     CComPtr<IMalloc> pMalloc;
 
diff --git a/embedserv/source/embed/servprov.cxx 
b/embedserv/source/embed/servprov.cxx
index 9be17eb071ec..09ef6211724e 100644
--- a/embedserv/source/embed/servprov.cxx
+++ b/embedserv/source/embed/servprov.cxx
@@ -169,7 +169,7 @@ bool EmbedProviderFactory_Impl::deregisterClass()
     return (hresult == NOERROR);
 }
 
-STDMETHODIMP EmbedProviderFactory_Impl::QueryInterface(REFIID riid, void FAR* 
FAR* ppv)
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
EmbedProviderFactory_Impl::QueryInterface(REFIID riid, void FAR* FAR* ppv)
 {
     if(IsEqualIID(riid, IID_IUnknown))
     {
@@ -188,12 +188,12 @@ STDMETHODIMP 
EmbedProviderFactory_Impl::QueryInterface(REFIID riid, void FAR* FA
     return ResultFromScode(E_NOINTERFACE);
 }
 
-STDMETHODIMP_(ULONG) EmbedProviderFactory_Impl::AddRef()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) EmbedProviderFactory_Impl::AddRef()
 {
     return osl_atomic_increment( &m_refCount);
 }
 
-STDMETHODIMP_(ULONG) EmbedProviderFactory_Impl::Release()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) EmbedProviderFactory_Impl::Release()
 {
     ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex());
     sal_Int32 nCount = --m_refCount;
@@ -205,7 +205,7 @@ STDMETHODIMP_(ULONG) EmbedProviderFactory_Impl::Release()
     return nCount;
 }
 
-STDMETHODIMP EmbedProviderFactory_Impl::CreateInstance(IUnknown FAR* punkOuter,
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
EmbedProviderFactory_Impl::CreateInstance(IUnknown FAR* punkOuter,
                                                        REFIID riid,
                                                        void FAR* FAR* ppv)
 {
@@ -216,7 +216,7 @@ STDMETHODIMP 
EmbedProviderFactory_Impl::CreateInstance(IUnknown FAR* punkOuter,
     return pEmbedDocument->QueryInterface( riid, ppv );
 }
 
-STDMETHODIMP EmbedProviderFactory_Impl::LockServer( int /*fLock*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP EmbedProviderFactory_Impl::LockServer( int 
/*fLock*/ )
 {
     return NOERROR;
 }
diff --git a/embedserv/source/inprocserv/dllentry.cxx 
b/embedserv/source/inprocserv/dllentry.cxx
index 71da14597305..a79b23b22972 100644
--- a/embedserv/source/inprocserv/dllentry.cxx
+++ b/embedserv/source/inprocserv/dllentry.cxx
@@ -258,7 +258,7 @@ InprocEmbedProvider_Impl::~InprocEmbedProvider_Impl()
 
 // IUnknown
 
-STDMETHODIMP InprocEmbedProvider_Impl::QueryInterface( REFIID riid, void ** 
ppv )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedProvider_Impl::QueryInterface( 
REFIID riid, void ** ppv )
 {
     if(IsEqualIID(riid, IID_IUnknown))
     {
@@ -278,13 +278,13 @@ STDMETHODIMP InprocEmbedProvider_Impl::QueryInterface( 
REFIID riid, void ** ppv
 }
 
 
-STDMETHODIMP_(ULONG) InprocEmbedProvider_Impl::AddRef()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) InprocEmbedProvider_Impl::AddRef()
 {
     return ++m_refCount;
 }
 
 
-STDMETHODIMP_(ULONG) InprocEmbedProvider_Impl::Release()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) InprocEmbedProvider_Impl::Release()
 {
     sal_Int32 nCount = --m_refCount;
     if ( nCount == 0 )
@@ -293,7 +293,7 @@ STDMETHODIMP_(ULONG) InprocEmbedProvider_Impl::Release()
 }
 
 
-STDMETHODIMP InprocEmbedProvider_Impl::CreateInstance(IUnknown FAR* punkOuter,
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedProvider_Impl::CreateInstance(IUnknown FAR* punkOuter,
                                                        REFIID riid,
                                                        void FAR* FAR* ppv)
 {
@@ -315,7 +315,7 @@ STDMETHODIMP 
InprocEmbedProvider_Impl::CreateInstance(IUnknown FAR* punkOuter,
 }
 
 
-STDMETHODIMP InprocEmbedProvider_Impl::LockServer( BOOL fLock )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedProvider_Impl::LockServer( BOOL 
fLock )
 {
     if ( fLock )
         g_nLock++;
diff --git a/embedserv/source/inprocserv/inprocembobj.cxx 
b/embedserv/source/inprocserv/inprocembobj.cxx
index b3f2211e7fc3..ec33e7474070 100644
--- a/embedserv/source/inprocserv/inprocembobj.cxx
+++ b/embedserv/source/inprocserv/inprocembobj.cxx
@@ -272,7 +272,7 @@ void InprocEmbedDocument_Impl::Clean()
 
 // IUnknown
 
-STDMETHODIMP InprocEmbedDocument_Impl::QueryInterface( REFIID riid, void FAR* 
FAR* ppv )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::QueryInterface( 
REFIID riid, void FAR* FAR* ppv )
 {
     if(IsEqualIID(riid, IID_IUnknown))
     {
@@ -364,13 +364,13 @@ STDMETHODIMP InprocEmbedDocument_Impl::QueryInterface( 
REFIID riid, void FAR* FA
 }
 
 
-STDMETHODIMP_(ULONG) InprocEmbedDocument_Impl::AddRef()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) InprocEmbedDocument_Impl::AddRef()
 {
     return ++m_refCount;
 }
 
 
-STDMETHODIMP_(ULONG) InprocEmbedDocument_Impl::Release()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) InprocEmbedDocument_Impl::Release()
 {
     // unfortunately there are reentrance problems in mfc that have to be 
workarounded
     sal_Int32 nCount = m_refCount > 0 ? --m_refCount : 0;
@@ -387,7 +387,7 @@ STDMETHODIMP_(ULONG) InprocEmbedDocument_Impl::Release()
 
 // IPersist
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetClassID( CLSID* pClassId )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetClassID( CLSID* 
pClassId )
 {
     *pClassId = m_guid;
     return S_OK;
@@ -395,7 +395,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetClassID( CLSID* 
pClassId )
 
 // IPersistStorage
 
-STDMETHODIMP InprocEmbedDocument_Impl::IsDirty()
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::IsDirty()
 {
     if ( m_pDefHandler == nullptr || m_pOleAdvises[0] == nullptr || 
m_pOleAdvises[0]->IsClosed() )
         return S_FALSE;
@@ -414,7 +414,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::IsDirty()
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::InitNew( IStorage *pStg )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::InitNew( IStorage 
*pStg )
 {
     if ( CheckDefHandler() )
     {
@@ -446,7 +446,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::InitNew( IStorage 
*pStg )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Load( IStorage *pStg )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Load( IStorage 
*pStg )
 {
     if ( CheckDefHandler() )
     {
@@ -478,7 +478,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Load( IStorage *pStg 
)
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Save( IStorage *pStgSave, BOOL 
fSameAsLoad )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Save( IStorage 
*pStgSave, BOOL fSameAsLoad )
 {
     if ( fSameAsLoad && ( m_pDefHandler == nullptr || m_pOleAdvises[0] == 
nullptr || m_pOleAdvises[0]->IsClosed() ) )
         return S_OK;
@@ -497,7 +497,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Save( IStorage 
*pStgSave, BOOL fSameAsLoa
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SaveCompleted( IStorage *pStgNew )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SaveCompleted( 
IStorage *pStgNew )
 {
     if ( m_pDefHandler == nullptr || m_pOleAdvises[0] == nullptr || 
m_pOleAdvises[0]->IsClosed() )
     {
@@ -540,7 +540,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SaveCompleted( 
IStorage *pStgNew )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::HandsOffStorage()
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::HandsOffStorage()
 {
     if ( CheckDefHandler() )
     {
@@ -565,7 +565,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::HandsOffStorage()
 
 // IPersistFile
 
-STDMETHODIMP InprocEmbedDocument_Impl::Load( LPCOLESTR pszFileName, DWORD 
dwMode )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Load( LPCOLESTR 
pszFileName, DWORD dwMode )
 {
     if ( CheckDefHandler() && pszFileName )
     {
@@ -595,7 +595,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Load( LPCOLESTR 
pszFileName, DWORD dwMode
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Save( LPCOLESTR pszFileName, BOOL 
fRemember )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Save( LPCOLESTR 
pszFileName, BOOL fRemember )
 {
     if ( CheckDefHandler() )
     {
@@ -611,7 +611,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Save( LPCOLESTR 
pszFileName, BOOL fRememb
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SaveCompleted( LPCOLESTR pszFileName )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SaveCompleted( 
LPCOLESTR pszFileName )
 {
     if ( CheckDefHandler() )
     {
@@ -640,7 +640,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SaveCompleted( 
LPCOLESTR pszFileName )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetCurFile( LPOLESTR *ppszFileName )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetCurFile( 
LPOLESTR *ppszFileName )
 {
     if ( CheckDefHandler() )
     {
@@ -657,7 +657,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetCurFile( LPOLESTR 
*ppszFileName )
 
 // IOleObject
 
-STDMETHODIMP InprocEmbedDocument_Impl::SetClientSite( IOleClientSite* pSite )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SetClientSite( 
IOleClientSite* pSite )
 {
     if ( pSite == m_pClientSite )
         return S_OK;
@@ -704,7 +704,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SetClientSite( 
IOleClientSite* pSite )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetClientSite( IOleClientSite** pSite )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetClientSite( 
IOleClientSite** pSite )
 {
     if ( CheckDefHandler() )
     {
@@ -720,7 +720,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetClientSite( 
IOleClientSite** pSite )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SetHostNames( LPCOLESTR szContainerApp, 
LPCOLESTR szContainerObj )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SetHostNames( 
LPCOLESTR szContainerApp, LPCOLESTR szContainerObj )
 {
 
     if ( CheckDefHandler() )
@@ -739,7 +739,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SetHostNames( 
LPCOLESTR szContainerApp, L
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Close( DWORD dwSaveOption )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Close( DWORD 
dwSaveOption )
 {
     HRESULT ret = S_OK;
     if ( m_pDefHandler && CheckDefHandler() )
@@ -767,7 +767,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Close( DWORD 
dwSaveOption )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SetMoniker( DWORD dwWhichMoniker, 
IMoniker * pmk )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SetMoniker( DWORD 
dwWhichMoniker, IMoniker * pmk )
 {
     if ( CheckDefHandler() )
     {
@@ -783,7 +783,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SetMoniker( DWORD 
dwWhichMoniker, IMonike
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetMoniker( DWORD dwAssign, DWORD 
dwWhichMoniker, IMoniker ** ppmk )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetMoniker( DWORD 
dwAssign, DWORD dwWhichMoniker, IMoniker ** ppmk )
 {
     if ( CheckDefHandler() )
     {
@@ -799,7 +799,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetMoniker( DWORD 
dwAssign, DWORD dwWhich
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::InitFromData( IDataObject * 
pDataObject, BOOL fCreation, DWORD dwReserved )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::InitFromData( 
IDataObject * pDataObject, BOOL fCreation, DWORD dwReserved )
 {
     if ( CheckDefHandler() )
     {
@@ -815,7 +815,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::InitFromData( 
IDataObject * pDataObject,
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetClipboardData( DWORD dwReserved, 
IDataObject ** ppDataObject )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetClipboardData( 
DWORD dwReserved, IDataObject ** ppDataObject )
 {
     if ( CheckDefHandler() )
     {
@@ -831,7 +831,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetClipboardData( 
DWORD dwReserved, IData
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::DoVerb(
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::DoVerb(
     LONG iVerb,
     LPMSG pMsg,
     IOleClientSite *pActiveSite,
@@ -857,7 +857,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::DoVerb(
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::EnumVerbs( IEnumOLEVERB ** 
ppEnumOleVerb )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::EnumVerbs( 
IEnumOLEVERB ** ppEnumOleVerb )
 {
     if ( CheckDefHandler() )
     {
@@ -873,7 +873,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::EnumVerbs( 
IEnumOLEVERB ** ppEnumOleVerb
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Update()
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Update()
 {
 
     if ( m_pDefHandler && CheckDefHandler() )
@@ -890,7 +890,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Update()
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::IsUpToDate()
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::IsUpToDate()
 {
     if ( CheckDefHandler() )
     {
@@ -906,7 +906,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::IsUpToDate()
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetUserClassID( CLSID *pClsid )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetUserClassID( 
CLSID *pClsid )
 {
     if ( pClsid )
         *pClsid = m_guid;
@@ -915,7 +915,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetUserClassID( 
CLSID *pClsid )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetUserType( DWORD dwFormOfType, 
LPOLESTR * pszUserType )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetUserType( DWORD 
dwFormOfType, LPOLESTR * pszUserType )
 {
     if ( CheckDefHandler() )
     {
@@ -931,7 +931,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetUserType( DWORD 
dwFormOfType, LPOLESTR
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SetExtent( DWORD dwDrawAspect, SIZEL 
*psizel )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SetExtent( DWORD 
dwDrawAspect, SIZEL *psizel )
 {
     if ( CheckDefHandler() )
     {
@@ -947,7 +947,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SetExtent( DWORD 
dwDrawAspect, SIZEL *psi
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetExtent( DWORD dwDrawAspect, SIZEL * 
psizel )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetExtent( DWORD 
dwDrawAspect, SIZEL * psizel )
 {
     if ( CheckDefHandler() )
     {
@@ -963,7 +963,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetExtent( DWORD 
dwDrawAspect, SIZEL * ps
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Advise( IAdviseSink *pAdvSink, DWORD 
*pdwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Advise( 
IAdviseSink *pAdvSink, DWORD *pdwConnection )
 {
 
     if ( !pdwConnection )
@@ -1005,7 +1005,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Advise( 
IAdviseSink *pAdvSink, DWORD *pdw
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Unadvise( DWORD dwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Unadvise( DWORD 
dwConnection )
 {
     if ( DEFAULT_ARRAY_LEN > dwConnection && dwConnection > 0 && 
m_pOleAdvises[dwConnection] )
     {
@@ -1032,13 +1032,13 @@ STDMETHODIMP InprocEmbedDocument_Impl::Unadvise( DWORD 
dwConnection )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::EnumAdvise( IEnumSTATDATA ** 
/*ppenumAdvise*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::EnumAdvise( 
IEnumSTATDATA ** /*ppenumAdvise*/ )
 {
     return E_NOTIMPL;
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetMiscStatus( DWORD dwAspect, DWORD * 
pdwStatus )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetMiscStatus( 
DWORD dwAspect, DWORD * pdwStatus )
 {
     if ( CheckDefHandler() )
     {
@@ -1054,7 +1054,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetMiscStatus( 
DWORD dwAspect, DWORD * pd
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SetColorScheme( LOGPALETTE * pLogpal )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SetColorScheme( 
LOGPALETTE * pLogpal )
 {
     if ( CheckDefHandler() )
     {
@@ -1071,7 +1071,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SetColorScheme( 
LOGPALETTE * pLogpal )
 
 //IDataObject
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetData( FORMATETC * pFormatetc, 
STGMEDIUM * pMedium )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetData( FORMATETC 
* pFormatetc, STGMEDIUM * pMedium )
 {
     if ( CheckDefHandler() )
     {
@@ -1087,7 +1087,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetData( FORMATETC 
* pFormatetc, STGMEDIU
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetDataHere( FORMATETC * pFormatetc, 
STGMEDIUM * pMedium )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetDataHere( 
FORMATETC * pFormatetc, STGMEDIUM * pMedium )
 {
     if ( CheckDefHandler() )
     {
@@ -1103,7 +1103,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetDataHere( 
FORMATETC * pFormatetc, STGM
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::QueryGetData( FORMATETC * pFormatetc )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::QueryGetData( 
FORMATETC * pFormatetc )
 {
     if ( CheckDefHandler() )
     {
@@ -1119,7 +1119,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::QueryGetData( 
FORMATETC * pFormatetc )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetCanonicalFormatEtc( FORMATETC * 
pFormatetcIn, FORMATETC * pFormatetcOut )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::GetCanonicalFormatEtc( FORMATETC * pFormatetcIn, 
FORMATETC * pFormatetcOut )
 {
     if ( CheckDefHandler() )
     {
@@ -1135,7 +1135,7 @@ STDMETHODIMP 
InprocEmbedDocument_Impl::GetCanonicalFormatEtc( FORMATETC * pForma
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SetData( FORMATETC * pFormatetc, 
STGMEDIUM * pMedium, BOOL fRelease )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SetData( FORMATETC 
* pFormatetc, STGMEDIUM * pMedium, BOOL fRelease )
 {
     if ( CheckDefHandler() )
     {
@@ -1151,7 +1151,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SetData( FORMATETC 
* pFormatetc, STGMEDIU
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::EnumFormatEtc( DWORD dwDirection, 
IEnumFORMATETC ** ppFormatetc )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::EnumFormatEtc( 
DWORD dwDirection, IEnumFORMATETC ** ppFormatetc )
 {
     if ( CheckDefHandler() )
     {
@@ -1167,7 +1167,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::EnumFormatEtc( 
DWORD dwDirection, IEnumFO
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::DAdvise( FORMATETC * pFormatetc, DWORD 
advf, IAdviseSink * pAdvSink, DWORD * pdwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::DAdvise( FORMATETC 
* pFormatetc, DWORD advf, IAdviseSink * pAdvSink, DWORD * pdwConnection )
 {
 
     if ( !pdwConnection )
@@ -1208,7 +1208,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::DAdvise( FORMATETC 
* pFormatetc, DWORD ad
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::DUnadvise( DWORD dwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::DUnadvise( DWORD 
dwConnection )
 {
     if ( m_pDefHandler && DEFAULT_ARRAY_LEN > dwConnection && dwConnection > 0 
&& m_pDataAdvises[dwConnection] )
     {
@@ -1235,7 +1235,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::DUnadvise( DWORD 
dwConnection )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::EnumDAdvise( IEnumSTATDATA ** 
ppenumAdvise )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::EnumDAdvise( 
IEnumSTATDATA ** ppenumAdvise )
 {
     if ( CheckDefHandler() )
     {
@@ -1252,7 +1252,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::EnumDAdvise( 
IEnumSTATDATA ** ppenumAdvis
 
 // IRunnableObject
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetRunningClass( LPCLSID lpClsid )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetRunningClass( 
LPCLSID lpClsid )
 {
     if ( CheckDefHandler() )
     {
@@ -1268,7 +1268,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetRunningClass( 
LPCLSID lpClsid )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Run( LPBINDCTX pbc )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Run( LPBINDCTX pbc 
)
 {
     if ( CheckDefHandler() )
     {
@@ -1298,7 +1298,7 @@ BOOL STDMETHODCALLTYPE 
InprocEmbedDocument_Impl::IsRunning()
     return FALSE;
 }
 
-STDMETHODIMP InprocEmbedDocument_Impl::LockRunning( BOOL fLock, BOOL 
fLastUnlockCloses )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::LockRunning( BOOL 
fLock, BOOL fLastUnlockCloses )
 {
     if ( CheckDefHandler() )
     {
@@ -1314,7 +1314,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::LockRunning( BOOL 
fLock, BOOL fLastUnlock
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SetContainedObject( BOOL fContained)
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::SetContainedObject( BOOL fContained)
 {
     if ( CheckDefHandler() )
     {
@@ -1332,7 +1332,7 @@ STDMETHODIMP 
InprocEmbedDocument_Impl::SetContainedObject( BOOL fContained)
 
 // IViewObject methods
 
-STDMETHODIMP InprocEmbedDocument_Impl::Draw( DWORD dwDrawAspect, LONG lindex, 
void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL 
lprcBounds, LPCRECTL lprcWBounds, BOOL ( STDMETHODCALLTYPE *pfnContinue )( 
ULONG_PTR dwContinue ), ULONG_PTR dwContinue )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Draw( DWORD 
dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC 
hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL ( 
STDMETHODCALLTYPE *pfnContinue )( ULONG_PTR dwContinue ), ULONG_PTR dwContinue )
 {
     if ( CheckDefHandler() )
     {
@@ -1348,7 +1348,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Draw( DWORD 
dwDrawAspect, LONG lindex, vo
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetColorSet( DWORD dwDrawAspect, LONG 
lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hicTargetDev, LOGPALETTE 
**ppColorSet )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetColorSet( DWORD 
dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC 
hicTargetDev, LOGPALETTE **ppColorSet )
 {
     if ( CheckDefHandler() )
     {
@@ -1364,7 +1364,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetColorSet( DWORD 
dwDrawAspect, LONG lin
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Freeze( DWORD dwDrawAspect, LONG 
lindex, void *pvAspect, DWORD *pdwFreeze )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Freeze( DWORD 
dwDrawAspect, LONG lindex, void *pvAspect, DWORD *pdwFreeze )
 {
     if ( CheckDefHandler() )
     {
@@ -1380,7 +1380,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Freeze( DWORD 
dwDrawAspect, LONG lindex,
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Unfreeze( DWORD dwFreeze )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Unfreeze( DWORD 
dwFreeze )
 {
     if ( CheckDefHandler() )
     {
@@ -1396,7 +1396,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::Unfreeze( DWORD 
dwFreeze )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SetAdvise( DWORD aspects, DWORD advf, 
IAdviseSink *pAdvSink )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SetAdvise( DWORD 
aspects, DWORD advf, IAdviseSink *pAdvSink )
 {
 
     // CheckDefHandler will set the listener, avoid reusing of old listener
@@ -1429,7 +1429,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SetAdvise( DWORD 
aspects, DWORD advf, IAd
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetAdvise( DWORD *pAspects, DWORD 
*pAdvf, IAdviseSink **ppAdvSink )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetAdvise( DWORD 
*pAspects, DWORD *pAdvf, IAdviseSink **ppAdvSink )
 {
     if ( !ppAdvSink )
         return E_INVALIDARG;
@@ -1454,7 +1454,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetAdvise( DWORD 
*pAspects, DWORD *pAdvf,
 
 // IViewObject2 methods
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetExtent( DWORD dwDrawAspect, LONG 
lindex, DVTARGETDEVICE *ptd, LPSIZEL lpsizel )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetExtent( DWORD 
dwDrawAspect, LONG lindex, DVTARGETDEVICE *ptd, LPSIZEL lpsizel )
 {
     if ( CheckDefHandler() )
     {
@@ -1472,7 +1472,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetExtent( DWORD 
dwDrawAspect, LONG linde
 
 // IOleWindow methods
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetWindow( HWND *phwnd )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetWindow( HWND 
*phwnd )
 {
     if ( CheckDefHandler() )
     {
@@ -1488,7 +1488,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetWindow( HWND 
*phwnd )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::ContextSensitiveHelp( BOOL fEnterMode )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::ContextSensitiveHelp( BOOL fEnterMode )
 {
     if ( CheckDefHandler() )
     {
@@ -1506,7 +1506,7 @@ STDMETHODIMP 
InprocEmbedDocument_Impl::ContextSensitiveHelp( BOOL fEnterMode )
 
 // IOleInPlaceObject methods
 
-STDMETHODIMP InprocEmbedDocument_Impl::InPlaceDeactivate()
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::InPlaceDeactivate()
 {
     if ( CheckDefHandler() )
     {
@@ -1522,7 +1522,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::InPlaceDeactivate()
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::UIDeactivate()
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::UIDeactivate()
 {
     if ( CheckDefHandler() )
     {
@@ -1538,7 +1538,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::UIDeactivate()
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::SetObjectRects( LPCRECT lprcPosRect, 
LPCRECT lprcClipRect )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::SetObjectRects( 
LPCRECT lprcPosRect, LPCRECT lprcClipRect )
 {
     if ( CheckDefHandler() )
     {
@@ -1554,7 +1554,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::SetObjectRects( 
LPCRECT lprcPosRect, LPCR
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::ReactivateAndUndo()
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::ReactivateAndUndo()
 {
     if ( CheckDefHandler() )
     {
@@ -1572,7 +1572,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::ReactivateAndUndo()
 
 // IDispatch methods
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetTypeInfoCount( UINT *pctinfo )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetTypeInfoCount( 
UINT *pctinfo )
 {
     if ( CheckDefHandler() )
     {
@@ -1588,7 +1588,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetTypeInfoCount( 
UINT *pctinfo )
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetTypeInfo( UINT iTInfo, LCID lcid, 
ITypeInfo **ppTInfo )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetTypeInfo( UINT 
iTInfo, LCID lcid, ITypeInfo **ppTInfo )
 {
     if ( CheckDefHandler() )
     {
@@ -1604,7 +1604,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetTypeInfo( UINT 
iTInfo, LCID lcid, ITyp
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::GetIDsOfNames( REFIID riid, LPOLESTR 
*rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::GetIDsOfNames( 
REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId )
 {
     if ( CheckDefHandler() )
     {
@@ -1620,7 +1620,7 @@ STDMETHODIMP InprocEmbedDocument_Impl::GetIDsOfNames( 
REFIID riid, LPOLESTR *rgs
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::Invoke( DISPID dispIdMember, REFIID 
riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, 
EXCEPINFO *pExcepInfo, UINT *puArgErr )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InprocEmbedDocument_Impl::Invoke( DISPID 
dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, 
VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr )
 {
     if ( CheckDefHandler() )
     {
@@ -1641,26 +1641,26 @@ STDMETHODIMP InprocEmbedDocument_Impl::Invoke( DISPID 
dispIdMember, REFIID riid,
 
 // IUnknown
 
-STDMETHODIMP InprocEmbedDocument_Impl::InternalCacheWrapper::QueryInterface( 
REFIID riid, void FAR* FAR* ppv )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::QueryInterface( REFIID riid, 
void FAR* FAR* ppv )
 {
     return m_rOwnDocument.QueryInterface( riid, ppv );
 }
 
 
-STDMETHODIMP_(ULONG) InprocEmbedDocument_Impl::InternalCacheWrapper::AddRef()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) 
InprocEmbedDocument_Impl::InternalCacheWrapper::AddRef()
 {
     return m_rOwnDocument.AddRef();
 }
 
 
-STDMETHODIMP_(ULONG) InprocEmbedDocument_Impl::InternalCacheWrapper::Release()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) 
InprocEmbedDocument_Impl::InternalCacheWrapper::Release()
 {
     return m_rOwnDocument.Release();
 }
 
 // IOleCache methods
 
-STDMETHODIMP InprocEmbedDocument_Impl::InternalCacheWrapper::Cache( FORMATETC 
*pformatetc, DWORD advf, DWORD *pdwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::Cache( FORMATETC *pformatetc, 
DWORD advf, DWORD *pdwConnection )
 {
     if ( m_rOwnDocument.CheckDefHandler() )
     {
@@ -1676,7 +1676,7 @@ STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::Cache( FORMATETC *p
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::InternalCacheWrapper::Uncache( DWORD 
dwConnection )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::Uncache( DWORD dwConnection )
 {
     if ( m_rOwnDocument.CheckDefHandler() )
     {
@@ -1692,7 +1692,7 @@ STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::Uncache( DWORD dwCo
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::InternalCacheWrapper::EnumCache( 
IEnumSTATDATA **ppenumSTATDATA )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::EnumCache( IEnumSTATDATA 
**ppenumSTATDATA )
 {
     if ( m_rOwnDocument.CheckDefHandler() )
     {
@@ -1708,7 +1708,7 @@ STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::EnumCache( IEnumSTA
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::InternalCacheWrapper::InitCache( 
IDataObject *pDataObject )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::InitCache( IDataObject 
*pDataObject )
 {
     if ( m_rOwnDocument.CheckDefHandler() )
     {
@@ -1724,7 +1724,7 @@ STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::InitCache( IDataObj
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::InternalCacheWrapper::SetData( 
FORMATETC *pformatetc, STGMEDIUM *pmedium, BOOL fRelease )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::SetData( FORMATETC *pformatetc, 
STGMEDIUM *pmedium, BOOL fRelease )
 {
     if ( m_rOwnDocument.CheckDefHandler() )
     {
@@ -1741,7 +1741,7 @@ STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::SetData( FORMATETC
 
 // IOleCache2 methods
 
-STDMETHODIMP InprocEmbedDocument_Impl::InternalCacheWrapper::UpdateCache( 
LPDATAOBJECT pDataObject, DWORD grfUpdf, LPVOID pReserved )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::UpdateCache( LPDATAOBJECT 
pDataObject, DWORD grfUpdf, LPVOID pReserved )
 {
     if ( m_rOwnDocument.CheckDefHandler() )
     {
@@ -1757,7 +1757,7 @@ STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::UpdateCache( LPDATA
 }
 
 
-STDMETHODIMP InprocEmbedDocument_Impl::InternalCacheWrapper::DiscardCache( 
DWORD dwDiscardOptions )
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
InprocEmbedDocument_Impl::InternalCacheWrapper::DiscardCache( DWORD 
dwDiscardOptions )
 {
     if ( m_rOwnDocument.CheckDefHandler() )
     {
diff --git a/extensions/source/activex/SOActionsApproval.cxx 
b/extensions/source/activex/SOActionsApproval.cxx
index 6b2d179700e9..dec824dcebfa 100644
--- a/extensions/source/activex/SOActionsApproval.cxx
+++ b/extensions/source/activex/SOActionsApproval.cxx
@@ -37,7 +37,7 @@
 #pragma clang diagnostic pop
 #endif
 
-STDMETHODIMP SOActionsApproval::InterfaceSupportsErrorInfo(REFIID riid)
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
SOActionsApproval::InterfaceSupportsErrorInfo(REFIID riid)
 {
     static const IID* arr[] =
     {
diff --git a/extensions/source/activex/SOActiveX.cxx 
b/extensions/source/activex/SOActiveX.cxx
index ac8b5272c855..6133d61f415e 100644
--- a/extensions/source/activex/SOActiveX.cxx
+++ b/extensions/source/activex/SOActiveX.cxx
@@ -289,14 +289,14 @@ HRESULT CSOActiveX::TerminateOffice()
     return hr;
 }
 
-STDMETHODIMP CSOActiveX::InitNew ()
+COM_DECLSPEC_NOTHROW STDMETHODIMP CSOActiveX::InitNew ()
 {
     mnVersion = GetVersionConnected();
     mbLoad = TRUE;
     return S_OK;
 }
 
-STDMETHODIMP CSOActiveX::Load ( LPSTREAM /*pStm*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP CSOActiveX::Load ( LPSTREAM /*pStm*/ )
 {
     mnVersion = GetVersionConnected();
     mbLoad = TRUE;
@@ -307,7 +307,7 @@ STDMETHODIMP CSOActiveX::Load ( LPSTREAM /*pStm*/ )
     return S_OK;
 }
 
-STDMETHODIMP CSOActiveX::Load( LPPROPERTYBAG pPropBag, LPERRORLOG 
/*pErrorLog*/ )
+COM_DECLSPEC_NOTHROW STDMETHODIMP CSOActiveX::Load( LPPROPERTYBAG pPropBag, 
LPERRORLOG /*pErrorLog*/ )
 {
     mnVersion = GetVersionConnected();
 
@@ -1090,7 +1090,7 @@ HRESULT CSOActiveX::OnDraw( ATL_DRAWINFO& di )
     return S_OK;
 }
 
-STDMETHODIMP CSOActiveX::SetClientSite( IOleClientSite* aClientSite )
+COM_DECLSPEC_NOTHROW STDMETHODIMP CSOActiveX::SetClientSite( IOleClientSite* 
aClientSite )
 {
     HRESULT hr = IOleObjectImpl<CSOActiveX>::SetClientSite( aClientSite );
 
@@ -1125,7 +1125,7 @@ STDMETHODIMP CSOActiveX::SetClientSite( IOleClientSite* 
aClientSite )
     return hr;
 }
 
-STDMETHODIMP CSOActiveX::Invoke(DISPID dispidMember,
+COM_DECLSPEC_NOTHROW STDMETHODIMP CSOActiveX::Invoke(DISPID dispidMember,
                                 REFIID riid,
                                 LCID lcid,
                                 WORD wFlags,
diff --git a/extensions/source/activex/SOComWindowPeer.cxx 
b/extensions/source/activex/SOComWindowPeer.cxx
index 4d1da0f2fad8..92303cd12f25 100644
--- a/extensions/source/activex/SOComWindowPeer.cxx
+++ b/extensions/source/activex/SOComWindowPeer.cxx
@@ -36,7 +36,7 @@
 #pragma clang diagnostic pop
 #endif
 
-STDMETHODIMP SOComWindowPeer::InterfaceSupportsErrorInfo(REFIID riid)
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
SOComWindowPeer::InterfaceSupportsErrorInfo(REFIID riid)
 {
     static const IID* arr[] =
     {
diff --git a/extensions/source/activex/SODispatchInterceptor.cxx 
b/extensions/source/activex/SODispatchInterceptor.cxx
index 8cfe36c9e981..a5f9aa91865c 100644
--- a/extensions/source/activex/SODispatchInterceptor.cxx
+++ b/extensions/source/activex/SODispatchInterceptor.cxx
@@ -39,7 +39,7 @@
 #pragma clang diagnostic pop
 #endif
 
-STDMETHODIMP SODispatchInterceptor::InterfaceSupportsErrorInfo(REFIID riid)
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
SODispatchInterceptor::InterfaceSupportsErrorInfo(REFIID riid)
 {
     static const IID* arr[] =
     {
diff --git a/extensions/source/ole/jscriptclasses.cxx 
b/extensions/source/ole/jscriptclasses.cxx
index 718e7066d3b6..8fc371c4c29a 100644
--- a/extensions/source/ole/jscriptclasses.cxx
+++ b/extensions/source/ole/jscriptclasses.cxx
@@ -32,13 +32,13 @@ JScriptValue::~JScriptValue()
 
 
 // JScriptValue, IDispatch --------------------------------------------
-STDMETHODIMP JScriptValue::GetTypeInfoCount(UINT* /*pctinfo*/)
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::GetTypeInfoCount(UINT* 
/*pctinfo*/)
 {
     return E_NOTIMPL;
 }
 
 // JScriptValue, IDispatch --------------------------------------------
-STDMETHODIMP JScriptValue::GetTypeInfo( UINT /*iTInfo*/,
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::GetTypeInfo( UINT /*iTInfo*/,
                                            LCID /*lcid*/,
                                            ITypeInfo** /*ppTInfo*/)
 {
@@ -46,7 +46,7 @@ STDMETHODIMP JScriptValue::GetTypeInfo( UINT /*iTInfo*/,
 }
 
 // JScriptValue, IDispatch --------------------------------------------
-STDMETHODIMP JScriptValue::GetIDsOfNames( REFIID /*riid*/,
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::GetIDsOfNames( REFIID /*riid*/,
                                              LPOLESTR *rgszNames,
                                              UINT /*cNames*/,
                                              LCID /*lcid*/,
@@ -75,7 +75,7 @@ STDMETHODIMP JScriptValue::GetIDsOfNames( REFIID /*riid*/,
 }
 
 // JScriptValue, IDispatch --------------------------------------------
-STDMETHODIMP JScriptValue::Invoke( DISPID dispIdMember,
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::Invoke( DISPID dispIdMember,
                          REFIID /*riid*/,
                          LCID /*lcid*/,
                          WORD wFlags,
@@ -133,7 +133,7 @@ STDMETHODIMP JScriptValue::Invoke( DISPID dispIdMember,
 }
 
 // JScriptValue, IScriptOutParam-----------------------
-STDMETHODIMP JScriptValue::Set( VARIANT type, VARIANT value)
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::Set( VARIANT type, VARIANT 
value)
 {
     Lock();
     m_varValue.Clear();
@@ -146,7 +146,7 @@ STDMETHODIMP JScriptValue::Set( VARIANT type, VARIANT value)
     return hr;
 }
 // JScriptValue, IScriptOutParam-----------------------
-STDMETHODIMP JScriptValue::Get( VARIANT *val)
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::Get( VARIANT *val)
 {
     Lock();
     if( !val)
@@ -156,7 +156,7 @@ STDMETHODIMP JScriptValue::Get( VARIANT *val)
     return hr;
 }
 
-STDMETHODIMP JScriptValue::InitOutParam()
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::InitOutParam()
 {
     Lock();
     m_varValue.Clear();
@@ -166,7 +166,7 @@ STDMETHODIMP JScriptValue::InitOutParam()
     return S_OK;
 }
 
-STDMETHODIMP JScriptValue::InitInOutParam( VARIANT type, VARIANT value)
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::InitInOutParam( VARIANT type, 
VARIANT value)
 {
     Lock();
     m_bInOutParam= true;
@@ -175,7 +175,7 @@ STDMETHODIMP JScriptValue::InitInOutParam( VARIANT type, 
VARIANT value)
     return Set( type, value);
 }
 
-STDMETHODIMP JScriptValue::IsOutParam( VARIANT_BOOL * flag)
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::IsOutParam( VARIANT_BOOL * 
flag)
 {
     Lock();
     if( !flag)
@@ -185,7 +185,7 @@ STDMETHODIMP JScriptValue::IsOutParam( VARIANT_BOOL * flag)
     return S_OK;
 }
 
-STDMETHODIMP JScriptValue::IsInOutParam( VARIANT_BOOL * flag)
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::IsInOutParam( VARIANT_BOOL * 
flag)
 {
     Lock();
     if( !flag)
@@ -195,7 +195,7 @@ STDMETHODIMP JScriptValue::IsInOutParam( VARIANT_BOOL * 
flag)
     return S_OK;
 }
 
-STDMETHODIMP JScriptValue::GetValue( BSTR* type, VARIANT *value)
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptValue::GetValue( BSTR* type, VARIANT 
*value)
 {
     Lock();
     if( !type || !value)
@@ -221,13 +221,13 @@ JScriptOutParam::~JScriptOutParam()
 
 
 // JScriptOutParam, IDispatch --------------------------------------------
-STDMETHODIMP JScriptOutParam::GetTypeInfoCount(UINT* /*pctinfo*/)
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptOutParam::GetTypeInfoCount(UINT* 
/*pctinfo*/)
 {
     return E_NOTIMPL;
 }
 
 // JScriptOutParam, IDispatch --------------------------------------------
-STDMETHODIMP JScriptOutParam::GetTypeInfo( UINT /*iTInfo*/,
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptOutParam::GetTypeInfo( UINT 
/*iTInfo*/,
                                            LCID /*lcid*/,
                                            ITypeInfo** /*ppTInfo*/)
 {
@@ -235,7 +235,7 @@ STDMETHODIMP JScriptOutParam::GetTypeInfo( UINT /*iTInfo*/,
 }
 
 // JScriptOutParam, IDispatch --------------------------------------------
-STDMETHODIMP JScriptOutParam::GetIDsOfNames( REFIID /*riid*/,
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptOutParam::GetIDsOfNames( REFIID 
/*riid*/,
                                              LPOLESTR *rgszNames,
                                              UINT /*cNames*/,
                                              LCID /*lcid*/,
@@ -258,7 +258,7 @@ STDMETHODIMP JScriptOutParam::GetIDsOfNames( REFIID 
/*riid*/,
 }
 
 // JScriptOutParam, IDispatch --------------------------------------------
-STDMETHODIMP JScriptOutParam::Invoke( DISPID dispIdMember,
+COM_DECLSPEC_NOTHROW STDMETHODIMP JScriptOutParam::Invoke( DISPID dispIdMember,
                          REFIID /*riid*/,
                          LCID /*lcid*/,
                          WORD wFlags,
diff --git a/extensions/source/ole/servprov.cxx 
b/extensions/source/ole/servprov.cxx
index e59c8d0e6076..1f14fa01032d 100644
--- a/extensions/source/ole/servprov.cxx
+++ b/extensions/source/ole/servprov.cxx
@@ -101,7 +101,7 @@ bool OneInstanceOleWrapper::deregisterClass()
     return CoRevokeClassObject(m_factoryHandle) == NOERROR;
 }
 
-STDMETHODIMP OneInstanceOleWrapper::QueryInterface(REFIID riid, void ** ppv)
+COM_DECLSPEC_NOTHROW STDMETHODIMP OneInstanceOleWrapper::QueryInterface(REFIID 
riid, void ** ppv)
 {
     if(IsEqualIID(riid, IID_IUnknown))
     {
@@ -120,12 +120,12 @@ STDMETHODIMP OneInstanceOleWrapper::QueryInterface(REFIID 
riid, void ** ppv)
     return ResultFromScode(E_NOINTERFACE);
 }
 
-STDMETHODIMP_(ULONG) OneInstanceOleWrapper::AddRef()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) OneInstanceOleWrapper::AddRef()
 {
     return osl_atomic_increment( &m_refCount);
 }
 
-STDMETHODIMP_(ULONG) OneInstanceOleWrapper::Release()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) OneInstanceOleWrapper::Release()
 {
     MutexGuard oGuard( Mutex::getGlobalMutex());
     ULONG refCount = --m_refCount;
@@ -137,7 +137,7 @@ STDMETHODIMP_(ULONG) OneInstanceOleWrapper::Release()
     return refCount;
 }
 
-STDMETHODIMP OneInstanceOleWrapper::CreateInstance(IUnknown FAR* punkOuter,
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
OneInstanceOleWrapper::CreateInstance(IUnknown FAR* punkOuter,
                                                    REFIID riid,
                                                    void FAR* FAR* ppv)
 {
@@ -178,7 +178,7 @@ STDMETHODIMP OneInstanceOleWrapper::CreateInstance(IUnknown 
FAR* punkOuter,
     return ret;
 }
 
-STDMETHODIMP OneInstanceOleWrapper::LockServer(BOOL /*fLock*/)
+COM_DECLSPEC_NOTHROW STDMETHODIMP OneInstanceOleWrapper::LockServer(BOOL 
/*fLock*/)
 {
     return NOERROR;
 }
diff --git a/extensions/source/ole/unoobjw.cxx 
b/extensions/source/ole/unoobjw.cxx
index 485f31959969..3c95a9c16168 100644
--- a/extensions/source/ole/unoobjw.cxx
+++ b/extensions/source/ole/unoobjw.cxx
@@ -205,7 +205,7 @@ InterfaceOleWrapper::~InterfaceOleWrapper()
     SAL_INFO("extensions.olebridge", "InterfaceOleWrapper DTOR, count=" << 
TerminationVetoer::get()->mnCount);
 }
 
-STDMETHODIMP InterfaceOleWrapper::QueryInterface(REFIID riid, void ** ppv)
+COM_DECLSPEC_NOTHROW STDMETHODIMP InterfaceOleWrapper::QueryInterface(REFIID 
riid, void ** ppv)
 {
     comphelper::Automation::AutomationInvokedZone aAutomationActive;
 
@@ -257,7 +257,7 @@ STDMETHODIMP InterfaceOleWrapper::QueryInterface(REFIID 
riid, void ** ppv)
     return ret;
 }
 
-STDMETHODIMP_(ULONG) InterfaceOleWrapper::AddRef()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) InterfaceOleWrapper::AddRef()
 {
     acquire();
     // does not need to guard because one should not rely on the return value 
of
@@ -265,7 +265,7 @@ STDMETHODIMP_(ULONG) InterfaceOleWrapper::AddRef()
     return m_refCount;
 }
 
-STDMETHODIMP_(ULONG) InterfaceOleWrapper::Release()
+COM_DECLSPEC_NOTHROW STDMETHODIMP_(ULONG) InterfaceOleWrapper::Release()
 {
     ULONG n= m_refCount;
     release();
@@ -273,17 +273,17 @@ STDMETHODIMP_(ULONG) InterfaceOleWrapper::Release()
 }
 
 // IUnoObjectWrapper --------------------------------------------------------
-STDMETHODIMP InterfaceOleWrapper::getWrapperXInterface( Reference<XInterface>* 
pXInt)
+COM_DECLSPEC_NOTHROW STDMETHODIMP InterfaceOleWrapper::getWrapperXInterface( 
Reference<XInterface>* pXInt)
 {
     pXInt->set( static_cast<XWeak*>( this), UNO_QUERY);
     return pXInt->is() ? S_OK : E_FAIL;
 }
-STDMETHODIMP InterfaceOleWrapper::getOriginalUnoObject( Reference<XInterface>* 
pXInt)
+COM_DECLSPEC_NOTHROW STDMETHODIMP InterfaceOleWrapper::getOriginalUnoObject( 
Reference<XInterface>* pXInt)
 {
     *pXInt= m_xOrigin;
     return m_xOrigin.is() ? S_OK : E_FAIL;
 }
-STDMETHODIMP  InterfaceOleWrapper::getOriginalUnoStruct( Any * pStruct)
+COM_DECLSPEC_NOTHROW STDMETHODIMP  InterfaceOleWrapper::getOriginalUnoStruct( 
Any * pStruct)
 {
     comphelper::Automation::AutomationInvokedZone aAutomationActive;
 
@@ -304,7 +304,7 @@ STDMETHODIMP  InterfaceOleWrapper::getOriginalUnoStruct( 
Any * pStruct)
     return ret;
 }
 
-STDMETHODIMP InterfaceOleWrapper::GetTypeInfoCount( UINT *pctinfo )
+COM_DECLSPEC_NOTHROW STDMETHODIMP InterfaceOleWrapper::GetTypeInfoCount( UINT 
*pctinfo )
 {
     SAL_INFO("extensions.olebridge", this << 
"@InterfaceOleWrapper::GetTypeInfoCount");
 
@@ -1094,7 +1094,7 @@ void STDMETHODCALLTYPE CXTypeInfo::ReleaseVarDesc(VARDESC 
*)
     SAL_WARN("extensions.olebridge", this << "@CXTypeInfo::ReleaseVarDesc: 
E_NOTIMPL");
 }
 
-STDMETHODIMP InterfaceOleWrapper::GetTypeInfo(UINT iTInfo, LCID, ITypeInfo ** 
ppTInfo)
+COM_DECLSPEC_NOTHROW STDMETHODIMP InterfaceOleWrapper::GetTypeInfo(UINT 
iTInfo, LCID, ITypeInfo ** ppTInfo)
 {
     comphelper::Automation::AutomationInvokedZone aAutomationActive;
 
@@ -1136,7 +1136,7 @@ STDMETHODIMP InterfaceOleWrapper::GetTypeInfo(UINT 
iTInfo, LCID, ITypeInfo ** pp
     return S_OK;
 }
 
-STDMETHODIMP InterfaceOleWrapper::GetIDsOfNames(REFIID /*riid*/,
+COM_DECLSPEC_NOTHROW STDMETHODIMP InterfaceOleWrapper::GetIDsOfNames(REFIID 
/*riid*/,
                                                 LPOLESTR * rgszNames,
                                                 UINT cNames,
                                                 LCID /*lcid*/,
@@ -1864,7 +1864,7 @@ static bool writeBackOutParameter(VARIANTARG* pDest, 
VARIANT* pSource)
     return ret;
 }
 
-STDMETHODIMP InterfaceOleWrapper::Invoke(DISPID dispidMember,
+COM_DECLSPEC_NOTHROW STDMETHODIMP InterfaceOleWrapper::Invoke(DISPID 
dispidMember,
                                          REFIID /*riid*/,
                                          LCID /*lcid*/,
                                          WORD wFlags,
@@ -3130,7 +3130,7 @@ Reference< XInterface > 
UnoObjectWrapperRemoteOpt::createUnoWrapperInstance()
     return Reference<XInterface>( xWeak, UNO_QUERY);
 }
 
-STDMETHODIMP  UnoObjectWrapperRemoteOpt::GetIDsOfNames ( REFIID /*riid*/, 
LPOLESTR * rgszNames, UINT cNames,
+COM_DECLSPEC_NOTHROW STDMETHODIMP  UnoObjectWrapperRemoteOpt::GetIDsOfNames ( 
REFIID /*riid*/, LPOLESTR * rgszNames, UINT cNames,
                                 LCID /*lcid*/, DISPID * rgdispid )
 {
     MutexGuard guard( getBridgeMutex());
@@ -3177,7 +3177,7 @@ STDMETHODIMP  UnoObjectWrapperRemoteOpt::GetIDsOfNames ( 
REFIID /*riid*/, LPOLES
     return ret;
 }
 
-STDMETHODIMP  UnoObjectWrapperRemoteOpt::Invoke ( DISPID dispidMember, REFIID 
/*riid*/, LCID /*lcid*/, WORD wFlags,
+COM_DECLSPEC_NOTHROW STDMETHODIMP  UnoObjectWrapperRemoteOpt::Invoke ( DISPID 
dispidMember, REFIID /*riid*/, LCID /*lcid*/, WORD wFlags,
                          DISPPARAMS * pdispparams, VARIANT * pvarResult, 
EXCEPINFO * pexcepinfo,
                          UINT * puArgErr )
 {
diff --git a/extensions/source/ole/unotypewrapper.cxx 
b/extensions/source/ole/unotypewrapper.cxx
index b54b5a37209e..2824e8ef7b27 100644
--- a/extensions/source/ole/unotypewrapper.cxx
+++ b/extensions/source/ole/unotypewrapper.cxx
@@ -61,13 +61,13 @@ UnoTypeWrapper::~UnoTypeWrapper()
 
 
 // UnoTypeWrapper, IDispatch --------------------------------------------
-STDMETHODIMP UnoTypeWrapper::GetTypeInfoCount(UINT* /*pctinfo*/)
+COM_DECLSPEC_NOTHROW STDMETHODIMP UnoTypeWrapper::GetTypeInfoCount(UINT* 
/*pctinfo*/)
 {
     return E_NOTIMPL;
 }
 
 // UnoTypeWrapper, IDispatch --------------------------------------------
-STDMETHODIMP UnoTypeWrapper::GetTypeInfo( UINT /*iTInfo*/,
+COM_DECLSPEC_NOTHROW STDMETHODIMP UnoTypeWrapper::GetTypeInfo( UINT /*iTInfo*/,
                                           LCID /*lcid*/,
                                           ITypeInfo** /*ppTInfo*/)
 {
@@ -75,7 +75,7 @@ STDMETHODIMP UnoTypeWrapper::GetTypeInfo( UINT /*iTInfo*/,
 }
 
 // UnoTypeWrapper, IDispatch --------------------------------------------
-STDMETHODIMP UnoTypeWrapper::GetIDsOfNames( REFIID /*riid*/,
+COM_DECLSPEC_NOTHROW STDMETHODIMP UnoTypeWrapper::GetIDsOfNames( REFIID 
/*riid*/,
                                             LPOLESTR *rgszNames,
                                             UINT /*cNames*/,
                                             LCID /*lcid*/,
@@ -97,7 +97,7 @@ STDMETHODIMP UnoTypeWrapper::GetIDsOfNames( REFIID /*riid*/,
 }
 
 // UnoTypeWrapper, IDispatch --------------------------------------------
-STDMETHODIMP UnoTypeWrapper::Invoke( DISPID dispIdMember,
+COM_DECLSPEC_NOTHROW STDMETHODIMP UnoTypeWrapper::Invoke( DISPID dispIdMember,
                          REFIID /*riid*/,
                          LCID /*lcid*/,
                          WORD wFlags,
@@ -137,7 +137,7 @@ STDMETHODIMP UnoTypeWrapper::Invoke( DISPID dispIdMember,
 }
 
 // IUnoTypeWrapper-----------------------
-STDMETHODIMP UnoTypeWrapper::put_Name(BSTR  val)
+COM_DECLSPEC_NOTHROW STDMETHODIMP UnoTypeWrapper::put_Name(BSTR  val)
 {
      Lock();
      m_sName = val;
@@ -146,7 +146,7 @@ STDMETHODIMP UnoTypeWrapper::put_Name(BSTR  val)
 }
 
 // (UnoTypeWrapper-----------------------
-STDMETHODIMP UnoTypeWrapper::get_Name(BSTR  *pVal)
+COM_DECLSPEC_NOTHROW STDMETHODIMP UnoTypeWrapper::get_Name(BSTR  *pVal)
 {
      Lock();
      if( !pVal)
diff --git a/shell/inc/columninfo.hxx b/shell/inc/columninfo.hxx
index 105ba7566de5..6a6710a65ac6 100644
--- a/shell/inc/columninfo.hxx
+++ b/shell/inc/columninfo.hxx
@@ -33,23 +33,23 @@ public:
     // IUnknown methods
 
 
-    virtual HRESULT STDMETHODCALLTYPE QueryInterface(
+    virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE QueryInterface(
             REFIID riid,
             void __RPC_FAR *__RPC_FAR *ppvObject) override;
 
-    virtual ULONG STDMETHODCALLTYPE AddRef() override;
+    virtual COM_DECLSPEC_NOTHROW ULONG STDMETHODCALLTYPE AddRef() override;
 
-    virtual ULONG STDMETHODCALLTYPE Release() override;
+    virtual COM_DECLSPEC_NOTHROW ULONG STDMETHODCALLTYPE Release() override;
 
 
     // IColumnProvider
 
 
-    virtual HRESULT STDMETHODCALLTYPE Initialize(LPCSHCOLUMNINIT psci) 
override;
+    virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE 
Initialize(LPCSHCOLUMNINIT psci) override;
 
-    virtual HRESULT STDMETHODCALLTYPE GetColumnInfo(DWORD dwIndex, 
SHCOLUMNINFO *psci) override;
+    virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE GetColumnInfo(DWORD 
dwIndex, SHCOLUMNINFO *psci) override;
 
-    virtual HRESULT STDMETHODCALLTYPE GetItemData(
+    virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE GetItemData(
         LPCSHCOLUMNID pscid, LPCSHCOLUMNDATA pscd, VARIANT *pvarData) override;
 
 private:
diff --git a/shell/inc/infotips.hxx b/shell/inc/infotips.hxx
index 0155559752ce..ac9218a71762 100644
--- a/shell/inc/infotips.hxx
+++ b/shell/inc/infotips.hxx
@@ -47,9 +47,9 @@ public:
     // IQueryInfo methods
 
 
-    virtual HRESULT STDMETHODCALLTYPE GetInfoTip(DWORD dwFlags, PWSTR* 
ppwszTip) override;
+    virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE GetInfoTip(DWORD 
dwFlags, PWSTR* ppwszTip) override;
 
-    virtual HRESULT STDMETHODCALLTYPE GetInfoFlags(DWORD *pdwFlags) override;
+    virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE GetInfoFlags(DWORD 
*pdwFlags) override;
 
 
     // IPersist methods
diff --git a/shell/source/win32/shlxthandler/columninfo/columninfo.cxx 
b/shell/source/win32/shlxthandler/columninfo/columninfo.cxx
index 8d8ffbed4483..d1329e0fee0b 100644
--- a/shell/source/win32/shlxthandler/columninfo/columninfo.cxx
+++ b/shell/source/win32/shlxthandler/columninfo/columninfo.cxx
@@ -71,7 +71,7 @@ CColumnInfo::~CColumnInfo()
 // IUnknown methods
 
 
-HRESULT STDMETHODCALLTYPE CColumnInfo::QueryInterface(REFIID riid, void 
__RPC_FAR *__RPC_FAR *ppvObject)
+COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE 
CColumnInfo::QueryInterface(REFIID riid, void __RPC_FAR *__RPC_FAR *ppvObject)
 {
     *ppvObject = nullptr;
 
@@ -87,13 +87,13 @@ HRESULT STDMETHODCALLTYPE 
CColumnInfo::QueryInterface(REFIID riid, void __RPC_FA
 }
 
 
-ULONG STDMETHODCALLTYPE CColumnInfo::AddRef()
+COM_DECLSPEC_NOTHROW ULONG STDMETHODCALLTYPE CColumnInfo::AddRef()
 {
     return InterlockedIncrement(&m_RefCnt);
 }
 
 
-ULONG STDMETHODCALLTYPE CColumnInfo::Release()
+COM_DECLSPEC_NOTHROW ULONG STDMETHODCALLTYPE CColumnInfo::Release()
 {
     long refcnt = InterlockedDecrement(&m_RefCnt);
 
@@ -107,13 +107,13 @@ ULONG STDMETHODCALLTYPE CColumnInfo::Release()
 // IColumnProvider
 
 
-HRESULT STDMETHODCALLTYPE CColumnInfo::Initialize(LPCSHCOLUMNINIT /*psci*/)
+COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE 
CColumnInfo::Initialize(LPCSHCOLUMNINIT /*psci*/)
 {
     return S_OK;
 }
 
 // Register all columns we support
-HRESULT STDMETHODCALLTYPE CColumnInfo::GetColumnInfo(DWORD dwIndex, 
SHCOLUMNINFO *psci)
+COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE 
CColumnInfo::GetColumnInfo(DWORD dwIndex, SHCOLUMNINFO *psci)
 {
     if (dwIndex >= ColumnInfoTableSize)
         return S_FALSE;
@@ -131,7 +131,7 @@ HRESULT STDMETHODCALLTYPE CColumnInfo::GetColumnInfo(DWORD 
dwIndex, SHCOLUMNINFO
     return S_OK;
 }
 
-HRESULT STDMETHODCALLTYPE CColumnInfo::GetItemData(LPCSHCOLUMNID pscid, 
LPCSHCOLUMNDATA pscd, VARIANT *pvarData)
+COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE 
CColumnInfo::GetItemData(LPCSHCOLUMNID pscid, LPCSHCOLUMNDATA pscd, VARIANT 
*pvarData)
 {
     if (IsOOFileExtension(pscd->pwszExt))
     {
diff --git a/shell/source/win32/shlxthandler/infotips/infotips.cxx 
b/shell/source/win32/shlxthandler/infotips/infotips.cxx
index aa061eb25490..3e3d0c3a1a88 100644
--- a/shell/source/win32/shlxthandler/infotips/infotips.cxx
+++ b/shell/source/win32/shlxthandler/infotips/infotips.cxx
@@ -191,7 +191,7 @@ static std::wstring getFileSizeInfo(wchar_t const * 
FileName)
 // IQueryInfo methods
 
 
-HRESULT STDMETHODCALLTYPE CInfoTip::GetInfoTip(DWORD /*dwFlags*/, PWSTR* 
ppwszTip)
+COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE CInfoTip::GetInfoTip(DWORD 
/*dwFlags*/, PWSTR* ppwszTip)
 {
     std::wstring msg;
     const std::wstring CONST_SPACE(SPACE);
@@ -297,7 +297,7 @@ HRESULT STDMETHODCALLTYPE CInfoTip::GetInfoTip(DWORD 
/*dwFlags*/, PWSTR* ppwszTi
 }
 
 
-HRESULT STDMETHODCALLTYPE CInfoTip::GetInfoFlags(DWORD * /*pdwFlags*/ )
+COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE CInfoTip::GetInfoFlags(DWORD * 
/*pdwFlags*/ )
 {
     return E_NOTIMPL;
 }
diff --git a/winaccessibility/source/UAccCOM/AccAction.cxx 
b/winaccessibility/source/UAccCOM/AccAction.cxx
index edc2e464340c..97bfc4f40aed 100644
--- a/winaccessibility/source/UAccCOM/AccAction.cxx
+++ b/winaccessibility/source/UAccCOM/AccAction.cxx
@@ -40,7 +40,7 @@ using namespace com::sun::star::uno;
  *
  * @param    nActions    the number of action.
  */
-STDMETHODIMP CAccAction::nActions(/*[out,retval]*/long* nActions)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccAction::nActions(/*[out,retval]*/long* 
nActions)
 {
 
     return CAccActionBase::nActions(nActions);
@@ -51,7 +51,7 @@ STDMETHODIMP CAccAction::nActions(/*[out,retval]*/long* 
nActions)
  *
  * @param    actionIndex    the index of action.
  */
-STDMETHODIMP CAccAction::doAction(/* [in] */ long actionIndex)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccAction::doAction(/* [in] */ long 
actionIndex)
 {
 
     return CAccActionBase::doAction(actionIndex);
@@ -63,19 +63,19 @@ STDMETHODIMP CAccAction::doAction(/* [in] */ long 
actionIndex)
  * @param    actionIndex    the index of action.
  * @param    description    the description string of the specified action.
  */
-STDMETHODIMP CAccAction::get_description(long actionIndex,BSTR __RPC_FAR 
*description)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccAction::get_description(long 
actionIndex,BSTR __RPC_FAR *description)
 {
 
     return CAccActionBase::get_description(actionIndex, description);
 }
 
-STDMETHODIMP CAccAction::get_name( long actionIndex, BSTR __RPC_FAR *name)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccAction::get_name( long actionIndex, BSTR 
__RPC_FAR *name)
 {
 
     return CAccActionBase::get_name(actionIndex, name);
 }
 
-STDMETHODIMP CAccAction::get_localizedName( long actionIndex, BSTR __RPC_FAR 
*localizedName)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccAction::get_localizedName( long 
actionIndex, BSTR __RPC_FAR *localizedName)
 {
 
     return CAccActionBase::get_localizedName(actionIndex, localizedName);
@@ -91,7 +91,7 @@ STDMETHODIMP CAccAction::get_localizedName( long actionIndex, 
BSTR __RPC_FAR *lo
  * @param    keyBinding     the key binding array.
  * @param    nBinding       the actual number of key binding returned.
  */
-STDMETHODIMP CAccAction::get_keyBinding(
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccAction::get_keyBinding(
     /* [in] */ long actionIndex,
     /* [in] */ long nMaxBinding,
     /* [length_is][length_is][size_is][size_is][out] */ BSTR __RPC_FAR 
*__RPC_FAR *keyBinding,
@@ -106,7 +106,7 @@ STDMETHODIMP CAccAction::get_keyBinding(
    * @param pXSubInterface XAccessibleHyperlink interface.
    * @return Result.
 */
-STDMETHODIMP CAccAction::put_XSubInterface(hyper pXSubInterface)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccAction::put_XSubInterface(hyper 
pXSubInterface)
 {
 
 
diff --git a/winaccessibility/source/UAccCOM/AccActionBase.cxx 
b/winaccessibility/source/UAccCOM/AccActionBase.cxx
index a10dd877eae4..be8a5bfbfe4d 100644
--- a/winaccessibility/source/UAccCOM/AccActionBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccActionBase.cxx
@@ -56,7 +56,7 @@ CAccActionBase::~CAccActionBase()
  *
  * @param    nActions    the number of action.
  */
-STDMETHODIMP CAccActionBase::nActions(/*[out,retval]*/long* nActions)
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
CAccActionBase::nActions(/*[out,retval]*/long* nActions)
 {
     SolarMutexGuard g;
 
@@ -80,7 +80,7 @@ STDMETHODIMP CAccActionBase::nActions(/*[out,retval]*/long* 
nActions)
  *
  * @param    actionIndex    the index of action.
  */
-STDMETHODIMP CAccActionBase::doAction(/* [in] */ long actionIndex)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccActionBase::doAction(/* [in] */ long 
actionIndex)
 {
     SolarMutexGuard g;
 
@@ -101,7 +101,7 @@ STDMETHODIMP CAccActionBase::doAction(/* [in] */ long 
actionIndex)
  * @param    actionIndex    the index of action.
  * @param    description    the description string of the specified action.
  */
-STDMETHODIMP CAccActionBase::get_description(long actionIndex,BSTR __RPC_FAR 
*description)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccActionBase::get_description(long 
actionIndex,BSTR __RPC_FAR *description)
 {
     SolarMutexGuard g;
 
@@ -126,12 +126,12 @@ STDMETHODIMP CAccActionBase::get_description(long 
actionIndex,BSTR __RPC_FAR *de
     LEAVE_PROTECTED_BLOCK
 }
 
-STDMETHODIMP CAccActionBase::get_name( long, BSTR __RPC_FAR *)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccActionBase::get_name( long, BSTR 
__RPC_FAR *)
 {
     return E_NOTIMPL;
 }
 
-STDMETHODIMP CAccActionBase::get_localizedName( long, BSTR __RPC_FAR *)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccActionBase::get_localizedName( long, 
BSTR __RPC_FAR *)
 {
     return E_NOTIMPL;
 }
@@ -146,7 +146,7 @@ STDMETHODIMP CAccActionBase::get_localizedName( long, BSTR 
__RPC_FAR *)
  * @param    keyBinding     the key binding array.
  * @param    nBinding       the actual number of key binding returned.
  */
-STDMETHODIMP CAccActionBase::get_keyBinding(
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccActionBase::get_keyBinding(
     /* [in] */ long actionIndex,
     /* [in] */ long,
     /* [length_is][length_is][size_is][size_is][out] */ BSTR __RPC_FAR 
*__RPC_FAR *keyBinding,
@@ -193,7 +193,7 @@ STDMETHODIMP CAccActionBase::get_keyBinding(
  *
  * @param    pXInterface    the pointer of UNO interface.
  */
-STDMETHODIMP CAccActionBase::put_XInterface(hyper pXInterface)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccActionBase::put_XInterface(hyper 
pXInterface)
 {
     // internal IUNOXWrapper - no mutex meeded
 
diff --git a/winaccessibility/source/UAccCOM/AccComponent.cxx 
b/winaccessibility/source/UAccCOM/AccComponent.cxx
index 3e4f191e03c6..22318751e62d 100644
--- a/winaccessibility/source/UAccCOM/AccComponent.cxx
+++ b/winaccessibility/source/UAccCOM/AccComponent.cxx
@@ -38,7 +38,7 @@
  *
  * @param    Location    the upper left corner of the object's bounding box.
  */
-STDMETHODIMP CAccComponent::get_locationInParent(long *x, long *y)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccComponent::get_locationInParent(long *x, 
long *y)
 {
 
     return CAccComponentBase::get_locationInParent(x,y);
@@ -49,7 +49,7 @@ STDMETHODIMP CAccComponent::get_locationInParent(long *x, 
long *y)
  *
  * @param    Color    the color of foreground.
  */
-STDMETHODIMP CAccComponent::get_foreground(IA2Color * foreground)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccComponent::get_foreground(IA2Color * 
foreground)
 {
 
     return CAccComponentBase::get_foreground(foreground);
@@ -60,7 +60,7 @@ STDMETHODIMP CAccComponent::get_foreground(IA2Color * 
foreground)
  *
  * @param    Color    the color of background.
  */
-STDMETHODIMP CAccComponent::get_background(IA2Color * background)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccComponent::get_background(IA2Color * 
background)
 {
 
     return CAccComponentBase::get_background(background);
diff --git a/winaccessibility/source/UAccCOM/AccComponentBase.cxx 
b/winaccessibility/source/UAccCOM/AccComponentBase.cxx
index e41123ea33e9..ad3b06f79668 100644
--- a/winaccessibility/source/UAccCOM/AccComponentBase.cxx
+++ b/winaccessibility/source/UAccCOM/AccComponentBase.cxx
@@ -44,7 +44,7 @@ CAccComponentBase::~CAccComponentBase()
  *
  * @param    Location    the upper left corner of the object's bounding box.
  */
-STDMETHODIMP CAccComponentBase::get_locationInParent(long *x, long *y)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccComponentBase::get_locationInParent(long 
*x, long *y)
 {
     SolarMutexGuard g;
 
@@ -74,7 +74,7 @@ STDMETHODIMP CAccComponentBase::get_locationInParent(long *x, 
long *y)
  * @param    Location    the upper left corner of the object's bounding
  *                       box in screen coordinates.
  */
-STDMETHODIMP CAccComponentBase::get_locationOnScreen(long *x, long *y)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccComponentBase::get_locationOnScreen(long 
*x, long *y)
 {
     SolarMutexGuard g;
 
@@ -103,7 +103,7 @@ STDMETHODIMP CAccComponentBase::get_locationOnScreen(long 
*x, long *y)
  *
  * @param    success    the boolean result to be returned.
  */
-STDMETHODIMP CAccComponentBase::grabFocus(boolean * success)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccComponentBase::grabFocus(boolean * 
success)
 {
     SolarMutexGuard g;
 
@@ -129,7 +129,7 @@ STDMETHODIMP CAccComponentBase::grabFocus(boolean * success)
  *
  * @param    Color    the color of foreground.
  */
-STDMETHODIMP CAccComponentBase::get_foreground(IA2Color * foreground)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccComponentBase::get_foreground(IA2Color * 
foreground)
 {
     SolarMutexGuard g;
 
@@ -154,7 +154,7 @@ STDMETHODIMP CAccComponentBase::get_foreground(IA2Color * 
foreground)
  *
  * @param    Color    the color of background.
  */
-STDMETHODIMP CAccComponentBase::get_background(IA2Color * background)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccComponentBase::get_background(IA2Color * 
background)
 {
     SolarMutexGuard g;
 
@@ -179,7 +179,7 @@ STDMETHODIMP CAccComponentBase::get_background(IA2Color * 
background)
  *
  * @param    pXInterface    the pointer of UNO interface.
  */
-STDMETHODIMP CAccComponentBase::put_XInterface(hyper pXInterface)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccComponentBase::put_XInterface(hyper 
pXInterface)
 {
     // internal IUNOXWrapper - no mutex meeded
 
diff --git a/winaccessibility/source/UAccCOM/AccEditableText.cxx 
b/winaccessibility/source/UAccCOM/AccEditableText.cxx
index 333c6c54ba2e..aa3e8f904a14 100644
--- a/winaccessibility/source/UAccCOM/AccEditableText.cxx
+++ b/winaccessibility/source/UAccCOM/AccEditableText.cxx
@@ -57,7 +57,7 @@ using namespace std;
  * @param    endOffset      the end offset of copying.
  * @param    success        the boolean result to be returned.
  */
-STDMETHODIMP CAccEditableText::copyText(long startOffset, long endOffset)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::copyText(long startOffset, 
long endOffset)
 {
     SolarMutexGuard g;
 
@@ -84,7 +84,7 @@ STDMETHODIMP CAccEditableText::copyText(long startOffset, 
long endOffset)
  * @param    endOffset      the end offset of deleting.
  * @param    success        the boolean result to be returned.
  */
-STDMETHODIMP CAccEditableText::deleteText(long startOffset, long endOffset)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::deleteText(long 
startOffset, long endOffset)
 {
     SolarMutexGuard g;
 
@@ -108,7 +108,7 @@ STDMETHODIMP CAccEditableText::deleteText(long startOffset, 
long endOffset)
  * @param    text      the text to be inserted.
  * @param    success   the boolean result to be returned.
  */
-STDMETHODIMP CAccEditableText::insertText(long offset, BSTR * text)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::insertText(long offset, 
BSTR * text)
 {
     SolarMutexGuard g;
 
@@ -137,7 +137,7 @@ STDMETHODIMP CAccEditableText::insertText(long offset, BSTR 
* text)
  * @param    endOffset      the end offset of cutting.
  * @param    success        the boolean result to be returned.
  */
-STDMETHODIMP CAccEditableText::cutText(long startOffset, long endOffset)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::cutText(long startOffset, 
long endOffset)
 {
     SolarMutexGuard g;
 
@@ -160,7 +160,7 @@ STDMETHODIMP CAccEditableText::cutText(long startOffset, 
long endOffset)
  * @param    offset    the offset of pasting.
  * @param    success   the boolean result to be returned.
  */
-STDMETHODIMP CAccEditableText::pasteText(long offset)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::pasteText(long offset)
 {
     SolarMutexGuard g;
 
@@ -185,7 +185,7 @@ STDMETHODIMP CAccEditableText::pasteText(long offset)
  * @param    text           the replacing text.
  * @param    success        the boolean result to be returned.
  */
-STDMETHODIMP CAccEditableText::replaceText(long startOffset, long endOffset, 
BSTR * text)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::replaceText(long 
startOffset, long endOffset, BSTR * text)
 {
     SolarMutexGuard g;
 
@@ -214,7 +214,7 @@ STDMETHODIMP CAccEditableText::replaceText(long 
startOffset, long endOffset, BST
  * @param    attributes     the attribute text.
  * @param    success        the boolean result to be returned.
  */
-STDMETHODIMP CAccEditableText::setAttributes(long startOffset, long endOffset, 
BSTR * attributes)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::setAttributes(long 
startOffset, long endOffset, BSTR * attributes)
 {
     SolarMutexGuard g;
 
@@ -476,7 +476,7 @@ void CAccEditableText::get_AnyFromOLECHAR(const OUString 
&ouName, const OUString
  *
  * @param    pXInterface    the pointer of UNO interface.
  */
-STDMETHODIMP CAccEditableText::put_XInterface(hyper pXInterface)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccEditableText::put_XInterface(hyper 
pXInterface)
 {
     // internal IUNOXWrapper - no mutex meeded
 
diff --git a/winaccessibility/source/UAccCOM/AccHyperLink.cxx 
b/winaccessibility/source/UAccCOM/AccHyperLink.cxx
index 34f3f9842448..8753753a494a 100644
--- a/winaccessibility/source/UAccCOM/AccHyperLink.cxx
+++ b/winaccessibility/source/UAccCOM/AccHyperLink.cxx
@@ -44,7 +44,7 @@ using namespace com::sun::star::awt;
  *
  * @param    nActions    the number of action.
  */
-STDMETHODIMP CAccHyperLink::nActions(/*[out,retval]*/long* nActions)
+COM_DECLSPEC_NOTHROW STDMETHODIMP 
CAccHyperLink::nActions(/*[out,retval]*/long* nActions)
 {
 
     return CAccActionBase::nActions(nActions);
@@ -55,7 +55,7 @@ STDMETHODIMP CAccHyperLink::nActions(/*[out,retval]*/long* 
nActions)
  *
  * @param    actionIndex    the index of action.
  */
-STDMETHODIMP CAccHyperLink::doAction(/* [in] */ long actionIndex)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::doAction(/* [in] */ long 
actionIndex)
 {
 
     return CAccActionBase::doAction(actionIndex);
@@ -67,19 +67,19 @@ STDMETHODIMP CAccHyperLink::doAction(/* [in] */ long 
actionIndex)
  * @param    actionIndex    the index of action.
  * @param    description    the description string of the specified action.
  */
-STDMETHODIMP CAccHyperLink::get_description(long actionIndex,BSTR __RPC_FAR 
*description)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::get_description(long 
actionIndex,BSTR __RPC_FAR *description)
 {
 
     return CAccActionBase::get_description(actionIndex, description);
 }
 
-STDMETHODIMP CAccHyperLink::get_name( long actionIndex, BSTR __RPC_FAR *name)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::get_name( long actionIndex, 
BSTR __RPC_FAR *name)
 {
 
     return CAccActionBase::get_name(actionIndex, name);
 }
 
-STDMETHODIMP CAccHyperLink::get_localizedName( long actionIndex, BSTR 
__RPC_FAR *localizedName)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::get_localizedName( long 
actionIndex, BSTR __RPC_FAR *localizedName)
 {
 
     return CAccActionBase::get_name(actionIndex, localizedName);
@@ -95,7 +95,7 @@ STDMETHODIMP CAccHyperLink::get_localizedName( long 
actionIndex, BSTR __RPC_FAR
  * @param    keyBinding     the key binding array.
  * @param    nBinding       the actual number of key binding returned.
  */
-STDMETHODIMP CAccHyperLink::get_keyBinding(
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::get_keyBinding(
     /* [in] */ long actionIndex,
     /* [in] */ long nMaxBinding,
     /* [length_is][length_is][size_is][size_is][out] */ BSTR __RPC_FAR 
*__RPC_FAR *keyBinding,
@@ -110,7 +110,7 @@ STDMETHODIMP CAccHyperLink::get_keyBinding(
    * @param
    * @return Result.
 */
-STDMETHODIMP CAccHyperLink::get_anchor(/* [in] */ long index,
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::get_anchor(/* [in] */ long 
index,
         /* [retval][out] */ VARIANT __RPC_FAR *anchor)
 {
     SolarMutexGuard g;
@@ -142,7 +142,7 @@ STDMETHODIMP CAccHyperLink::get_anchor(/* [in] */ long 
index,
    * @param
    * @return Result.
 */
-STDMETHODIMP CAccHyperLink::get_anchorTarget(/* [in] */ long index,
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::get_anchorTarget(/* [in] */ 
long index,
         /* [retval][out] */ VARIANT __RPC_FAR *anchorTarget)
 {
     SolarMutexGuard g;
@@ -175,7 +175,7 @@ STDMETHODIMP CAccHyperLink::get_anchorTarget(/* [in] */ 
long index,
    * @param index Variant to get start index.
    * @return Result.
 */
-STDMETHODIMP CAccHyperLink::get_startIndex(/* [retval][out] */ long __RPC_FAR 
*index)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::get_startIndex(/* 
[retval][out] */ long __RPC_FAR *index)
 {
     SolarMutexGuard g;
 
@@ -198,7 +198,7 @@ STDMETHODIMP CAccHyperLink::get_startIndex(/* [retval][out] 
*/ long __RPC_FAR *i
    * @param index Variant to get end index.
    * @return Result.
 */
-STDMETHODIMP CAccHyperLink::get_endIndex(/* [retval][out] */ long __RPC_FAR 
*index)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::get_endIndex(/* [retval][out] 
*/ long __RPC_FAR *index)
 {
     SolarMutexGuard g;
 
@@ -226,7 +226,7 @@ STDMETHODIMP CAccHyperLink::get_endIndex(/* [retval][out] 
*/ long __RPC_FAR *ind
    * @param valid Variant to get validity.
    * @return Result.
 */
-STDMETHODIMP CAccHyperLink::get_valid(/* [retval][out] */ boolean __RPC_FAR 
*valid)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::get_valid(/* [retval][out] */ 
boolean __RPC_FAR *valid)
 {
     SolarMutexGuard g;
 
@@ -254,7 +254,7 @@ STDMETHODIMP CAccHyperLink::get_valid(/* [retval][out] */ 
boolean __RPC_FAR *val
    * @param pXInterface XAccessibleContext interface.
    * @return Result.
 */
-STDMETHODIMP CAccHyperLink::put_XInterface(hyper pXInterface)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::put_XInterface(hyper 
pXInterface)
 {
     // internal IUNOXWrapper - no mutex meeded
 
@@ -287,7 +287,7 @@ STDMETHODIMP CAccHyperLink::put_XInterface(hyper 
pXInterface)
    * @param pXSubInterface XAccessibleHyperlink interface.
    * @return Result.
 */
-STDMETHODIMP CAccHyperLink::put_XSubInterface(hyper pXSubInterface)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHyperLink::put_XSubInterface(hyper 
pXSubInterface)
 {
     // internal IUNOXWrapper - no mutex meeded
 
diff --git a/winaccessibility/source/UAccCOM/AccHypertext.cxx 
b/winaccessibility/source/UAccCOM/AccHypertext.cxx
index 02946bc8e69d..28d7525e2f8e 100644
--- a/winaccessibility/source/UAccCOM/AccHypertext.cxx
+++ b/winaccessibility/source/UAccCOM/AccHypertext.cxx
@@ -45,7 +45,7 @@ using namespace com::sun::star::uno;
    * @param success     Variant to accept the result of if the method call is 
successful.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::addSelection(long startOffset, long endOffset)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHypertext::addSelection(long 
startOffset, long endOffset)
 {
 
     return CAccTextBase::get_addSelection(startOffset, endOffset);
@@ -60,7 +60,7 @@ STDMETHODIMP CAccHypertext::addSelection(long startOffset, 
long endOffset)
    * @param textAttributes     Variant to accept attributes.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::get_attributes(long offset, long * startOffset, 
long * endOffset, BSTR * textAttributes)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHypertext::get_attributes(long offset, 
long * startOffset, long * endOffset, BSTR * textAttributes)
 {
 
     return CAccTextBase::get_attributes(offset, startOffset, endOffset, 
textAttributes);
@@ -71,7 +71,7 @@ STDMETHODIMP CAccHypertext::get_attributes(long offset, long 
* startOffset, long
    * @param offset     Variant to accept caret offset.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::get_caretOffset(long * offset)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHypertext::get_caretOffset(long * offset)
 {
 
     return CAccTextBase::get_caretOffset(offset);
@@ -86,7 +86,7 @@ STDMETHODIMP CAccHypertext::get_caretOffset(long * offset)
    * @param Height Variant to accept height.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::get_characterExtents(long offset, 
IA2CoordinateType coordType, long * x, long * y, long * width, long * height)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHypertext::get_characterExtents(long 
offset, IA2CoordinateType coordType, long * x, long * y, long * width, long * 
height)
 {
 
     return CAccTextBase::get_characterExtents(offset, coordType, x, y, width, 
height);
@@ -97,7 +97,7 @@ STDMETHODIMP CAccHypertext::get_characterExtents(long offset, 
IA2CoordinateType
    * @param nSelections Variant to accept selections count.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::get_nSelections(long * nSelections)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHypertext::get_nSelections(long * 
nSelections)
 {
 
     return CAccTextBase::get_nSelections(nSelections);
@@ -111,7 +111,7 @@ STDMETHODIMP CAccHypertext::get_nSelections(long * 
nSelections)
    * @param offset Variant to accept offset.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::get_offsetAtPoint(long x, long y, 
IA2CoordinateType coordType, long * offset)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHypertext::get_offsetAtPoint(long x, 
long y, IA2CoordinateType coordType, long * offset)
 {
     return CAccTextBase::get_offsetAtPoint(x, y, coordType, offset);
 }
@@ -123,7 +123,7 @@ STDMETHODIMP CAccHypertext::get_offsetAtPoint(long x, long 
y, IA2CoordinateType
    * @param endOffset Variant to accept the end offset of special selection.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::get_selection(long selection, long * startOffset, 
long * endOffset)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHypertext::get_selection(long selection, 
long * startOffset, long * endOffset)
 {
 
     return CAccTextBase::get_selection(selection, startOffset, endOffset);
@@ -136,7 +136,7 @@ STDMETHODIMP CAccHypertext::get_selection(long selection, 
long * startOffset, lo
    * @param text        Variant to accept the text of special range.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::get_text(long startOffset, long endOffset, BSTR * 
text)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHypertext::get_text(long startOffset, 
long endOffset, BSTR * text)
 {
 
     return CAccTextBase::get_text(startOffset, endOffset, text);
@@ -151,7 +151,7 @@ STDMETHODIMP CAccHypertext::get_text(long startOffset, long 
endOffset, BSTR * te
    * @param text        Variant to accept the special text.
    * @return Result.
 */
-STDMETHODIMP CAccHypertext::get_textBeforeOffset(long offset, 
IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, BSTR * 
text)
+COM_DECLSPEC_NOTHROW STDMETHODIMP CAccHypertext::get_textBeforeOffset(long 
offset, IA2TextBoundaryType boundaryType, long * startOffset, long * endOffset, 
BSTR * text)
 {
 
     return CAccTextBase::get_textBeforeOffset(offset, boundaryType,
@@ -167,7 +167,7 @@ STDMETHODIMP CAccHypertext::get_textBeforeOffset(long 
offset, IA2TextBoundaryTyp
    * @param text        Variant to accept the special text.
    * @return Result.
 */

... etc. - the rest is truncated
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to