diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2023-03-23 20:03:05 +0200 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2023-03-23 20:03:05 +0200 |
commit | 79b94a400aa1fbcf26e0535c1f6345ea7c1fbb54 (patch) | |
tree | 0b5fbe15c20ca4c455d6ecbf67807de4caa5aa6a /awk.h | |
parent | e7720935594d7442f92eecbe08eb69857aab8c4e (diff) | |
parent | 8bf639a108edfb478f8e0b11d41ddea5d85c7826 (diff) | |
download | gawk-79b94a400aa1fbcf26e0535c1f6345ea7c1fbb54.tar.gz |
Merge branch 'master' into feature/backslash-u
Diffstat (limited to 'awk.h')
-rw-r--r-- | awk.h | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -623,6 +623,7 @@ typedef enum opcodeval { Op_store_var, /* simple variable assignment optimization */ Op_store_sub, /* array[subscript] assignment optimization */ Op_store_field, /* $n assignment optimization */ + Op_store_field_exp, /* $n assignment optimization in an expression */ Op_assign_times, Op_assign_quotient, Op_assign_mod, @@ -972,7 +973,7 @@ struct redirect { RED_READ = 4, RED_WRITE = 8, RED_APPEND = 16, - RED_NOBUF = 32, + RED_FLUSH = 32, RED_USED = 64, /* closed temporarily to reuse fd */ RED_EOF = 128, RED_TWOWAY = 256, @@ -2031,6 +2032,9 @@ fixtype(NODE *n) static inline bool boolval(NODE *t) { + if (t->type == Node_var) // could have come from converted Node_elem_new + t = t->var_value; + (void) fixtype(t); if ((t->flags & NUMBER) != 0) return ! is_zero(t); |