diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2011-07-26 06:05:42 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2011-07-26 06:05:42 +0300 |
commit | 452f4efefd5511bc7dbe95b0167b10b403cdcf45 (patch) | |
tree | a0c957508537e36bb1449485d2d0881061750174 /awk.h | |
parent | fc02808c31a55f1559143ad9d8ad50e2f71a512b (diff) | |
download | egawk-452f4efefd5511bc7dbe95b0167b10b403cdcf45.tar.gz egawk-452f4efefd5511bc7dbe95b0167b10b403cdcf45.tar.bz2 egawk-452f4efefd5511bc7dbe95b0167b10b403cdcf45.zip |
Fix gsub and getline pass by reference. Add tests.
Diffstat (limited to 'awk.h')
-rw-r--r-- | awk.h | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -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); |