diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2016-12-14 21:25:20 +0200 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2016-12-14 21:25:20 +0200 |
commit | 0855ef4db6d8e0d1d57776eb273c9de321bfd6cf (patch) | |
tree | 360dc72f0eecdeed3cb15154c55f767fa0508caa /interpret.h | |
parent | 539de0a854fb94fd6ba47e91cee55f22fcd851a3 (diff) | |
download | egawk-0855ef4db6d8e0d1d57776eb273c9de321bfd6cf.tar.gz egawk-0855ef4db6d8e0d1d57776eb273c9de321bfd6cf.tar.bz2 egawk-0855ef4db6d8e0d1d57776eb273c9de321bfd6cf.zip |
Fix lint stuff, arg checking. Add a data pointer. Pass finfo to functions.
Diffstat (limited to 'interpret.h')
-rw-r--r-- | interpret.h | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/interpret.h b/interpret.h index db4bd325..79e7228e 100644 --- a/interpret.h +++ b/interpret.h @@ -965,14 +965,12 @@ arrayfor: fatal(_("%s: called with %d arguments, expecting at least %d"), pc[1].func_name, arg_count, min_req); - if (do_lint && max_expect > 0 && arg_count > max_expect) { - lintwarn(_("%s: called with %d arguments, expecting no more than %d; check all calls"), + if (do_lint && ! f->suppress_lint && arg_count > max_expect) + lintwarn(_("%s: called with %d arguments, expecting no more than %d"), pc[1].func_name, arg_count, max_expect); - f->max_expected_args = 0; // avoid multiple lint messages - } PUSH_CODE(pc); - r = awk_value_to_node(pc->extfunc(arg_count, & result)); + r = awk_value_to_node(pc->extfunc(arg_count, & result, f)); (void) POP_CODE(); while (arg_count-- > 0) { t1 = POP(); |