[Libreoffice-commits] .: cppuhelper/inc sal/inc vbahelper/inc

Lubos Lunak llunak at kemper.freedesktop.org
Mon Mar 12 11:20:51 PDT 2012


 cppuhelper/inc/cppuhelper/compbase.hxx         |    4 ++--
 cppuhelper/inc/cppuhelper/compbase1.hxx        |    6 +++---
 cppuhelper/inc/cppuhelper/compbase10.hxx       |    6 +++---
 cppuhelper/inc/cppuhelper/compbase11.hxx       |    6 +++---
 cppuhelper/inc/cppuhelper/compbase12.hxx       |    6 +++---
 cppuhelper/inc/cppuhelper/compbase2.hxx        |    6 +++---
 cppuhelper/inc/cppuhelper/compbase3.hxx        |    6 +++---
 cppuhelper/inc/cppuhelper/compbase4.hxx        |    6 +++---
 cppuhelper/inc/cppuhelper/compbase5.hxx        |    6 +++---
 cppuhelper/inc/cppuhelper/compbase6.hxx        |    6 +++---
 cppuhelper/inc/cppuhelper/compbase7.hxx        |    6 +++---
 cppuhelper/inc/cppuhelper/compbase8.hxx        |    6 +++---
 cppuhelper/inc/cppuhelper/compbase9.hxx        |    6 +++---
 cppuhelper/inc/cppuhelper/implbase.hxx         |    8 ++++----
 cppuhelper/inc/cppuhelper/implbase1.hxx        |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase10.hxx       |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase11.hxx       |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase12.hxx       |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase2.hxx        |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase3.hxx        |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase4.hxx        |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase5.hxx        |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase6.hxx        |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase7.hxx        |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase8.hxx        |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase9.hxx        |   10 +++++-----
 cppuhelper/inc/cppuhelper/implbase_ex_post.hxx |   14 +++++++-------
 sal/inc/sal/types.h                            |    5 +++++
 vbahelper/inc/vbahelper/vbahelperinterface.hxx |    8 ++++----
 29 files changed, 118 insertions(+), 113 deletions(-)

New commits:
commit 36627af621d46674273f44e2eb85731419a41cc1
Author: Luboš Luňák <l.lunak at suse.cz>
Date:   Mon Mar 12 19:08:03 2012 +0100

    SAL_DLLPUBLIC_TEMPLATE
    
    On Linux, public templates should not be hidden at the linker level.
    But on Windows, dllimport causes trouble. So create a new macro
    to be used specifically with templates that does the right thing
    on both platforms.
    (http://lists.freedesktop.org/archives/libreoffice/2012-March/028041.html
    and followups)

