]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Revert "codegen: Create only one vala-array helper function per array-type"
authorJürg Billeter <j@bitron.ch>
Tue, 9 Feb 2016 21:10:32 +0000 (22:10 +0100)
committerJürg Billeter <j@bitron.ch>
Tue, 9 Feb 2016 21:10:46 +0000 (22:10 +0100)
This reverts commit fba08583d940af80a0d6b7045294de00c568d6a4.

https://bugzilla.gnome.org/show_bug.cgi?id=761736

codegen/valaccodearraymodule.vala

index 3b8fc6a194fb5f9201fff2cf91c70b929331a061..892246487892df5704619b269f65deb729c5cb66 100644 (file)
@@ -24,6 +24,9 @@
 
 
 public class Vala.CCodeArrayModule : CCodeMethodCallModule {
+       int next_array_dup_id = 0;
+       int next_array_add_id = 0;
+
        void append_initializer_list (CCodeExpression name_cnode, InitializerList initializer_list, int rank, ref int i) {
                foreach (Expression e in initializer_list.get_initializers ()) {
                        if (rank > 1) {
@@ -459,7 +462,7 @@ public class Vala.CCodeArrayModule : CCodeMethodCallModule {
        }
 
        string generate_array_dup_wrapper (ArrayType array_type) {
-               string dup_func = "_vala_%s_array_dup".printf (get_ccode_lower_case_name (array_type.element_type));
+               string dup_func = "_vala_array_dup%d".printf (++next_array_dup_id);
 
                if (!add_wrapper (dup_func)) {
                        // wrapper already defined
@@ -532,7 +535,7 @@ public class Vala.CCodeArrayModule : CCodeMethodCallModule {
        }
 
        string generate_array_copy_wrapper (ArrayType array_type) {
-               string dup_func = "_vala_%s_array_copy".printf (get_ccode_lower_case_name (array_type.element_type));
+               string dup_func = "_vala_array_copy%d".printf (++next_array_dup_id);
 
                if (!add_wrapper (dup_func)) {
                        // wrapper already defined
@@ -586,7 +589,7 @@ public class Vala.CCodeArrayModule : CCodeMethodCallModule {
        }
 
        string generate_array_add_wrapper (ArrayType array_type) {
-               string add_func = "_vala_%s_array_add".printf (get_ccode_lower_case_name (array_type.element_type));
+               string add_func = "_vala_array_add%d".printf (++next_array_add_id);
 
                if (!add_wrapper (add_func)) {
                        // wrapper already defined