/* structs_bug609642.c generated by valac, the Vala compiler * generated from structs_bug609642.vala, do not modify */ #include #include #include #include #if !defined(VALA_EXTERN) #if defined(_MSC_VER) #define VALA_EXTERN __declspec(dllexport) extern #elif __GNUC__ >= 4 #define VALA_EXTERN __attribute__((visibility("default"))) extern #else #define VALA_EXTERN extern #endif #endif #define _g_free0(var) (var = (g_free (var), NULL)) #define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); #define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; } #define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; } #define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); VALA_EXTERN void foo (GValue* result); static void _vala_main (void); void foo (GValue* result) { GValue _tmp0_ = {0}; g_value_init (&_tmp0_, G_TYPE_STRING); g_value_set_string (&_tmp0_, "foo"); *result = _tmp0_; return; } static void _vala_main (void) { gchar* bar = NULL; GValue _tmp0_ = {0}; GValue _tmp1_; gchar* _tmp2_; gchar* _tmp3_; foo (&_tmp0_); _tmp1_ = _tmp0_; _tmp2_ = g_strdup (g_value_get_string (&_tmp0_)); _tmp3_ = _tmp2_; G_IS_VALUE (&_tmp1_) ? (g_value_unset (&_tmp1_), NULL) : NULL; bar = _tmp3_; _vala_assert (g_strcmp0 (bar, "foo") == 0, "bar == \"foo\""); _g_free0 (bar); } int main (int argc, char ** argv) { _vala_main (); return 0; }