]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Let the transformer handle recursive transformations
authorLuca Bruno <lucabru@src.gnome.org>
Tue, 3 Jan 2012 12:09:20 +0000 (13:09 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Mon, 11 Mar 2019 12:49:26 +0000 (13:49 +0100)
codegen/valagvarianttransformer.vala

index 7d9b8a6ab5b04c4f1ff305c62226acfe86772e20..cc602f406eb0d7c3da11a1fc03ab0fc9806128ff 100644 (file)
@@ -227,7 +227,7 @@ public class Vala.GVariantTransformer : CodeTransformer {
                        for (int i=0; i < dim; i++) {
                                element_expr.append_index (expression (indices[i]));
                        }
-                       element_variant = serialize_expression (copy_type (array_type.element_type, false), element_expr);
+                       element_variant = element_expr;
                }
 
                var builder_add = (MethodCall) expression (builder+".add_value ()");
@@ -264,10 +264,7 @@ public class Vala.GVariantTransformer : CodeTransformer {
                                        continue;
                                }
 
-                               var serialized_field = serialize_expression (copy_type (f.variable_type, false), expression (@"st.$(f.name)"));
-                               MethodCall call = (MethodCall) expression (@"$builder.add_value ()");
-                               call.add_argument (serialized_field);
-                               b.add_expression (call);
+                               b.add_expression (expression (@"$builder.add_value (st.$(f.name))"));
                        }
                        b.add_return (expression (@"$builder.end ()"));