aboutsummaryrefslogtreecommitdiffstats
path: root/test/nsindirect2.awk
diff options
context:
space:
mode:
Diffstat (limited to 'test/nsindirect2.awk')
-rw-r--r--test/nsindirect2.awk44
1 files changed, 44 insertions, 0 deletions
diff --git a/test/nsindirect2.awk b/test/nsindirect2.awk
new file mode 100644
index 00000000..8017e8f7
--- /dev/null
+++ b/test/nsindirect2.awk
@@ -0,0 +1,44 @@
+BEGIN {
+ stftime::gensub = 3 # should be OK, not related to indirect calls
+}
+
+
+BEGIN { base_time = systime() } # in awk namespace
+
+@namespace "testing"
+
+function strftime(mesg)
+{
+ printf("strftime(%s) - this is not the function you are looking for\n",
+ mesg)
+ return 0
+}
+
+BEGIN {
+ strftime("from 'testing'")
+ gensub = "gensub"
+ print "gensub =", gensub
+}
+
+function systime()
+{
+ return awk::base_time
+}
+
+BEGIN {
+ st = "systime"
+ now[1] = @st()
+
+ st = "awk::systime"
+ now[2] = @st()
+
+ st = "testing::systime"
+ now[3] = @st()
+
+ for (i = 1; i <= 3; i++) {
+ if (now[i] == awk::base_time || now[i] == awk::base_time + 1)
+ printf "iteration %d, got good result from systime\n", i
+ else
+ printf "iteration %d, got bad result from systime, now %d, base_time %d\n", i, now, awk::base_time
+ }
+}