]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
codegen: Fix method references in constant initializers
authorJürg Billeter <j@bitron.ch>
Mon, 11 Oct 2010 16:18:38 +0000 (18:18 +0200)
committerJürg Billeter <j@bitron.ch>
Mon, 11 Oct 2010 16:18:38 +0000 (18:18 +0200)
codegen/valaccodememberaccessmodule.vala

index 110341aacf0da6eb024205c483dcc337c6e9c480..adc5ef8a19afbdc1b146178a5d2e380f390b45c8 100644 (file)
@@ -101,7 +101,8 @@ public class Vala.CCodeMemberAccessModule : CCodeControlFlowModule {
                                        } else {
                                                set_delegate_target (expr, new CCodeIdentifier ("data"));
                                        }
-                               } else {
+                               } else if (expr.inner != null) {
+                                       // expr.inner is null in the special case of referencing the method in a constant initializer
                                        var delegate_target = (CCodeExpression) get_ccodenode (expr.inner);
                                        var delegate_type = expr.target_type as DelegateType;
                                        if ((expr.value_type.value_owned || (delegate_type != null && delegate_type.is_called_once)) && expr.inner.value_type.data_type != null && expr.inner.value_type.data_type.is_reference_counting ()) {