summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2012-03-01 18:00:32 +0100
committerStephan Bergmann <sbergman@redhat.com>2012-03-01 18:00:32 +0100
commitbd205223ec029a875c662474bb6d423d3cdd1994 (patch)
tree6531a292edb0d2a13103a4c55cbd10e7137b8a58 /tools
parent32781c2d268ed94eb46318a0398385baf31368c4 (diff)
New IMPL_LINK_NOARG to work around SAL_UNUSED_PARAMETER problem
...see ebe26f72e90337da2d14f3029de148904e3e30b6 "WaE: 'unused' attribute ignored when parsing type" for the problem.
Diffstat (limited to 'tools')
-rw-r--r--tools/inc/tools/link.hxx15
1 files changed, 9 insertions, 6 deletions
diff --git a/tools/inc/tools/link.hxx b/tools/inc/tools/link.hxx
index 974119355359..2b2af3d8048a 100644
--- a/tools/inc/tools/link.hxx
+++ b/tools/inc/tools/link.hxx
@@ -78,18 +78,21 @@ typedef long (*PSTUB)( void*, void* );
IMPL_STUB( Class, Method, ArgType ) \
long Class::Method( ArgType ArgName )
-#if defined GCC && defined NO_OPTIMIZE
-#define IMPL_LINK_INLINE_START( Class, Method, ArgType, ArgName ) \
- IMPL_LINK( Class, Method, ArgType, ArgName )
+#define IMPL_LINK_NOARG( Class, Method ) \
+ IMPL_STUB( Class, Method, void* ) \
+ long Class::Method( SAL_UNUSED_PARAMETER void* )
-#define IMPL_LINK_INLINE_END( Class, Method, ArgType, ArgName )
-#else
#define IMPL_LINK_INLINE_START( Class, Method, ArgType, ArgName ) \
inline long Class::Method( ArgType ArgName )
#define IMPL_LINK_INLINE_END( Class, Method, ArgType, ArgName ) \
IMPL_STUB( Class, Method, ArgType )
-#endif
+
+#define IMPL_LINK_NOARG_INLINE_START( Class, Method ) \
+ inline long Class::Method( SAL_UNUSED_PARAMETER void* )
+
+#define IMPL_LINK_NOARG_INLINE_END( Class, Method ) \
+ IMPL_STUB( Class, Method, void* )
#define IMPL_LINK_INLINE( Class, Method, ArgType, ArgName, Body ) \
long Class::Method( ArgType ArgName ) \