memcmp(kw_ptr, p, kw_len) == 0
) {
-#define FETCH_HINTK_INTO(NAME, PTR, LEN, X) do { \
+#define FETCH_HINTK_INTO(NAME, PTR, LEN, X) STMT_START { \
const char *fk_ptr_; \
STRLEN fk_len_; \
SV *fk_sv_; \
if (!((X) = hv_fetch(hints, fk_ptr_, fk_len_, 0))) { \
croak("%s: internal error: $^H{'%.*s'} not set", MY_PKG, (int)fk_len_, fk_ptr_); \
} \
-} while (0)
+} STMT_END
FETCH_HINTK_INTO(NAME_, kw_ptr, kw_len, psv);
spec->name = SvIV(*psv);