diff options
Diffstat (limited to 'testsuite/systemtap.maps/foreach_foreach.stp')
-rwxr-xr-x | testsuite/systemtap.maps/foreach_foreach.stp | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/testsuite/systemtap.maps/foreach_foreach.stp b/testsuite/systemtap.maps/foreach_foreach.stp new file mode 100755 index 00000000..09a230f5 --- /dev/null +++ b/testsuite/systemtap.maps/foreach_foreach.stp @@ -0,0 +1,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() +} |