71 lines
1.9 KiB
Diff
71 lines
1.9 KiB
Diff
|
|
From c0c9f468b12a79ad8277f0e2b9ff7d42f48490bf Mon Sep 17 00:00:00 2001
|
||
|
|
From: "Arnold D. Robbins" <arnold@skeeve.com>
|
||
|
|
Date: Tue, 25 Oct 2022 07:25:20 +0300
|
||
|
|
Subject: Code simplification in interpret.h.
|
||
|
|
|
||
|
|
Reference:https://git.savannah.gnu.org/cgit/gawk.git/patch/?id=c0c9f468b12a79ad8277f0e2b9ff7d42f48490bf
|
||
|
|
Conflict:tailoring commits on ChangeLog
|
||
|
|
---
|
||
|
|
interpret.h | 30 +++++++++++++++---------------
|
||
|
|
1 files changed, 15 insertions(+), 15 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/interpret.h b/interpret.h
|
||
|
|
index f703080..4540d30 100644
|
||
|
|
--- a/interpret.h
|
||
|
|
+++ b/interpret.h
|
||
|
|
@@ -212,38 +212,38 @@ top:
|
||
|
|
|
||
|
|
case Node_var_new:
|
||
|
|
uninitialized_scalar:
|
||
|
|
- if (op != Op_push_arg_untyped) {
|
||
|
|
- /* convert very original untyped to scalar */
|
||
|
|
- m->type = Node_var;
|
||
|
|
- m->var_value = dupnode(Nnull_string);
|
||
|
|
- }
|
||
|
|
-
|
||
|
|
if (do_lint)
|
||
|
|
lintwarn(isparam ?
|
||
|
|
_("reference to uninitialized argument `%s'") :
|
||
|
|
_("reference to uninitialized variable `%s'"),
|
||
|
|
save_symbol->vname);
|
||
|
|
- // set up local param by value
|
||
|
|
- if (op != Op_push_arg_untyped)
|
||
|
|
- m = dupnode(Nnull_string);
|
||
|
|
- UPREF(m);
|
||
|
|
- PUSH(m);
|
||
|
|
- break;
|
||
|
|
|
||
|
|
- case Node_elem_new:
|
||
|
|
if (op != Op_push_arg_untyped) {
|
||
|
|
- /* convert very original untyped to scalar */
|
||
|
|
+ // convert very original untyped to scalar
|
||
|
|
m->type = Node_var;
|
||
|
|
m->var_value = dupnode(Nnull_string);
|
||
|
|
+
|
||
|
|
+ // set up local param by value
|
||
|
|
+ m = dupnode(Nnull_string);
|
||
|
|
}
|
||
|
|
|
||
|
|
+ UPREF(m);
|
||
|
|
+ PUSH(m);
|
||
|
|
+ break;
|
||
|
|
+
|
||
|
|
+ case Node_elem_new:
|
||
|
|
if (do_lint)
|
||
|
|
lintwarn(isparam ?
|
||
|
|
_("reference to uninitialized argument `%s'") :
|
||
|
|
_("reference to uninitialized variable `%s'"),
|
||
|
|
save_symbol->vname);
|
||
|
|
- // set up local param by value
|
||
|
|
+
|
||
|
|
if (op != Op_push_arg_untyped) {
|
||
|
|
+ // convert very original untyped to scalar
|
||
|
|
+ m->type = Node_var;
|
||
|
|
+ m->var_value = dupnode(Nnull_string);
|
||
|
|
+
|
||
|
|
+ // set up local param by value
|
||
|
|
DEREF(m);
|
||
|
|
m = dupnode(Nnull_string);
|
||
|
|
}
|
||
|
|
--
|