https://bugzilla.gnome.org/show_bug.cgi?id=540483
methods/prepostconditions.vala \
methods/same-name.vala \
methods/symbolresolution.vala \
+ methods/bug540483.vala \
methods/bug595538.vala \
methods/bug596726.vala \
methods/bug597426.vala \
--- /dev/null
+interface IFoo {
+ [CCode (instance_pos = -1)]
+ public abstract void foo (int i);
+}
+
+class Foo : IFoo {
+ public virtual void foo (int i) {
+ assert (i == 23);
+ }
+}
+
+class Bar : Foo {
+ public override void foo (int i) {
+ assert (i == 42);
+ }
+}
+
+abstract class Baz {
+ [CCode (instance_pos = -1)]
+ public abstract void foo (int i);
+}
+
+class Manam : Baz {
+ public override void foo (int i) {
+ assert (i == 4711);
+ }
+}
+
+void main () {
+ var foo = new Foo ();
+ foo.foo (23);
+
+ var bar = new Bar ();
+ bar.foo (42);
+
+ var manam = new Manam ();
+ manam.foo (4711);
+}
}
_base_method = base_method;
+ copy_attribute_double (base_method, "CCode", "instance_pos");
return;
}
}
}
_base_interface_method = base_method;
+ copy_attribute_double (base_method, "CCode", "instance_pos");
return;
}
}