codegen: Fix floating reference regression with Variants
[vala-gnome.git] / tests / asynchronous / bug710103.vala
blobb6395e351193cd702caefb93697f56eab338a490
1 void iostream () {
2 IOStream? is0 = null;
3 IOStream? is1 = null;
4 is0.splice_async.begin (is1, IOStreamSpliceFlags.NONE, Priority.DEFAULT, null, (obj, res) => {
5 try {
6 is0.splice_async.end (res);
7 } catch (Error e) {
9 });
12 class Foo : Object {
13 public int manam;
15 [CCode (finish_instance = false)]
16 public async void bar () {
17 manam = 23;
20 [CCode (finish_instance = false)]
21 public async Foo.@async () {
22 manam = 42;
25 public static async Foo create_foo_async () {
26 var foo = yield new Foo.@async ();
27 return foo;
31 void main () {
32 var loop = new MainLoop ();
33 Foo.create_foo_async.begin ((obj,res) => {
34 var foo = Foo.create_foo_async.end (res);
35 assert (foo.manam == 42);
36 foo.bar.begin ((obj, res) => {
37 foo.bar.end (res);
38 assert (foo.manam == 23);
39 loop.quit ();
40 });
41 });
42 loop.run ();