diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2018-09-18 11:40:34 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2018-09-18 11:40:34 +0300 |
commit | 362a100732b1017b54d3d6c6f14ea6ba59e657c2 (patch) | |
tree | c693b01f98fa65902b0f8bed27f1917c67dbf48e /field.c | |
parent | c515c7d93ca941383e14de219dca592743ec0495 (diff) | |
parent | 82f0a742be462298c0da027bc4fb56ddcb667c02 (diff) | |
download | egawk-362a100732b1017b54d3d6c6f14ea6ba59e657c2.tar.gz egawk-362a100732b1017b54d3d6c6f14ea6ba59e657c2.tar.bz2 egawk-362a100732b1017b54d3d6c6f14ea6ba59e657c2.zip |
Merge branch 'master' into feature/fix-comments
Diffstat (limited to 'field.c')
-rw-r--r-- | field.c | 22 |
1 files changed, 15 insertions, 7 deletions
@@ -396,6 +396,13 @@ set_NF() nf = get_number_si(NF_node->var_value); if (nf < 0) fatal(_("NF set to negative value")); + + static bool warned = false; + if (do_lint && NF > nf && ! warned) { + warned = true; + lintwarn(_("decrementing NF is not portable to many awk versions")); + } + NF = nf; if (NF > nf_high_water) @@ -832,18 +839,19 @@ NODE ** get_field(long requested, Func_ptr *assign) { bool in_middle = false; + static bool warned = false; + extern int currule; + + if (do_lint && currule == END && ! warned) { + warned = true; + lintwarn(_("accessing fields from an END rule may not be portable")); + } + /* * if requesting whole line but some other field has been altered, * then the whole line must be rebuilt */ if (requested == 0) { - static bool warned = false; - extern int currule; - - if (do_lint && currule == END && ! warned) { - warned = true; - lintwarn(_("accessing $0 from an END rule may not be portable")); - } if (! field0_valid) { /* first, parse remainder of input record */ if (NF == -1) { |