# define XS(name) EXPORT_C void name(pTHX_ CV* cv)
#endif
#ifndef XS
-# if defined(HASATTRIBUTE)
-# define XS(name) void name(pTHX_ CV* cv __attribute__((unused)))
+# ifdef HASATTRIBUTE_UNUSED
+# define XS(name) void name(pTHX_ CV* cv __attribute__unused__)
# else
# define XS(name) void name(pTHX_ CV* cv)
# endif
#ifdef XS_VERSION
# define XS_VERSION_BOOTCHECK \
STMT_START { \
- SV *_sv; STRLEN n_a; \
- const char *vn = Nullch, *module = SvPV(ST(0),n_a); \
+ SV *_sv; \
+ const char *vn = Nullch, *module = SvPV_nolen_const(ST(0)); \
if (items >= 2) /* version supplied as bootstrap arg */ \
_sv = ST(1); \
else { \