--- extern.h
+++ extern.h
@@ -119,12 +119,16 @@ enum	attrval {
 	ATTRVAL__MAX
 };
 
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 int isattrkey(enum nodeid node, enum attrkey key);
 int isattrval(enum attrkey key, enum attrval val);
 int isparent(enum nodeid node, enum nodeid parent);
 
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 
 #endif
