summaryrefslogtreecommitdiff
path: root/libobj/include
diff options
context:
space:
mode:
Diffstat (limited to 'libobj/include')
-rw-r--r--libobj/include/libobj/obj.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/libobj/include/libobj/obj.h b/libobj/include/libobj/obj.h
index d8a528a..7a9041e 100644
--- a/libobj/include/libobj/obj.h
+++ b/libobj/include/libobj/obj.h
@@ -49,7 +49,8 @@
const _lo_##_ARG_iface_name##_vtable *vtable; \
}; \
LM_FOREACH_TUPLE(_ARG_iface_name##_LO_IFACE, \
- _LO_IFACE_PROTO, _ARG_iface_name)
+ _LO_IFACE_PROTO, _ARG_iface_name) \
+ extern int LM_CAT2_(_HIDDEN_BOGUS_, __COUNTER__)
#define _LO_IFACE_VTABLE(_tuple_typ, ...) \
_LO_IFACE_VTABLE_##_tuple_typ(__VA_ARGS__)
#define _LO_IFACE_VTABLE_lo_nest(_ARG_child_iface_name) \
@@ -113,7 +114,8 @@
.self = self, \
.vtable = &_lo_##_ARG_impl_name##_##_ARG_iface_name##_vtable, \
}; \
- }
+ } \
+ extern int LM_CAT2_(_LO_FORCE_SEMICOLON_, __COUNTER__)
/**
* Use `LO_IMPLEMENTATION_C(iface_name, impl_type, impl_name[, static])` in a .c
@@ -135,7 +137,7 @@
_lo_##_ARG_impl_name##_##_ARG_iface_name##_vtable = { \
LM_FOREACH_TUPLE(_ARG_iface_name##_LO_IFACE, \
_LO_IMPL_VTABLE, _ARG_impl_name) \
- }; \
+ }
#define _LO_IMPL_PROTO(_ARG_impl_type, _ARG_impl_name, _ARG_quals, _tuple_typ, ...) \
_LO_IMPL_PROTO_##_tuple_typ(_ARG_impl_type, _ARG_impl_name, _ARG_quals, __VA_ARGS__)