summaryrefslogtreecommitdiffstats
path: root/testsuite/systemtap.maps/foreach_foreach.stp
blob: 09a230f5974d61a4c24ef3c70c2d39f1efae8c97 (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
28
29
30
31
32
33
34
35
36
37
38
39
40
# nested foreach

global foo, bar

probe begin {
	for (i=0;i<11;i++)
		foo[i] = i*i 	

	for (i=0;i<11;i++)
		bar[i] = i*i*i 	

	foreach (i in foo)
	 	printf("foo[%d] = %d\n", i, foo[i])

	printf("\n")

	foreach (i in bar)
	 	printf("bar[%d] = %d\n", i, bar[i])

	printf("\n")

	foreach (i in foo) {
	 	printf("foo[%d] = %d\n", i, foo[i])
	 	printf("bar[%d] = %d\n", i, bar[i])
	}

	printf("\n")

	delete bar
	for (i=20;i<25;i++)
		bar[i] = i*i*i 	

	foreach (i in foo) {
		foreach (j in bar)
		 	printf("bar[%d] = %d\n", j, bar[j])
	 	printf("foo[%d] = %d\n", i, foo[i])
	}

	exit()
}