gawk-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gawk-diffs] [SCM] gawk branch, gawk-4.1-stable, updated. gawk-4.1.0-63-


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, gawk-4.1-stable, updated. gawk-4.1.0-63-g933d15a
Date: Mon, 19 Aug 2013 17:57:21 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".

The branch, gawk-4.1-stable has been updated
       via  933d15a9646fd550ad923005667d7014ef1cff97 (commit)
      from  a68280e1d6610fd2213df92a8bb5c67bd4ef0668 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=933d15a9646fd550ad923005667d7014ef1cff97

commit 933d15a9646fd550ad923005667d7014ef1cff97
Author: Arnold D. Robbins <address@hidden>
Date:   Mon Aug 19 20:56:57 2013 +0300

    Fix in array.c.

diff --git a/ChangeLog b/ChangeLog
index 1ce515c..7749ff7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2013-08-18         Arnold D. Robbins     <address@hidden>
+
+       * array.c (force_array): Set symbol->xarray to NULL before
+       initing the array if it was Node_var_new.
+       (null_array): Restore assert, undoing change of 2013-05-27.
+
 2013-08-15         Arnold D. Robbins     <address@hidden>
 
        * debug.c (print_memory): Fix whitespace / indentation.
diff --git a/array.c b/array.c
index 92a1cb8..a0ddf58 100644
--- a/array.c
+++ b/array.c
@@ -113,21 +113,14 @@ null_array(NODE *symbol)
        symbol->table_size = symbol->array_size = 0;
        symbol->array_capacity = 0;
        symbol->flags = 0;
-       /*
-        * 5/2013: This used to be
-        *
-        *      assert(symbol->xarray == NULL);
-        *
-        * But that seems to cause problems for no good reason
-        * that I can see. I believe it to be an artifact of the
-        * union getting in the way.
-        */
-       symbol->xarray = NULL;
+
+       assert(symbol->xarray == NULL);
+
        /* vname, parent_array not (re)initialized */
 }
 
 
-/* null_lookup: assign type to an empty array. */
+/* null_lookup --- assign type to an empty array. */
 
 static NODE **
 null_lookup(NODE *symbol, NODE *subs)
@@ -349,6 +342,7 @@ force_array(NODE *symbol, bool canfatal)
 
        switch (symbol->type) {
        case Node_var_new:
+               symbol->xarray = NULL;  /* make sure union is as it should be */
                null_array(symbol);
                symbol->parent_array = NULL;    /* main array has no parent */
                /* fall through */

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog |    6 ++++++
 array.c   |   16 +++++-----------
 2 files changed, 11 insertions(+), 11 deletions(-)


hooks/post-receive
-- 
gawk



reply via email to

[Prev in Thread] Current Thread [Next in Thread]