This appears to be an 8 year old bug.
GstXmlNodePtr gst_object_save_thyself (GstObject *object, GstXmlNodePtr parent);
void gst_object_restore_thyself (GstObject *object, GstXmlNodePtr self);
#else
-#if defined _GNUC_ && _GNUC_ >= 3
+#if defined __GNUC__ && __GNUC__ >= 3
#pragma GCC poison gst_object_save_thyself
#pragma GCC poison gst_object_restore_thyself
#endif
const gchar * name,
GstXmlNodePtr self);
#else
-#if defined _GNUC_ && _GNUC_ >= 3
+#if defined __GNUC__ && __GNUC__ >= 3
#pragma GCC poison gst_class_signal_emit_by_name
#endif
#endif
#else /* GST_DISABLE_TRACE */
-#if defined _GNUC_ && _GNUC_ >= 3
+#if defined __GNUC__ && __GNUC__ >= 3
#pragma GCC poison gst_trace_new
#pragma GCC poison gst_trace_destroy
#pragma GCC poison gst_trace_flush
#else /* GST_DISABLE_LOADSAVE */
-#if defined _GNUC_ && _GNUC_ >= 3
+#if defined __GNUC__ && __GNUC__ >= 3
#pragma GCC poison gst_xml_write
#pragma GCC poison gst_xml_new
#pragma GCC poison gst_xml_parse_doc