summaryrefslogtreecommitdiff
path: root/tests/chainup/struct-no-gtype-base.vala
blob: c0e39b8940a473bc0dd6e6683b27064f1b46c9a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
[CCode (has_type_id = false)]
struct Foo {
	public int a;
	public int b;

	public int sum () {
		return this.a + this.b;
	}
}

[CCode (has_type_id = false)]
struct Bar : Foo {
	public int mul () {
		return this.a * this.b;
	}

	public int mul2 () {
		return base.a * base.b;
	}
}

void main () {
	Bar bar = { 23, 42 };
	assert (bar.sum () == 65);
	assert (bar.mul () == 966);
	assert (bar.mul2 () == 966);
}