File: bug590641.vala

package info (click to toggle)
vala 0.56.18-5
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 57,528 kB
  • sloc: ansic: 581,293; sh: 5,357; makefile: 3,980; xml: 3,161; yacc: 1,219; lex: 374; javascript: 23
file content (26 lines) | stat: -rw-r--r-- 437 bytes parent folder | download | duplicates (6)
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
const string[] FOO = { "foo", "bar" };

void foo (char** s) {
	assert (((string[]) s)[0] == "foo");
}

void main () {
	uint i = 42;

	int *p0 = (int*) &i;
	uint u0 = (uint) *p0;
	assert (u0 == i);

	int *p1 = (int*) (&i);
	uint u1 = (uint) (*p1);
	assert (u1 == i);

	char **p2 = (char**) FOO;
	foo ((char**) FOO);
	foo (p2);

	string s0 = (string) p2[0];
	assert (s0 == "foo");
	string s1 = (string) *(p2 + 1);
	assert (s1 == "bar");
}