+2016-11-21 Bruno Haible <bruno@clisp.org>
+
+ snippet/c++defs: Simplify _GL_CXXALIAS_* macros.
+ * build-aux/snippet/c++defs.h [__cplusplus && GNULIB_NAMESPACE]
+ (_GL_CXXALIAS_RPL_1, _GL_CXXALIAS_RPL_CAST_1,
+ _GL_CXXALIAS_SYS, _GL_CXXALIAS_SYS_CAST, _GL_CXXALIAS_SYS_CAST2):
+ Inline and remove member function 'rpl ()' of the wrapper struct.
+
2016-11-20 Paul Eggert <eggert@cs.ucla.edu>
dfa: fix logic typo
static const struct _gl_ ## func ## _wrapper \
{ \
typedef rettype (*type) parameters; \
- inline type rpl () const { return ::rpl_func; } \
- inline operator type () const { return rpl (); } \
+ \
+ inline operator type () const \
+ { \
+ return ::rpl_func; \
+ } \
} func = {}; \
} \
_GL_EXTERN_C int _gl_cxxalias_dummy
static const struct _gl_ ## func ## _wrapper \
{ \
typedef rettype (*type) parameters; \
- inline type rpl () const \
- { return reinterpret_cast<type>(::rpl_func); } \
- inline operator type () const { return rpl (); } \
+ \
+ inline operator type () const \
+ { \
+ return reinterpret_cast<type>(::rpl_func); \
+ } \
} func = {}; \
} \
_GL_EXTERN_C int _gl_cxxalias_dummy
static const struct _gl_ ## func ## _wrapper \
{ \
typedef rettype (*type) parameters; \
- inline type rpl () const { return ::func; } \
- inline operator type () const { return rpl (); } \
+ \
+ inline operator type () const \
+ { \
+ return ::func; \
+ } \
} func = {}; \
- } \
+ } \
_GL_EXTERN_C int _gl_cxxalias_dummy
#else
# define _GL_CXXALIAS_SYS(func,rettype,parameters) \
static const struct _gl_ ## func ## _wrapper \
{ \
typedef rettype (*type) parameters; \
- inline type rpl () const \
- { return reinterpret_cast<type>(::func); } \
- inline operator type () const { return rpl (); }\
+ \
+ inline operator type () const \
+ { \
+ return reinterpret_cast<type>(::func); \
+ } \
} func = {}; \
} \
_GL_EXTERN_C int _gl_cxxalias_dummy
{ \
typedef rettype (*type) parameters; \
\
- inline type rpl () const \
- { return reinterpret_cast<type>((rettype2 (*) parameters2)(::func)); }\
- \
- inline operator type () const { return rpl (); } \
+ inline operator type () const \
+ { \
+ return reinterpret_cast<type>((rettype2 (*) parameters2)(::func)); \
+ } \
} func = {}; \
} \
_GL_EXTERN_C int _gl_cxxalias_dummy