diff --git a/cppuhelper/inc/cppuhelper/compbase.hxx b/cppuhelper/inc/cppuhelper/compbase.hxx
index e590412..d3699d9 100644
--- a/cppuhelper/inc/cppuhelper/compbase.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase.hxx
@@ -41,7 +41,7 @@
 namespace cppu \
 { \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper##N \
     : public ::cppu::WeakComponentImplHelperBase \
     , public ImplHelperBase##N< __IFC##N > \
 { \
@@ -67,7 +67,7 @@ public: \
         { return getClassData( s_aCD ).getImplementationId(); } \
 }; \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper##N \
     : public ::cppu::WeakAggComponentImplHelperBase \
     , public ImplHelperBase##N< __IFC##N > \
 { \
diff --git a/cppuhelper/inc/cppuhelper/compbase1.hxx b/cppuhelper/inc/cppuhelper/compbase1.hxx
index 902d6f0..c18210d 100644
--- a/cppuhelper/inc/cppuhelper/compbase1.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase1.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper1
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper1
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper1
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper1
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper1
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper1
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1
diff --git a/cppuhelper/inc/cppuhelper/compbase10.hxx b/cppuhelper/inc/cppuhelper/compbase10.hxx
index e42f9f4..9c0a1c1 100644
--- a/cppuhelper/inc/cppuhelper/compbase10.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase10.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper10
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper10
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper10
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper10
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper10
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper10
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10
diff --git a/cppuhelper/inc/cppuhelper/compbase11.hxx b/cppuhelper/inc/cppuhelper/compbase11.hxx
index 90b4dfb..33d8a2f 100644
--- a/cppuhelper/inc/cppuhelper/compbase11.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase11.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper11
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper11
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper11
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper11
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper11
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper11
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11
diff --git a/cppuhelper/inc/cppuhelper/compbase12.hxx b/cppuhelper/inc/cppuhelper/compbase12.hxx
index 782b980..cb0a03a 100644
--- a/cppuhelper/inc/cppuhelper/compbase12.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase12.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11, class Ifc12 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper12
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper12
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11, public Ifc12
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11, class Ifc12 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper12
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper12
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11, public Ifc12
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11, class Ifc12 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper12
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper12
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11, public Ifc12
diff --git a/cppuhelper/inc/cppuhelper/compbase2.hxx b/cppuhelper/inc/cppuhelper/compbase2.hxx
index 1efee41..f055fe3 100644
--- a/cppuhelper/inc/cppuhelper/compbase2.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase2.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper2
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper2
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper2
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper2
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2
@@ -141,7 +141,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper2
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper2
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2
diff --git a/cppuhelper/inc/cppuhelper/compbase3.hxx b/cppuhelper/inc/cppuhelper/compbase3.hxx
index bb983b0..a31570a 100644
--- a/cppuhelper/inc/cppuhelper/compbase3.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase3.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper3
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper3
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper3
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper3
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper3
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper3
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3
diff --git a/cppuhelper/inc/cppuhelper/compbase4.hxx b/cppuhelper/inc/cppuhelper/compbase4.hxx
index fdeec54..b2e2047 100644
--- a/cppuhelper/inc/cppuhelper/compbase4.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase4.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper4
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper4
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper4
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper4
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper4
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper4
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4
diff --git a/cppuhelper/inc/cppuhelper/compbase5.hxx b/cppuhelper/inc/cppuhelper/compbase5.hxx
index a150a47..8b279da 100644
--- a/cppuhelper/inc/cppuhelper/compbase5.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase5.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper5
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper5
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper5
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper5
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper5
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper5
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5
diff --git a/cppuhelper/inc/cppuhelper/compbase6.hxx b/cppuhelper/inc/cppuhelper/compbase6.hxx
index 255a725..a91b07e 100644
--- a/cppuhelper/inc/cppuhelper/compbase6.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase6.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper6
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper6
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper6
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper6
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper6
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper6
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6
diff --git a/cppuhelper/inc/cppuhelper/compbase7.hxx b/cppuhelper/inc/cppuhelper/compbase7.hxx
index 3bcf34a..81910ed 100644
--- a/cppuhelper/inc/cppuhelper/compbase7.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase7.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper7
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper7
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper7
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper7
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper7
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper7
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7
diff --git a/cppuhelper/inc/cppuhelper/compbase8.hxx b/cppuhelper/inc/cppuhelper/compbase8.hxx
index c8d6151..8d4009a 100644
--- a/cppuhelper/inc/cppuhelper/compbase8.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase8.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper8
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper8
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper8
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper8
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8
@@ -140,7 +140,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper8
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper8
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8
diff --git a/cppuhelper/inc/cppuhelper/compbase9.hxx b/cppuhelper/inc/cppuhelper/compbase9.hxx
index e3b738f..946b319 100644
--- a/cppuhelper/inc/cppuhelper/compbase9.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase9.hxx
@@ -58,7 +58,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper9
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper9
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9
@@ -100,7 +100,7 @@ namespace cppu
         the g++ overloaded-virtual warning
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC PartialWeakComponentImplHelper9
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE PartialWeakComponentImplHelper9
         : public WeakComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9
@@ -139,7 +139,7 @@ namespace cppu
         @deprecated
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper9
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper9
         : public WeakAggComponentImplHelperBase
         , public ::com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9
diff --git a/cppuhelper/inc/cppuhelper/implbase.hxx b/cppuhelper/inc/cppuhelper/implbase.hxx
index ae80110..34cfed2 100644
--- a/cppuhelper/inc/cppuhelper/implbase.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase.hxx
@@ -181,7 +181,7 @@ struct ClassData##N : public ClassDataBase \
         {} \
 }; \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelperBase##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelperBase##N \
     : public ::com::sun::star::lang::XTypeProvider \
     , __PUBLIC_IFC##N \
 { \
@@ -210,7 +210,7 @@ protected: \
     } \
 }; \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper##N \
     : public ImplHelperBase##N< __IFC##N > \
 { \
     static ClassData##N s_aCD; \
@@ -223,7 +223,7 @@ public: \
         { return this->getClassData( s_aCD ).getImplementationId(); } \
 }; \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper##N \
     : public ::cppu::OWeakObject \
     , public ImplHelperBase##N< __IFC##N > \
 { \
@@ -244,7 +244,7 @@ public: \
         { return this->getClassData( s_aCD ).getImplementationId(); } \
 }; \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper##N \
     : public ::cppu::OWeakAggObject \
     , public ImplHelperBase##N< __IFC##N > \
 { \
diff --git a/cppuhelper/inc/cppuhelper/implbase1.hxx b/cppuhelper/inc/cppuhelper/implbase1.hxx
index 79527b8..d4cbeea 100644
--- a/cppuhelper/inc/cppuhelper/implbase1.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase1.hxx
@@ -73,7 +73,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper1
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper1
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1
     {
@@ -99,7 +99,7 @@ namespace cppu
         to implement 1 till 12 interfaces in your component.
     */
     template< class Ifc1 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper1
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper1
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1
@@ -131,7 +131,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper1
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper1
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1
@@ -168,7 +168,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper1
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper1
         : public BaseClass
         , public Ifc1
     {
@@ -241,7 +241,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper1
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper1
         : public BaseClass
         , public Ifc1
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase10.hxx b/cppuhelper/inc/cppuhelper/implbase10.hxx
index 10ddab5..1ea06d4 100644
--- a/cppuhelper/inc/cppuhelper/implbase10.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase10.hxx
@@ -82,7 +82,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC CPPUHELPER_DLLPUBLIC ImplHelper10
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper10
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10
     {
@@ -104,7 +104,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper10
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper10
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10
@@ -136,7 +136,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper10
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper10
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10
@@ -173,7 +173,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper10
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper10
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10
     {
@@ -241,7 +241,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper10
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper10
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase11.hxx b/cppuhelper/inc/cppuhelper/implbase11.hxx
index 26e76ff..bbcd675 100644
--- a/cppuhelper/inc/cppuhelper/implbase11.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase11.hxx
@@ -83,7 +83,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper11
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper11
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11
     {
@@ -105,7 +105,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper11
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper11
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11
@@ -137,7 +137,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper11
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper11
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11
@@ -174,7 +174,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper11
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper11
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11
     {
@@ -242,7 +242,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper11
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper11
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase12.hxx b/cppuhelper/inc/cppuhelper/implbase12.hxx
index 89cb6c4..4211abc 100644
--- a/cppuhelper/inc/cppuhelper/implbase12.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase12.hxx
@@ -84,7 +84,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11, class Ifc12 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper12
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper12
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11, public Ifc12
     {
@@ -106,7 +106,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11, class Ifc12 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper12
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper12
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11, public Ifc12
@@ -138,7 +138,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11, class Ifc12 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper12
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper12
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11, public Ifc12
@@ -175,7 +175,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11, class Ifc12 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper12
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper12
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11, public Ifc12
     {
@@ -243,7 +243,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9, class Ifc10, class Ifc11, class Ifc12 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper12
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper12
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9, public Ifc10, public Ifc11, public Ifc12
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase2.hxx b/cppuhelper/inc/cppuhelper/implbase2.hxx
index 23c64d1..39983d6 100644
--- a/cppuhelper/inc/cppuhelper/implbase2.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase2.hxx
@@ -73,7 +73,7 @@ namespace cppu
         queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper2
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper2
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2
     {
@@ -95,7 +95,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper2
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper2
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2
@@ -127,7 +127,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper2
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper2
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2
@@ -164,7 +164,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper2
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper2
         : public BaseClass
         , public Ifc1, public Ifc2
     {
@@ -232,7 +232,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper2
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper2
         : public BaseClass
         , public Ifc1, public Ifc2
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase3.hxx b/cppuhelper/inc/cppuhelper/implbase3.hxx
index a30fbc4..0ed901f 100644
--- a/cppuhelper/inc/cppuhelper/implbase3.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase3.hxx
@@ -74,7 +74,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper3
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper3
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3
     {
@@ -96,7 +96,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper3
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper3
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3
@@ -128,7 +128,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper3
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper3
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3
@@ -166,7 +166,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper3
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper3
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3
     {
@@ -234,7 +234,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper3
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper3
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase4.hxx b/cppuhelper/inc/cppuhelper/implbase4.hxx
index ca99395..cbb33be 100644
--- a/cppuhelper/inc/cppuhelper/implbase4.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase4.hxx
@@ -76,7 +76,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper4
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper4
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4
     {
@@ -98,7 +98,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper4
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper4
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4
@@ -130,7 +130,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper4
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper4
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4
@@ -167,7 +167,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper4
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper4
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4
     {
@@ -235,7 +235,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper4
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper4
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase5.hxx b/cppuhelper/inc/cppuhelper/implbase5.hxx
index 1ffe098..86918f5 100644
--- a/cppuhelper/inc/cppuhelper/implbase5.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase5.hxx
@@ -77,7 +77,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper5
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper5
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5
     {
@@ -99,7 +99,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper5
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper5
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5
@@ -131,7 +131,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper5
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper5
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5
@@ -168,7 +168,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper5
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper5
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5
     {
@@ -236,7 +236,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper5
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper5
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase6.hxx b/cppuhelper/inc/cppuhelper/implbase6.hxx
index 37f650f..3e8f5ef 100644
--- a/cppuhelper/inc/cppuhelper/implbase6.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase6.hxx
@@ -78,7 +78,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper6
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper6
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6
     {
@@ -100,7 +100,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper6
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper6
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6
@@ -132,7 +132,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper6
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper6
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6
@@ -169,7 +169,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper6
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper6
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6
     {
@@ -237,7 +237,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper6
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper6
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase7.hxx b/cppuhelper/inc/cppuhelper/implbase7.hxx
index 6f73685..b347127 100644
--- a/cppuhelper/inc/cppuhelper/implbase7.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase7.hxx
@@ -79,7 +79,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper7
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper7
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7
     {
@@ -101,7 +101,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper7
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper7
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7
@@ -133,7 +133,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper7
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper7
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7
@@ -170,7 +170,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper7
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper7
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7
     {
@@ -238,7 +238,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper7
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper7
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase8.hxx b/cppuhelper/inc/cppuhelper/implbase8.hxx
index f9394c6..8c0aa4a 100644
--- a/cppuhelper/inc/cppuhelper/implbase8.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase8.hxx
@@ -80,7 +80,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper8
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper8
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8
     {
@@ -102,7 +102,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper8
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper8
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8
@@ -134,7 +134,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper8
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper8
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8
@@ -171,7 +171,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper8
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper8
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8
     {
@@ -239,7 +239,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper8
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper8
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase9.hxx b/cppuhelper/inc/cppuhelper/implbase9.hxx
index a506093..cf4f5bb 100644
--- a/cppuhelper/inc/cppuhelper/implbase9.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase9.hxx
@@ -81,7 +81,7 @@ namespace cppu
         release() and delegates incoming queryInterface() calls to this base class.
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper9
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper9
         : public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9
     {
@@ -103,7 +103,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper9
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper9
         : public OWeakObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9
@@ -135,7 +135,7 @@ namespace cppu
         Your sub class defines method implementations for these interface(s).
     */
     template< class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper9
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper9
         : public OWeakAggObject
         , public com::sun::star::lang::XTypeProvider
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9
@@ -172,7 +172,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper9
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper9
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9
     {
@@ -240,7 +240,7 @@ namespace cppu
         template argument(s). Your sub class defines method implementations for these interface(s).
     */
     template< class BaseClass, class Ifc1, class Ifc2, class Ifc3, class Ifc4, class Ifc5, class Ifc6, class Ifc7, class Ifc8, class Ifc9 >
-    class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper9
+    class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper9
         : public BaseClass
         , public Ifc1, public Ifc2, public Ifc3, public Ifc4, public Ifc5, public Ifc6, public Ifc7, public Ifc8, public Ifc9
     {
diff --git a/cppuhelper/inc/cppuhelper/implbase_ex_post.hxx b/cppuhelper/inc/cppuhelper/implbase_ex_post.hxx
index 698a710..aca4ce8 100644
--- a/cppuhelper/inc/cppuhelper/implbase_ex_post.hxx
+++ b/cppuhelper/inc/cppuhelper/implbase_ex_post.hxx
@@ -52,7 +52,7 @@ struct class_data##N \
     type_entry m_typeEntries[ N + 1 ]; \
 }; \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplHelper##N \
     : public ::com::sun::star::lang::XTypeProvider \
     , __PUBLIC_IFC##N \
 { \
@@ -69,7 +69,7 @@ template< __CLASS_IFC##N > \
 class_data##N ImplHelper##N< __IFC##N >::s_cd = \
 __DEF_CLASS_DATA_INIT_EX( N, (ImplHelper##N< __IFC##N > *) ); \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakImplHelper##N \
     : public OWeakObject \
     , public ::com::sun::star::lang::XTypeProvider \
     , __PUBLIC_IFC##N \
@@ -91,7 +91,7 @@ template< __CLASS_IFC##N > \
 class_data##N WeakImplHelper##N< __IFC##N >::s_cd = \
 __DEF_CLASS_DATA_INIT_EX( N, (WeakImplHelper##N< __IFC##N > *) ); \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggImplHelper##N \
     : public OWeakAggObject \
     , public ::com::sun::star::lang::XTypeProvider \
     , __PUBLIC_IFC##N \
@@ -115,7 +115,7 @@ template< __CLASS_IFC##N > \
 class_data##N WeakAggImplHelper##N< __IFC##N >::s_cd = \
 __DEF_CLASS_DATA_INIT_EX( N, (WeakAggImplHelper##N< __IFC##N > *) ); \
 template< class BaseClass, __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC ImplInheritanceHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE ImplInheritanceHelper##N \
     : public BaseClass \
     , __PUBLIC_IFC##N \
 { \
@@ -141,7 +141,7 @@ template< class BaseClass, __CLASS_IFC##N > \
 class_data##N ImplInheritanceHelper##N< BaseClass, __IFC##N >::s_cd = \
 __DEF_CLASS_DATA_INIT_EX( N, (ImplInheritanceHelper##N< BaseClass, __IFC##N > *) ); \
 template< class BaseClass, __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC AggImplInheritanceHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE AggImplInheritanceHelper##N \
     : public BaseClass \
     , __PUBLIC_IFC##N \
 { \
@@ -174,7 +174,7 @@ __DEF_CLASS_DATA_INIT_EX( N, (AggImplInheritanceHelper##N< BaseClass, __IFC##N >
 namespace cppu \
 { \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakComponentImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakComponentImplHelper##N \
     : public WeakComponentImplHelperBase \
     , public ::com::sun::star::lang::XTypeProvider \
     , __PUBLIC_IFC##N \
@@ -199,7 +199,7 @@ template< __CLASS_IFC##N > \
 class_data##N WeakComponentImplHelper##N< __IFC##N >::s_cd = \
 __DEF_CLASS_DATA_INIT_EX( N, (WeakComponentImplHelper##N< __IFC##N > *) ); \
 template< __CLASS_IFC##N > \
-class SAL_NO_VTABLE CPPUHELPER_DLLPUBLIC WeakAggComponentImplHelper##N \
+class SAL_NO_VTABLE SAL_DLLPUBLIC_TEMPLATE WeakAggComponentImplHelper##N \
     : public WeakAggComponentImplHelperBase \
     , public ::com::sun::star::lang::XTypeProvider \
     , __PUBLIC_IFC##N \
diff --git a/sal/inc/sal/types.h b/sal/inc/sal/types.h
index 2894fff..7575be4 100644
--- a/sal/inc/sal/types.h
+++ b/sal/inc/sal/types.h
@@ -255,6 +255,7 @@ typedef void *                   sal_Handle;
 #   define SAL_DLLPUBLIC_IMPORT
 #endif // defined(_MSC_VER)
 #   define SAL_DLLPRIVATE
+#   define SAL_DLLPUBLIC_TEMPLATE
 #if defined(_MSC_VER)
 #   define SAL_CALL         __cdecl
 #   define SAL_CALL_ELLIPSE __cdecl
@@ -267,18 +268,22 @@ typedef void *                   sal_Handle;
 #     define SAL_DLLPUBLIC_EXPORT  __global
 #     define SAL_DLLPUBLIC_IMPORT
 #     define SAL_DLLPRIVATE        __hidden
+#     define SAL_DLLPUBLIC_TEMPLATE
 #   elif defined(__SUNPRO_C ) && (__SUNPRO_C  >= 0x550)
 #     define SAL_DLLPUBLIC_EXPORT  __global
 #     define SAL_DLLPUBLIC_IMPORT
 #     define SAL_DLLPRIVATE        __hidden
+#     define SAL_DLLPUBLIC_TEMPLATE
 #   elif defined(__GNUC__) && defined(HAVE_GCC_VISIBILITY_FEATURE)
 #     define SAL_DLLPUBLIC_EXPORT  __attribute__ ((visibility("default")))
 #     define SAL_DLLPUBLIC_IMPORT  __attribute__ ((visibility("default")))
 #     define SAL_DLLPRIVATE        __attribute__ ((visibility("hidden")))
+#     define SAL_DLLPUBLIC_TEMPLATE __attribute__ ((visibility("default")))
 #   else
 #     define SAL_DLLPUBLIC_EXPORT
 #     define SAL_DLLPUBLIC_IMPORT
 #     define SAL_DLLPRIVATE
+#     define SAL_DLLPUBLIC_TEMPLATE
 #   endif
 #   define SAL_CALL
 #   define SAL_CALL_ELLIPSE
diff --git a/vbahelper/inc/vbahelper/vbahelperinterface.hxx b/vbahelper/inc/vbahelper/vbahelperinterface.hxx
index 68217a6..02d9f34 100644
--- a/vbahelper/inc/vbahelper/vbahelperinterface.hxx
+++ b/vbahelper/inc/vbahelper/vbahelperinterface.hxx
@@ -64,7 +64,7 @@
 const ::rtl::OUString sHelperServiceName( RTL_CONSTASCII_USTRINGPARAM( "ooo.vba.HelperServiceBase" ) );
 
 template< typename Ifc1 >
-class VBAHELPER_DLLPUBLIC InheritedHelperInterfaceImpl : public Ifc1
+class SAL_DLLPUBLIC_TEMPLATE InheritedHelperInterfaceImpl : public Ifc1
 {
 protected:
     css::uno::WeakReference< ov::XHelperInterface > mxParent;
@@ -110,7 +110,7 @@ public:
  };
 
 template< typename Ifc1 >
-class VBAHELPER_DLLPUBLIC InheritedHelperInterfaceImpl1 : public InheritedHelperInterfaceImpl< ::cppu::WeakImplHelper1< Ifc1 > >
+class SAL_DLLPUBLIC_TEMPLATE InheritedHelperInterfaceImpl1 : public InheritedHelperInterfaceImpl< ::cppu::WeakImplHelper1< Ifc1 > >
 {
     typedef InheritedHelperInterfaceImpl< ::cppu::WeakImplHelper1< Ifc1 > > Base;
 public:
@@ -120,7 +120,7 @@ public:
 };
 
 template< typename Ifc1, typename Ifc2 >
-class VBAHELPER_DLLPUBLIC InheritedHelperInterfaceImpl2 : public InheritedHelperInterfaceImpl< ::cppu::WeakImplHelper2< Ifc1, Ifc2 > >
+class SAL_DLLPUBLIC_TEMPLATE InheritedHelperInterfaceImpl2 : public InheritedHelperInterfaceImpl< ::cppu::WeakImplHelper2< Ifc1, Ifc2 > >
 {
     typedef InheritedHelperInterfaceImpl< ::cppu::WeakImplHelper2< Ifc1, Ifc2 > > Base;
 public:
@@ -130,7 +130,7 @@ public:
 };
 
 template< typename Ifc1, typename Ifc2, typename Ifc3 >
-class VBAHELPER_DLLPUBLIC InheritedHelperInterfaceImpl3 : public InheritedHelperInterfaceImpl< ::cppu::WeakImplHelper3< Ifc1, Ifc2, Ifc3 > >
+class SAL_DLLPUBLIC_TEMPLATE InheritedHelperInterfaceImpl3 : public InheritedHelperInterfaceImpl< ::cppu::WeakImplHelper3< Ifc1, Ifc2, Ifc3 > >
 {
     typedef InheritedHelperInterfaceImpl< ::cppu::WeakImplHelper3< Ifc1, Ifc2, Ifc3 > > Base;
 public:


More information about the Libreoffice-commits mailing list