From 9265e49ccbe3f52f91be3f6c457a3db0dd2f8fbc Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Thu, 25 Jun 2015 17:45:15 +0100 Subject: typeset silent on repeated typeset x=() --- ChangeLog | 3 +++ Src/builtin.c | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index b2d01f34a..76aaf5c47 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2015-06-25 Peter Stephenson + * 35610: Src/builtin.c: typeset is silent if + arguments is x=() even if array x already exists. + * 35604: Src/exec.c, Test/B02typeset: create empty arrays in typeset with array=(). diff --git a/Src/builtin.c b/Src/builtin.c index ba384068d..bc685455d 100644 --- a/Src/builtin.c +++ b/Src/builtin.c @@ -2141,7 +2141,8 @@ typeset_single(char *cname, char *pname, Param pm, UNUSED(int func), if (OPT_ISSET(ops,'p')) paramtab->printnode(&pm->node, PRINT_TYPESET); else if (!OPT_ISSET(ops,'g') && - (unset(TYPESETSILENT) || OPT_ISSET(ops,'m'))) + (unset(TYPESETSILENT) || OPT_ISSET(ops,'m')) + && !asg->is_array) paramtab->printnode(&pm->node, PRINT_INCLUDEVALUE); return pm; } -- cgit 1.4.1