]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
codegen: Don't add data parameter for "instance_init" of compact classes 28984f31f4e18aedb85d8bfa4f72552fccf83a1a
authorRico Tzschichholz <ricotz@ubuntu.com>
Sun, 13 Jan 2019 09:08:30 +0000 (10:08 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Sun, 13 Jan 2019 09:10:16 +0000 (10:10 +0100)
See b5260359255637d77ebc367d26c853ac6459f67d

codegen/valaccodemethodcallmodule.vala
codegen/valaccodemethodmodule.vala
codegen/valagtypemodule.vala

index ade38ab83b91a1cf9657d14600100fcf3912f3e5..3cca7771b02d09323bd3901ce191f7ecac89ed72 100644 (file)
@@ -880,7 +880,9 @@ public class Vala.CCodeMethodCallModule : CCodeAssignmentModule {
                if (m is CreationMethod && m.parent_symbol is Class && ((current_class.is_compact && current_class.base_class != null) || current_class.base_class == gsource_type)) {
                        var cinitcall = new CCodeFunctionCall (new CCodeIdentifier ("%s_instance_init".printf (get_ccode_lower_case_name (current_class, null))));
                        cinitcall.add_argument (get_this_cexpression ());
-                       cinitcall.add_argument (new CCodeConstant ("NULL"));
+                       if (!current_class.is_compact) {
+                               cinitcall.add_argument (new CCodeConstant ("NULL"));
+                       }
                        ccode.add_expression (cinitcall);
                }
        }
index 4faf055c12c8bd1ef1d121d61390eef5df243fb1..b247216c510047acc6442bfb97daf945c2a076f1 100644 (file)
@@ -661,7 +661,9 @@ public abstract class Vala.CCodeMethodModule : CCodeStructModule {
                                                if (cl.base_class == null) {
                                                        var cinitcall = new CCodeFunctionCall (new CCodeIdentifier ("%s_instance_init".printf (get_ccode_lower_case_name (cl, null))));
                                                        cinitcall.add_argument (get_this_cexpression ());
-                                                       cinitcall.add_argument (new CCodeConstant ("NULL"));
+                                                       if (!cl.is_compact) {
+                                                               cinitcall.add_argument (new CCodeConstant ("NULL"));
+                                                       }
                                                        ccode.add_expression (cinitcall);
                                                }
                                        } else {
index bf5ab237d2c710098dcadc6190e1ad09d09bee65..9bb8a305249d70ccb38e060ec63649e77cd0bbd7 100644 (file)
@@ -1637,7 +1637,9 @@ public class Vala.GTypeModule : GErrorModule {
 
                var func = new CCodeFunction ("%s_instance_init".printf (get_ccode_lower_case_name (cl, null)));
                func.add_parameter (new CCodeParameter ("self", "%s *".printf (get_ccode_name (cl))));
-               func.add_parameter (new CCodeParameter ("klass", "gpointer"));
+               if (!cl.is_compact) {
+                       func.add_parameter (new CCodeParameter ("klass", "gpointer"));
+               }
                func.modifiers = CCodeModifiers.STATIC;
 
                push_function (func);