From 452f4efefd5511bc7dbe95b0167b10b403cdcf45 Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Tue, 26 Jul 2011 06:05:42 +0300 Subject: Fix gsub and getline pass by reference. Add tests. --- awk.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'awk.h') diff --git a/awk.h b/awk.h index d9da3b98..1421203a 100644 --- a/awk.h +++ b/awk.h @@ -631,10 +631,7 @@ typedef struct exp_instruction { #define sub_flags d.dl #define GSUB 0x01 /* builtin is gsub */ #define GENSUB 0x02 /* builtin is gensub */ -#define AFTER_ASSIGN 0x04 /* (g)sub target is a field or a special var with - * set_XX routine. - */ -#define LITERAL 0x08 /* target is a literal string */ +#define LITERAL 0x04 /* target is a literal string */ /* Op_K_exit */ @@ -717,6 +714,9 @@ typedef struct exp_instruction { /* Op_field_assign */ #define field_assign x.aptr +/* Op_field_assign, Op_var_assign */ +#define assign_ctxt d.dl + /* Op_concat */ #define concat_flag d.dl #define CSUBSEP 1 @@ -1192,7 +1192,7 @@ extern NODE *do_cos(int nargs); extern NODE *do_rand(int nargs); extern NODE *do_srand(int nargs); extern NODE *do_match(int nargs); -extern NODE *do_sub(int nargs, unsigned int flags, int *num_matches); +extern NODE *do_sub(int nargs, unsigned int flags); extern NODE *format_tree(const char *, size_t, NODE **, long); extern NODE *do_lshift(int nargs); extern NODE *do_rshift(int nargs); -- cgit v1.2.3