diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | builtin.c | 4 | ||||
-rw-r--r-- | test/ChangeLog | 5 | ||||
-rw-r--r-- | test/indirectbuiltin.awk | 6 | ||||
-rw-r--r-- | test/indirectbuiltin.ok | 1 |
5 files changed, 17 insertions, 2 deletions
@@ -5,6 +5,9 @@ to an unsigned time_t. Thanks again to Glaudiston Gomes da Silva <glaudistong@gmail.com>. + Unrelated: + * builtin.c (call_sub): Fix for indirect gensub, 3 args now works. + 2015-04-13 Arnold D. Robbins <arnold@skeeve.com> * regcomp.c (analyze): Prevent malloc(0). @@ -3063,10 +3063,10 @@ call_sub(const char *name, int nargs) PUSH(rhs); nargs++; } - PUSH(rhs); + else + PUSH(rhs); } - unref(zero); result = do_sub(nargs, flags); if (flags != GENSUB) diff --git a/test/ChangeLog b/test/ChangeLog index 0092932f..201f8a32 100644 --- a/test/ChangeLog +++ b/test/ChangeLog @@ -1,3 +1,8 @@ +2015-04-14 Arnold D. Robbins <arnold@skeeve.com> + + * indirectbuiltin.awk: Add another test (gensub 3 args). + * indirectbuiltin.ok: Update good results. + 2015-04-13 Arnold D. Robbins <arnold@skeeve.com> * Makefile.am (negtime): New test. diff --git a/test/indirectbuiltin.awk b/test/indirectbuiltin.awk index 4d5291d2..c9e75217 100644 --- a/test/indirectbuiltin.awk +++ b/test/indirectbuiltin.awk @@ -98,6 +98,12 @@ BEGIN { i1 = @fun("f", "q", "g", "ff11bb") print_result("string", fun, b1, i1) + fun = "gensub" + $0 = "ff11bb" + b1 = gensub("f", "q", "g") + i1 = @fun("f", "q", "g") + print_result("string", fun " (3 args)", b1, i1) + fun = "gsub" $0 = "ff11bb" b1 = gsub("f", "q") diff --git a/test/indirectbuiltin.ok b/test/indirectbuiltin.ok index 312bbd76..08c87610 100644 --- a/test/indirectbuiltin.ok +++ b/test/indirectbuiltin.ok @@ -14,6 +14,7 @@ math: sqrt: pass math: srand: pass math: xor: pass string: gensub: pass +string: gensub (3 args): pass string: gsub: pass string: index: pass string: dcgettext: pass |