/* control_flow_switch.c generated by valac, the Vala compiler * generated from control_flow_switch.vala, do not modify */ #include #include #include #if !defined(VALA_EXTERN) #if defined(_WIN32) || defined(__CYGWIN__) #define VALA_EXTERN __declspec(dllexport) extern #elif __GNUC__ >= 4 #define VALA_EXTERN __attribute__((visibility("default"))) extern #else #define VALA_EXTERN extern #endif #endif #define MAMAN_TYPE_BAR (maman_bar_get_type ()) #define MAMAN_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MAMAN_TYPE_BAR, MamanBar)) #define MAMAN_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MAMAN_TYPE_BAR, MamanBarClass)) #define MAMAN_IS_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MAMAN_TYPE_BAR)) #define MAMAN_IS_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MAMAN_TYPE_BAR)) #define MAMAN_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MAMAN_TYPE_BAR, MamanBarClass)) typedef struct _MamanBar MamanBar; typedef struct _MamanBarClass MamanBarClass; typedef struct _MamanBarPrivate MamanBarPrivate; enum { MAMAN_BAR_0_PROPERTY, MAMAN_BAR_NUM_PROPERTIES }; static GParamSpec* maman_bar_properties[MAMAN_BAR_NUM_PROPERTIES]; #define MAMAN_TYPE_FOO (maman_foo_get_type ()) #define MAMAN_FOO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MAMAN_TYPE_FOO, MamanFoo)) #define MAMAN_FOO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MAMAN_TYPE_FOO, MamanFooClass)) #define MAMAN_IS_FOO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MAMAN_TYPE_FOO)) #define MAMAN_IS_FOO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MAMAN_TYPE_FOO)) #define MAMAN_FOO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MAMAN_TYPE_FOO, MamanFooClass)) typedef struct _MamanFoo MamanFoo; typedef struct _MamanFooClass MamanFooClass; #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) typedef struct _MamanFooPrivate MamanFooPrivate; enum { MAMAN_FOO_0_PROPERTY, MAMAN_FOO_NUM_PROPERTIES }; static GParamSpec* maman_foo_properties[MAMAN_FOO_NUM_PROPERTIES]; struct _MamanBar { GObject parent_instance; MamanBarPrivate * priv; }; struct _MamanBarClass { GObjectClass parent_class; }; struct _MamanFoo { GObject parent_instance; MamanFooPrivate * priv; }; struct _MamanFooClass { GObjectClass parent_class; }; struct _MamanFooPrivate { gint counter; }; static gpointer maman_bar_parent_class = NULL; static gint MamanFoo_private_offset; static gpointer maman_foo_parent_class = NULL; VALA_EXTERN GType maman_bar_get_type (void) G_GNUC_CONST ; G_DEFINE_AUTOPTR_CLEANUP_FUNC (MamanBar, g_object_unref) static gboolean maman_bar_test_switch_control_flow_graph (void); static gint maman_bar_main (void); VALA_EXTERN GType maman_foo_get_type (void) G_GNUC_CONST ; G_DEFINE_AUTOPTR_CLEANUP_FUNC (MamanFoo, g_object_unref) VALA_EXTERN MamanFoo* maman_foo_new (void); VALA_EXTERN MamanFoo* maman_foo_construct (GType object_type); VALA_EXTERN void maman_foo_run (MamanFoo* self); VALA_EXTERN MamanBar* maman_bar_new (void); VALA_EXTERN MamanBar* maman_bar_construct (GType object_type); static GType maman_bar_get_type_once (void); VALA_EXTERN gint maman_foo_inc (MamanFoo* self); static void maman_foo_finalize (GObject * obj); static GType maman_foo_get_type_once (void); static gboolean maman_bar_test_switch_control_flow_graph (void) { gint a = 0; gboolean result; a = 0; switch (a) { case 1: { result = FALSE; return result; } default: { result = TRUE; return result; } } } static gint maman_bar_main (void) { FILE* _tmp0_; gint i = 0; FILE* _tmp4_; FILE* _tmp5_; MamanFoo* foo = NULL; MamanFoo* _tmp6_; FILE* _tmp7_; gint result; _tmp0_ = stdout; fprintf (_tmp0_, "For Test: 1"); { gboolean _tmp1_ = FALSE; i = 2; _tmp1_ = TRUE; while (TRUE) { FILE* _tmp3_; if (!_tmp1_) { gint _tmp2_; _tmp2_ = i; i = _tmp2_ + 1; } _tmp1_ = FALSE; if (!(i < 7)) { break; } _tmp3_ = stdout; fprintf (_tmp3_, " %d", i); } } _tmp4_ = stdout; fprintf (_tmp4_, " 7\n"); _tmp5_ = stdout; fprintf (_tmp5_, "Switch statement: 1"); _tmp6_ = maman_foo_new (); foo = _tmp6_; maman_foo_run (foo); _tmp7_ = stdout; fprintf (_tmp7_, " 7\n"); maman_bar_test_switch_control_flow_graph (); result = 0; _g_object_unref0 (foo); return result; } int main (int argc, char ** argv) { return maman_bar_main (); } MamanBar* maman_bar_construct (GType object_type) { MamanBar * self = NULL; self = (MamanBar*) g_object_new (object_type, NULL); return self; } MamanBar* maman_bar_new (void) { return maman_bar_construct (MAMAN_TYPE_BAR); } static void maman_bar_class_init (MamanBarClass * klass, gpointer klass_data) { maman_bar_parent_class = g_type_class_peek_parent (klass); } static void maman_bar_instance_init (MamanBar * self, gpointer klass) { } static GType maman_bar_get_type_once (void) { static const GTypeInfo g_define_type_info = { sizeof (MamanBarClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) maman_bar_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (MamanBar), 0, (GInstanceInitFunc) maman_bar_instance_init, NULL }; GType maman_bar_type_id; maman_bar_type_id = g_type_register_static (G_TYPE_OBJECT, "MamanBar", &g_define_type_info, 0); return maman_bar_type_id; } GType maman_bar_get_type (void) { static volatile gsize maman_bar_type_id__once = 0; if (g_once_init_enter (&maman_bar_type_id__once)) { GType maman_bar_type_id; maman_bar_type_id = maman_bar_get_type_once (); g_once_init_leave (&maman_bar_type_id__once, maman_bar_type_id); } return maman_bar_type_id__once; } static inline gpointer maman_foo_get_instance_private (MamanFoo* self) { return G_STRUCT_MEMBER_P (self, MamanFoo_private_offset); } void maman_foo_run (MamanFoo* self) { FILE* _tmp0_; FILE* _tmp9_; g_return_if_fail (MAMAN_IS_FOO (self)); _tmp0_ = stdout; fprintf (_tmp0_, " 2"); switch (23) { case 23: { FILE* _tmp1_; _tmp1_ = stdout; fprintf (_tmp1_, " 3"); break; } default: { FILE* _tmp2_; _tmp2_ = stdout; fprintf (_tmp2_, " BAD"); break; } } switch (maman_foo_inc (self)) { case 0: { FILE* _tmp3_; _tmp3_ = stdout; fprintf (_tmp3_, " 4"); break; } case 1: { FILE* _tmp4_; _tmp4_ = stdout; fprintf (_tmp4_, " BAD"); break; } default: { FILE* _tmp5_; _tmp5_ = stdout; fprintf (_tmp5_, " BAD"); break; } } switch (42) { case 0: { FILE* _tmp6_; _tmp6_ = stdout; fprintf (_tmp6_, " BAD"); break; } default: { FILE* _tmp7_; _tmp7_ = stdout; fprintf (_tmp7_, " 5"); break; } case 1: { FILE* _tmp8_; _tmp8_ = stdout; fprintf (_tmp8_, " BAD"); break; } } _tmp9_ = stdout; fprintf (_tmp9_, " 6"); } gint maman_foo_inc (MamanFoo* self) { gint _tmp0_; gint result; g_return_val_if_fail (MAMAN_IS_FOO (self), 0); _tmp0_ = self->priv->counter; self->priv->counter = _tmp0_ + 1; result = _tmp0_; return result; } MamanFoo* maman_foo_construct (GType object_type) { MamanFoo * self = NULL; self = (MamanFoo*) g_object_new (object_type, NULL); return self; } MamanFoo* maman_foo_new (void) { return maman_foo_construct (MAMAN_TYPE_FOO); } static void maman_foo_class_init (MamanFooClass * klass, gpointer klass_data) { maman_foo_parent_class = g_type_class_peek_parent (klass); g_type_class_adjust_private_offset (klass, &MamanFoo_private_offset); G_OBJECT_CLASS (klass)->finalize = maman_foo_finalize; } static void maman_foo_instance_init (MamanFoo * self, gpointer klass) { self->priv = maman_foo_get_instance_private (self); self->priv->counter = 0; } static void maman_foo_finalize (GObject * obj) { MamanFoo * self; self = G_TYPE_CHECK_INSTANCE_CAST (obj, MAMAN_TYPE_FOO, MamanFoo); G_OBJECT_CLASS (maman_foo_parent_class)->finalize (obj); } static GType maman_foo_get_type_once (void) { static const GTypeInfo g_define_type_info = { sizeof (MamanFooClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) maman_foo_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (MamanFoo), 0, (GInstanceInitFunc) maman_foo_instance_init, NULL }; GType maman_foo_type_id; maman_foo_type_id = g_type_register_static (G_TYPE_OBJECT, "MamanFoo", &g_define_type_info, 0); MamanFoo_private_offset = g_type_add_instance_private (maman_foo_type_id, sizeof (MamanFooPrivate)); return maman_foo_type_id; } GType maman_foo_get_type (void) { static volatile gsize maman_foo_type_id__once = 0; if (g_once_init_enter (&maman_foo_type_id__once)) { GType maman_foo_type_id; maman_foo_type_id = maman_foo_get_type_once (); g_once_init_leave (&maman_foo_type_id__once, maman_foo_type_id); } return maman_foo_type_id__once; }