aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog78
-rw-r--r--NEWS8
-rw-r--r--awk.h3
-rw-r--r--awkgram.c2
-rw-r--r--awkgram.y2
-rw-r--r--builtin.c24
-rw-r--r--dfa.c16
-rw-r--r--doc/ChangeLog20
-rw-r--r--doc/gawk.info920
-rw-r--r--doc/gawk.texi45
-rw-r--r--doc/gawktexi.in45
-rw-r--r--extension/ChangeLog8
-rw-r--r--extension/Makefile.am2
-rw-r--r--extension/Makefile.in2
-rw-r--r--gawkapi.h4
-rw-r--r--interpret.h9
-rw-r--r--io.c10
-rw-r--r--main.c9
-rw-r--r--mpfr.c73
-rw-r--r--po/id.po3182
-rw-r--r--po/it.po32
-rw-r--r--test/ChangeLog15
-rw-r--r--test/Makefile.am18
-rw-r--r--test/Makefile.in18
-rw-r--r--test/badargs.ok2
-rw-r--r--test/mpfrrem.awk6
-rw-r--r--test/mpfrrem.ok4
-rw-r--r--test/mpfrsqrt.awk82
-rw-r--r--test/mpfrsqrt.ok2
-rw-r--r--test/printhuge.awk2
-rw-r--r--test/printhuge.ok2
31 files changed, 3180 insertions, 1465 deletions
diff --git a/ChangeLog b/ChangeLog
index 3fb8bb98..6d734c98 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,81 @@
+2014-08-05 Arnold D. Robbins <arnold@skeeve.com>
+
+ Bug fix: For MPFR sqrt(), need to set precision of result to be
+ the same as that of the argument. Doesn't hurt other functions.
+ See test/mpfrsqrt.awk. Thank to Katie Wasserman <katie@wass.net>
+ for the bug report.
+
+ * mpfr.c (do_mpfr_func): New function. Runs code for MPFR functions
+ while still enabling debugging. Add call here to mpfr_set_prec().
+ Original code from SPEC_MATH macro.
+ (SPEC_MATH): Change macro to call do_mpfr_func().
+
+ Next MPFR bug fix: The % operator gave strange results for negative
+ numerator. Thanks again to Katie Wasserman for the bug report.
+
+ * mpfr.c (mpg_mod): Use mpz_tdiv_qr() instead of mpz_mod(). From
+ the GMP doc, mpz_mod() should have worked; it's not clear why
+ it doesn't.
+
+2014-08-03 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): Don't need to check return value of
+ wctombr for -2. Thanks to Eli Zaretskii for pointing this out.
+
+ Unrelated:
+
+ * gawkapi.h: Fix doc for API get_record - errcode needs to
+ be greater than zero.
+ * interpret.h (r_interpret): Move setting of ERRNO to here, from ...
+ * io.c (inrec): ... here. Makes the code cleaner.
+
+2014-08-03 Andrew J. Schorr <aschorr@telemetry-investments.com>
+
+ * awkgram.y (getfname): Match on either ptr or ptr2 so --profile
+ will work in -M (MPFR bignum) mode.
+
+2014-07-31 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): Make %c handling more sane on Windows.
+ Rework the lint messages.
+
+ Unrelated:
+
+ * dfa.c: Sync with GNU grep. Mainly white space differences.
+
+ Unrelated:
+
+ * mpfr.c (cleanup_mpfr): New function to deallocate _mpf_t1
+ and _mpf_t2; removes some valgrind warnings.
+ * awk.h (cleanup_mpfr): Add declaration.
+ * main.c (main): Add call to `cleanup_mpfr'.
+
+ Fix memory leak:
+
+ * mpfr.c (do_mpfr_div): Add unref to denominator and numerator
+ to not leak memory. Thanks to Katie Wasserman <katie@wass.net>
+ for isolating the problem to that routine.
+
+2014-07-25 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Add a warning message if -M is used and gawk was
+ compiled without MPFR/GMP.
+
+2014-07-24 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (usage): Put text for `-n' *after* text for `-m'.
+ Report from Robert P. J. Day <rpjday@crashcourse.ca>.
+
+ Fix problems with I/O errors reported by Assaf Gordon
+ <assafgordon@gmail.com>:
+
+ * io.c (inrec): Change type to bool to make calling easier. Add
+ check in non-EOF case for error, and if so, return false.
+ Update ERRNO in case there is an ENDFILE block.
+ * awk.h (inrec): Change type in declaration.
+ * interpret.h (r_interpret): Change call of inrec() to boolean
+ notation.
+
2014-07-10 Arnold D. Robbins <arnold@skeeve.com>
New `div()' function to do integer division and remainder;
diff --git a/NEWS b/NEWS
index c2cf63ac..584a41f2 100644
--- a/NEWS
+++ b/NEWS
@@ -35,6 +35,14 @@ Changes from 4.1.1 to 4.1.2
- Summary sections added to all chapters.
- Exercises added in several chapters.
+2. The debugger's "restart" command now works again.
+
+3. Redirected getline is now allowed inside BEGINFILE/ENDFILE.
+
+4. A number of bugs have been fixed in the MPFR code.
+
+XX. A number of bugs have been fixed. See the ChangeLog.
+
Changes from 4.1.0 to 4.1.1
---------------------------
diff --git a/awk.h b/awk.h
index cb9f8091..c964ad19 100644
--- a/awk.h
+++ b/awk.h
@@ -1533,7 +1533,7 @@ extern char *find_source(const char *src, struct stat *stb, int *errcode, int is
extern NODE *do_getline_redir(int intovar, enum redirval redirtype);
extern NODE *do_getline(int intovar, IOBUF *iop);
extern struct redirect *getredirect(const char *str, int len);
-extern int inrec(IOBUF *iop, int *errcode);
+extern bool inrec(IOBUF *iop, int *errcode);
extern int nextfile(IOBUF **curfile, bool skipping);
/* main.c */
extern int arg_assign(char *arg, bool initing);
@@ -1570,6 +1570,7 @@ extern NODE *do_mpfr_srand(int);
extern NODE *do_mpfr_strtonum(int);
extern NODE *do_mpfr_xor(int);
extern void init_mpfr(mpfr_prec_t, const char *);
+extern void cleanup_mpfr(void);
extern NODE *mpg_node(unsigned int);
extern const char *mpg_fmt(const char *, ...);
extern int mpg_strtoui(mpz_ptr, char *, size_t, char **, int);
diff --git a/awkgram.c b/awkgram.c
index 28776494..1c5e952d 100644
--- a/awkgram.c
+++ b/awkgram.c
@@ -4284,7 +4284,7 @@ getfname(NODE *(*fptr)(int))
j = sizeof(tokentab) / sizeof(tokentab[0]);
/* linear search, no other way to do it */
for (i = 0; i < j; i++)
- if (tokentab[i].ptr == fptr)
+ if (tokentab[i].ptr == fptr || tokentab[i].ptr2 == fptr)
return tokentab[i].operator;
return NULL;
diff --git a/awkgram.y b/awkgram.y
index 9e4f82b3..2ceb88e0 100644
--- a/awkgram.y
+++ b/awkgram.y
@@ -1945,7 +1945,7 @@ getfname(NODE *(*fptr)(int))
j = sizeof(tokentab) / sizeof(tokentab[0]);
/* linear search, no other way to do it */
for (i = 0; i < j; i++)
- if (tokentab[i].ptr == fptr)
+ if (tokentab[i].ptr == fptr || tokentab[i].ptr2 == fptr)
return tokentab[i].operator;
return NULL;
diff --git a/builtin.c b/builtin.c
index 6f8aeb36..778760d9 100644
--- a/builtin.c
+++ b/builtin.c
@@ -1066,13 +1066,29 @@ check_pos:
size_t count;
memset(& mbs, 0, sizeof(mbs));
+
+ /* handle systems with too small wchar_t */
+ if (sizeof(wchar_t) < 4 && uval > 0xffff) {
+ if (do_lint)
+ lintwarn(
+ _("[s]printf: value %g is too big for %%c format"),
+ arg->numbr);
+
+ goto out0;
+ }
+
wc = uval;
count = wcrtomb(buf, wc, & mbs);
if (count == 0
- || count == (size_t)-1
- || count == (size_t)-2)
+ || count == (size_t) -1) {
+ if (do_lint)
+ lintwarn(
+ _("[s]printf: value %g is not a valid wide character"),
+ arg->numbr);
+
goto out0;
+ }
memcpy(cpbuf, buf, count);
prec = count;
@@ -1084,10 +1100,6 @@ out0:
/* else,
fall through */
#endif
- if (do_lint && uval > 255) {
- lintwarn("[s]printf: value %g is too big for %%c format",
- arg->numbr);
- }
cpbuf[0] = uval;
prec = 1;
cp = cpbuf;
diff --git a/dfa.c b/dfa.c
index e2a83d43..1a153785 100644
--- a/dfa.c
+++ b/dfa.c
@@ -1204,7 +1204,8 @@ parse_bracket_exp (void)
if (wc != WEOF && wc2 != WEOF)
{
work_mbc->ranges
- = maybe_realloc (work_mbc->ranges, work_mbc->nranges + 2,
+ = maybe_realloc (work_mbc->ranges,
+ work_mbc->nranges + 2,
&ranges_al, sizeof *work_mbc->ranges);
work_mbc->ranges[work_mbc->nranges].beg
= case_fold ? towlower (wc) : wc;
@@ -1213,7 +1214,8 @@ parse_bracket_exp (void)
if (case_fold && (iswalpha (wc) || iswalpha (wc2)))
{
- work_mbc->ranges[work_mbc->nranges].beg = towupper (wc);
+ work_mbc->ranges[work_mbc->nranges].beg
+ = towupper (wc);
work_mbc->ranges[work_mbc->nranges++].end
= towupper (wc2);
}
@@ -3783,13 +3785,13 @@ dfafree (struct dfa *d)
CAT (p->is==ZERO)? (q->is==ZERO)? (p->is!=ZERO && p->in plus
p->left : q->right : q->is!=ZERO) ? q->in plus
- p->is##q->left p->right##q->is p->is##q->is : p->right##q->left
+ p->is##q->left p->right##q->is p->is##q->is : p->right##q->left
ZERO
- OR longest common longest common (do p->is and substrings common to
- leading trailing q->is have same p->in and q->in
- (sub)sequence (sub)sequence length and
- of p->left of p->right content) ?
+ OR longest common longest common (do p->is and substrings common
+ leading trailing to q->is have same p->in and
+ (sub)sequence (sub)sequence q->in length and content) ?
+ of p->left of p->right
and q->left and q->right p->is : NULL
If there's anything else we recognize in the tree, all four sequences get set
diff --git a/doc/ChangeLog b/doc/ChangeLog
index f69e401d..0500b6c9 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,23 @@
+2014-08-06 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in: Misc minor additions.
+
+2014-08-03 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in: For sprintf %c document that if value is a valid
+ wide character, gawk uses the low 8 bits of the value.
+
+ Unrelated:
+
+ * gawktexi.in: Fix doc for API get_record - errcode needs to
+ be greater than zero.
+
+2014-07-24 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawktexi.in (Numeric Functions): For `div()', clarify
+ truncation is towards zero. Thanks to Michal Jaegermann
+ for pointing out the need to clarify this.
+
2014-07-10 Arnold D. Robbins <arnold@skeeve.com>
* gawktexi.in (Numeric Functions): Document new `div()' function.
diff --git a/doc/gawk.info b/doc/gawk.info
index e7854caf..076a2f34 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -6275,7 +6275,9 @@ width. Here is a list of the format-control letters:
valid wide character and then to print the multibyte encoding
of that character. Similarly, when printing a numeric value,
`gawk' allows the value to be within the numeric range of
- values that can be held in a wide character.
+ values that can be held in a wide character. If the
+ conversion to multibyte encoding fails, `gawk' uses the low
+ eight bits of the value as the character to print.
Other `awk' versions generally restrict themselves to printing
the first byte of a string or to numeric values within the
@@ -11682,14 +11684,15 @@ brackets ([ ]):
`div(NUMERATOR, DENOMINATOR, RESULT)'
Perform integer division, similar to the standard C function of the
- same name. First, truncate `numerator' and `denominator' to
- integers. Clear the `result' array, and then set
- `result["quotient"]' to the result of `numerator / denominator',
- truncated to an integer, and set `result["remainder"]' to the
- result of `numerator % denominator', truncated to an integer.
- This function is primarily intended for use with arbitrary length
- integers; it avoids creating MPFR arbitrary precision
- floating-point values (*note Arbitrary Precision Integers::).
+ same name. First, truncate `numerator' and `denominator' towards
+ zero, creating integer values. Clear the `result' array, and then
+ set `result["quotient"]' to the result of `numerator /
+ denominator', truncated towards zero to an integer, and set
+ `result["remainder"]' to the result of `numerator % denominator',
+ truncated towards zero to an integer. This function is primarily
+ intended for use with arbitrary length integers; it avoids
+ creating MPFR arbitrary precision floating-point values (*note
+ Arbitrary Precision Integers::).
This function is a `gawk' extension. It is not available in
compatibility mode (*note Options::).
@@ -15031,7 +15034,9 @@ presented in *note Filetrans Function::, to either update `ARGIND' on
your own or modify this code as appropriate.
The `rewind()' function also relies on the `nextfile' keyword (*note
-Nextfile Statement::).
+Nextfile Statement::). Because of this, you should not call it from an
+`ENDFILE' rule. (This isn't necessary anyway, since as soon as an
+`ENDFILE' rule finishes `gawk' goes to the next file!)

File: gawk.info, Node: File Checking, Next: Empty Files, Prev: Rewind Function, Up: Data File Management
@@ -23197,10 +23202,10 @@ need to test for a `NULL' value. `gawk' sets `*errcode' to zero, so
there is no need to set it unless an error occurs.
If an error does occur, the function should return `EOF' and set
-`*errcode' to a non-zero value. In that case, if `*errcode' does not
-equal -1, `gawk' automatically updates the `ERRNO' variable based on
-the value of `*errcode'. (In general, setting `*errcode = errno'
-should do the right thing.)
+`*errcode' to a value greater than zero. In that case, if `*errcode'
+does not equal zero, `gawk' automatically updates the `ERRNO' variable
+based on the value of `*errcode'. (In general, setting `*errcode =
+errno' should do the right thing.)
As an alternative to supplying a function that returns an input
record, you may instead supply a function that simply reads bytes, and
@@ -26140,6 +26145,11 @@ the current version of `gawk'.
- GCC for VAX and Alpha has not been tested for a while.
+ * Support for the following obsolete systems was removed from the
+ code and the documentation for `gawk' version 4.1:
+
+ - Ultrix
+

File: gawk.info, Node: Feature History, Next: Common Extensions, Prev: POSIX/GNU, Up: Language History
@@ -32163,10 +32173,10 @@ Index
* exit status, of VMS: VMS Running. (line 29)
* exit the debugger: Miscellaneous Debugger Commands.
(line 99)
-* exp: Numeric Functions. (line 32)
+* exp: Numeric Functions. (line 33)
* expand utility: Very Simple. (line 69)
* Expat XML parser library: gawkextlib. (line 35)
-* exponent: Numeric Functions. (line 32)
+* exponent: Numeric Functions. (line 33)
* expressions: Expressions. (line 6)
* expressions, as patterns: Expression Patterns. (line 6)
* expressions, assignment: Assignment Ops. (line 6)
@@ -32702,7 +32712,7 @@ Index
* installation, VMS: VMS Installation. (line 6)
* installing gawk: Installation. (line 6)
* instruction tracing, in debugger: Debugger Info. (line 89)
-* int: Numeric Functions. (line 37)
+* int: Numeric Functions. (line 38)
* INT signal (MS-Windows): Profiling. (line 214)
* integer array indices: Numeric Array Subscripts.
(line 31)
@@ -32851,9 +32861,9 @@ Index
* localization: I18N and L10N. (line 6)
* localization, See internationalization, localization: I18N and L10N.
(line 6)
-* log: Numeric Functions. (line 44)
+* log: Numeric Functions. (line 45)
* log files, timestamps in: Time Functions. (line 6)
-* logarithm: Numeric Functions. (line 44)
+* logarithm: Numeric Functions. (line 45)
* logical false/true: Truth Values. (line 6)
* logical operators, See Boolean expressions: Boolean Ops. (line 6)
* login information: Passwd Functions. (line 16)
@@ -33310,12 +33320,12 @@ Index
* Rakitzis, Byron: History Sorting. (line 25)
* Ramey, Chet <1>: General Data Types. (line 6)
* Ramey, Chet: Acknowledgments. (line 60)
-* rand: Numeric Functions. (line 48)
+* rand: Numeric Functions. (line 49)
* random numbers, Cliff: Cliff Random Function.
(line 6)
* random numbers, rand()/srand() functions: Numeric Functions.
- (line 48)
-* random numbers, seed of: Numeric Functions. (line 78)
+ (line 49)
+* random numbers, seed of: Numeric Functions. (line 79)
* range expressions (regexps): Bracket Expressions. (line 6)
* range patterns: Ranges. (line 6)
* range patterns, line continuation and: Ranges. (line 65)
@@ -33443,7 +33453,7 @@ Index
* Robbins, Miriam <2>: Getline/Pipe. (line 39)
* Robbins, Miriam: Acknowledgments. (line 82)
* Rommel, Kai Uwe: Contributors. (line 42)
-* round to nearest integer: Numeric Functions. (line 37)
+* round to nearest integer: Numeric Functions. (line 38)
* round() user-defined function: Round Function. (line 16)
* rounding numbers: Round Function. (line 6)
* ROUNDMODE variable: User-modified. (line 128)
@@ -33493,7 +33503,7 @@ Index
* sed utility <2>: Simple Sed. (line 6)
* sed utility: Field Splitting Summary.
(line 46)
-* seeding random number generator: Numeric Functions. (line 78)
+* seeding random number generator: Numeric Functions. (line 79)
* semicolon (;), AWKPATH variable and: PC Using. (line 10)
* semicolon (;), separating statements in actions <1>: Statements.
(line 10)
@@ -33595,8 +33605,8 @@ Index
* SIGUSR1 signal, for dynamic profiling: Profiling. (line 188)
* silent debugger command: Debugger Execution Control.
(line 10)
-* sin: Numeric Functions. (line 89)
-* sine: Numeric Functions. (line 89)
+* sin: Numeric Functions. (line 90)
+* sine: Numeric Functions. (line 90)
* single quote ('): One-shot. (line 15)
* single quote (') in gawk command lines: Long. (line 33)
* single quote ('), in shell commands: Quoting. (line 48)
@@ -33646,10 +33656,10 @@ Index
* sprintf() function, OFMT variable and: User-modified. (line 114)
* sprintf() function, print/printf statements and: Round Function.
(line 6)
-* sqrt: Numeric Functions. (line 92)
+* sqrt: Numeric Functions. (line 93)
* square brackets ([]), regexp operator: Regexp Operators. (line 56)
-* square root: Numeric Functions. (line 92)
-* srand: Numeric Functions. (line 96)
+* square root: Numeric Functions. (line 93)
+* srand: Numeric Functions. (line 97)
* stack frame: Debugging Terms. (line 10)
* Stallman, Richard <1>: Glossary. (line 296)
* Stallman, Richard <2>: Contributors. (line 23)
@@ -34112,431 +34122,431 @@ Node: OFMT271658
Node: Printf273016
Node: Basic Printf273922
Node: Control Letters275461
-Node: Format Modifiers279313
-Node: Printf Examples285340
-Node: Redirection287804
-Node: Special Files294776
-Node: Special FD295307
-Ref: Special FD-Footnote-1298931
-Node: Special Network299005
-Node: Special Caveats299855
-Node: Close Files And Pipes300651
-Ref: Close Files And Pipes-Footnote-1307812
-Ref: Close Files And Pipes-Footnote-2307960
-Node: Output Summary308110
-Node: Output exercises309107
-Node: Expressions309787
-Node: Values310972
-Node: Constants311648
-Node: Scalar Constants312328
-Ref: Scalar Constants-Footnote-1313187
-Node: Nondecimal-numbers313437
-Node: Regexp Constants316437
-Node: Using Constant Regexps316912
-Node: Variables319982
-Node: Using Variables320637
-Node: Assignment Options322361
-Node: Conversion324236
-Node: Strings And Numbers324760
-Ref: Strings And Numbers-Footnote-1327822
-Node: Locale influences conversions327931
-Ref: table-locale-affects330648
-Node: All Operators331236
-Node: Arithmetic Ops331866
-Node: Concatenation334371
-Ref: Concatenation-Footnote-1337167
-Node: Assignment Ops337287
-Ref: table-assign-ops342270
-Node: Increment Ops343587
-Node: Truth Values and Conditions347025
-Node: Truth Values348108
-Node: Typing and Comparison349157
-Node: Variable Typing349950
-Ref: Variable Typing-Footnote-1353850
-Node: Comparison Operators353972
-Ref: table-relational-ops354382
-Node: POSIX String Comparison357932
-Ref: POSIX String Comparison-Footnote-1359016
-Node: Boolean Ops359154
-Ref: Boolean Ops-Footnote-1363224
-Node: Conditional Exp363315
-Node: Function Calls365042
-Node: Precedence368922
-Node: Locales372591
-Node: Expressions Summary374222
-Node: Patterns and Actions376763
-Node: Pattern Overview377879
-Node: Regexp Patterns379556
-Node: Expression Patterns380099
-Node: Ranges383880
-Node: BEGIN/END386986
-Node: Using BEGIN/END387748
-Ref: Using BEGIN/END-Footnote-1390484
-Node: I/O And BEGIN/END390590
-Node: BEGINFILE/ENDFILE392875
-Node: Empty395806
-Node: Using Shell Variables396123
-Node: Action Overview398406
-Node: Statements400733
-Node: If Statement402581
-Node: While Statement404079
-Node: Do Statement406123
-Node: For Statement407279
-Node: Switch Statement410431
-Node: Break Statement412534
-Node: Continue Statement414589
-Node: Next Statement416382
-Node: Nextfile Statement418772
-Node: Exit Statement421427
-Node: Built-in Variables423831
-Node: User-modified424958
-Ref: User-modified-Footnote-1432647
-Node: Auto-set432709
-Ref: Auto-set-Footnote-1445628
-Ref: Auto-set-Footnote-2445833
-Node: ARGC and ARGV445889
-Node: Pattern Action Summary449743
-Node: Arrays451966
-Node: Array Basics453515
-Node: Array Intro454341
-Ref: figure-array-elements456314
-Node: Reference to Elements458721
-Node: Assigning Elements460994
-Node: Array Example461485
-Node: Scanning an Array463217
-Node: Controlling Scanning466232
-Ref: Controlling Scanning-Footnote-1471405
-Node: Delete471721
-Ref: Delete-Footnote-1474486
-Node: Numeric Array Subscripts474543
-Node: Uninitialized Subscripts476726
-Node: Multidimensional478351
-Node: Multiscanning481444
-Node: Arrays of Arrays483033
-Node: Arrays Summary487696
-Node: Functions489801
-Node: Built-in490674
-Node: Calling Built-in491752
-Node: Numeric Functions493740
-Ref: Numeric Functions-Footnote-1498318
-Ref: Numeric Functions-Footnote-2498675
-Ref: Numeric Functions-Footnote-3498723
-Node: String Functions498992
-Ref: String Functions-Footnote-1522003
-Ref: String Functions-Footnote-2522132
-Ref: String Functions-Footnote-3522380
-Node: Gory Details522467
-Ref: table-sub-escapes524136
-Ref: table-sub-posix-92525490
-Ref: table-sub-proposed526841
-Ref: table-posix-sub528195
-Ref: table-gensub-escapes529740
-Ref: Gory Details-Footnote-1530916
-Ref: Gory Details-Footnote-2530967
-Node: I/O Functions531118
-Ref: I/O Functions-Footnote-1538241
-Node: Time Functions538388
-Ref: Time Functions-Footnote-1548852
-Ref: Time Functions-Footnote-2548920
-Ref: Time Functions-Footnote-3549078
-Ref: Time Functions-Footnote-4549189
-Ref: Time Functions-Footnote-5549301
-Ref: Time Functions-Footnote-6549528
-Node: Bitwise Functions549794
-Ref: table-bitwise-ops550356
-Ref: Bitwise Functions-Footnote-1554601
-Node: Type Functions554785
-Node: I18N Functions555927
-Node: User-defined557572
-Node: Definition Syntax558376
-Ref: Definition Syntax-Footnote-1563555
-Node: Function Example563624
-Ref: Function Example-Footnote-1566268
-Node: Function Caveats566290
-Node: Calling A Function566808
-Node: Variable Scope567763
-Node: Pass By Value/Reference570751
-Node: Return Statement574259
-Node: Dynamic Typing577243
-Node: Indirect Calls578172
-Node: Functions Summary587885
-Node: Library Functions590424
-Ref: Library Functions-Footnote-1594042
-Ref: Library Functions-Footnote-2594185
-Node: Library Names594356
-Ref: Library Names-Footnote-1597829
-Ref: Library Names-Footnote-2598049
-Node: General Functions598135
-Node: Strtonum Function599163
-Node: Assert Function601943
-Node: Round Function605269
-Node: Cliff Random Function606810
-Node: Ordinal Functions607826
-Ref: Ordinal Functions-Footnote-1610903
-Ref: Ordinal Functions-Footnote-2611155
-Node: Join Function611366
-Ref: Join Function-Footnote-1613137
-Node: Getlocaltime Function613337
-Node: Readfile Function617073
-Node: Data File Management618912
-Node: Filetrans Function619544
-Node: Rewind Function623613
-Node: File Checking625000
-Ref: File Checking-Footnote-1626132
-Node: Empty Files626333
-Node: Ignoring Assigns628312
-Node: Getopt Function629866
-Ref: Getopt Function-Footnote-1641169
-Node: Passwd Functions641372
-Ref: Passwd Functions-Footnote-1650351
-Node: Group Functions650439
-Ref: Group Functions-Footnote-1658380
-Node: Walking Arrays658593
-Node: Library Functions Summary660196
-Node: Library exercises661584
-Node: Sample Programs662864
-Node: Running Examples663634
-Node: Clones664362
-Node: Cut Program665586
-Node: Egrep Program675454
-Ref: Egrep Program-Footnote-1683425
-Node: Id Program683535
-Node: Split Program687199
-Ref: Split Program-Footnote-1690737
-Node: Tee Program690865
-Node: Uniq Program693672
-Node: Wc Program701102
-Ref: Wc Program-Footnote-1705367
-Node: Miscellaneous Programs705459
-Node: Dupword Program706672
-Node: Alarm Program708703
-Node: Translate Program713517
-Ref: Translate Program-Footnote-1717908
-Ref: Translate Program-Footnote-2718178
-Node: Labels Program718312
-Ref: Labels Program-Footnote-1721683
-Node: Word Sorting721767
-Node: History Sorting725810
-Node: Extract Program727646
-Node: Simple Sed735182
-Node: Igawk Program738244
-Ref: Igawk Program-Footnote-1752555
-Ref: Igawk Program-Footnote-2752756
-Node: Anagram Program752894
-Node: Signature Program755962
-Node: Programs Summary757209
-Node: Programs Exercises758424
-Node: Advanced Features762075
-Node: Nondecimal Data764023
-Node: Array Sorting765600
-Node: Controlling Array Traversal766297
-Node: Array Sorting Functions774577
-Ref: Array Sorting Functions-Footnote-1778484
-Node: Two-way I/O778678
-Ref: Two-way I/O-Footnote-1784194
-Node: TCP/IP Networking784276
-Node: Profiling787120
-Node: Advanced Features Summary794671
-Node: Internationalization796535
-Node: I18N and L10N798015
-Node: Explaining gettext798701
-Ref: Explaining gettext-Footnote-1803841
-Ref: Explaining gettext-Footnote-2804025
-Node: Programmer i18n804190
-Node: Translator i18n808415
-Node: String Extraction809209
-Ref: String Extraction-Footnote-1810170
-Node: Printf Ordering810256
-Ref: Printf Ordering-Footnote-1813038
-Node: I18N Portability813102
-Ref: I18N Portability-Footnote-1815551
-Node: I18N Example815614
-Ref: I18N Example-Footnote-1818336
-Node: Gawk I18N818408
-Node: I18N Summary819046
-Node: Debugger820385
-Node: Debugging821407
-Node: Debugging Concepts821848
-Node: Debugging Terms823704
-Node: Awk Debugging826301
-Node: Sample Debugging Session827193
-Node: Debugger Invocation827713
-Node: Finding The Bug829046
-Node: List of Debugger Commands835528
-Node: Breakpoint Control836860
-Node: Debugger Execution Control840524
-Node: Viewing And Changing Data843884
-Node: Execution Stack847242
-Node: Debugger Info848755
-Node: Miscellaneous Debugger Commands852749
-Node: Readline Support857933
-Node: Limitations858825
-Node: Debugging Summary861099
-Node: Arbitrary Precision Arithmetic862263
-Node: Computer Arithmetic863592
-Ref: Computer Arithmetic-Footnote-1867979
-Node: Math Definitions868036
-Ref: table-ieee-formats870920
-Node: MPFR features871424
-Node: FP Math Caution873066
-Ref: FP Math Caution-Footnote-1874107
-Node: Inexactness of computations874476
-Node: Inexact representation875424
-Node: Comparing FP Values876779
-Node: Errors accumulate877743
-Node: Getting Accuracy879176
-Node: Try To Round881835
-Node: Setting precision882734
-Ref: table-predefined-precision-strings883416
-Node: Setting the rounding mode885209
-Ref: table-gawk-rounding-modes885573
-Ref: Setting the rounding mode-Footnote-1889027
-Node: Arbitrary Precision Integers889206
-Ref: Arbitrary Precision Integers-Footnote-1893001
-Node: POSIX Floating Point Problems893150
-Ref: POSIX Floating Point Problems-Footnote-1897026
-Node: Floating point summary897064
-Node: Dynamic Extensions899281
-Node: Extension Intro900833
-Node: Plugin License902098
-Node: Extension Mechanism Outline902783
-Ref: figure-load-extension903207
-Ref: figure-load-new-function904692
-Ref: figure-call-new-function905694
-Node: Extension API Description907678
-Node: Extension API Functions Introduction909128
-Node: General Data Types913993
-Ref: General Data Types-Footnote-1919686
-Node: Requesting Values919985
-Ref: table-value-types-returned920722
-Node: Memory Allocation Functions921680
-Ref: Memory Allocation Functions-Footnote-1924427
-Node: Constructor Functions924523
-Node: Registration Functions926281
-Node: Extension Functions926966
-Node: Exit Callback Functions929268
-Node: Extension Version String930517
-Node: Input Parsers931167
-Node: Output Wrappers940970
-Node: Two-way processors945486
-Node: Printing Messages947690
-Ref: Printing Messages-Footnote-1948767
-Node: Updating `ERRNO'948919
-Node: Accessing Parameters949658
-Node: Symbol Table Access950888
-Node: Symbol table by name951402
-Node: Symbol table by cookie953378
-Ref: Symbol table by cookie-Footnote-1957511
-Node: Cached values957574
-Ref: Cached values-Footnote-1961078
-Node: Array Manipulation961169
-Ref: Array Manipulation-Footnote-1962267
-Node: Array Data Types962306
-Ref: Array Data Types-Footnote-1965009
-Node: Array Functions965101
-Node: Flattening Arrays968975
-Node: Creating Arrays975827
-Node: Extension API Variables980558
-Node: Extension Versioning981194
-Node: Extension API Informational Variables983095
-Node: Extension API Boilerplate984181
-Node: Finding Extensions987985
-Node: Extension Example988545
-Node: Internal File Description989275
-Node: Internal File Ops993366
-Ref: Internal File Ops-Footnote-11004798
-Node: Using Internal File Ops1004938
-Ref: Using Internal File Ops-Footnote-11007285
-Node: Extension Samples1007553
-Node: Extension Sample File Functions1009077
-Node: Extension Sample Fnmatch1016645
-Node: Extension Sample Fork1018127
-Node: Extension Sample Inplace1019340
-Node: Extension Sample Ord1021015
-Node: Extension Sample Readdir1021851
-Ref: table-readdir-file-types1022707
-Node: Extension Sample Revout1023506
-Node: Extension Sample Rev2way1024097
-Node: Extension Sample Read write array1024838
-Node: Extension Sample Readfile1026717
-Node: Extension Sample API Tests1027817
-Node: Extension Sample Time1028342
-Node: gawkextlib1029657
-Node: Extension summary1032470
-Node: Extension Exercises1036163
-Node: Language History1036885
-Node: V7/SVR3.11038528
-Node: SVR41040848
-Node: POSIX1042290
-Node: BTL1043676
-Node: POSIX/GNU1044410
-Node: Feature History1050009
-Node: Common Extensions1063139
-Node: Ranges and Locales1064451
-Ref: Ranges and Locales-Footnote-11069068
-Ref: Ranges and Locales-Footnote-21069095
-Ref: Ranges and Locales-Footnote-31069329
-Node: Contributors1069550
-Node: History summary1074975
-Node: Installation1076344
-Node: Gawk Distribution1077295
-Node: Getting1077779
-Node: Extracting1078603
-Node: Distribution contents1080245
-Node: Unix Installation1086015
-Node: Quick Installation1086632
-Node: Additional Configuration Options1089074
-Node: Configuration Philosophy1090812
-Node: Non-Unix Installation1093163
-Node: PC Installation1093621
-Node: PC Binary Installation1094932
-Node: PC Compiling1096780
-Ref: PC Compiling-Footnote-11099779
-Node: PC Testing1099884
-Node: PC Using1101060
-Node: Cygwin1105218
-Node: MSYS1106027
-Node: VMS Installation1106541
-Node: VMS Compilation1107337
-Ref: VMS Compilation-Footnote-11108559
-Node: VMS Dynamic Extensions1108617
-Node: VMS Installation Details1109990
-Node: VMS Running1112242
-Node: VMS GNV1115076
-Node: VMS Old Gawk1115799
-Node: Bugs1116269
-Node: Other Versions1120273
-Node: Installation summary1126528
-Node: Notes1127584
-Node: Compatibility Mode1128449
-Node: Additions1129231
-Node: Accessing The Source1130156
-Node: Adding Code1131592
-Node: New Ports1137770
-Node: Derived Files1142251
-Ref: Derived Files-Footnote-11147332
-Ref: Derived Files-Footnote-21147366
-Ref: Derived Files-Footnote-31147962
-Node: Future Extensions1148076
-Node: Implementation Limitations1148682
-Node: Extension Design1149930
-Node: Old Extension Problems1151084
-Ref: Old Extension Problems-Footnote-11152601
-Node: Extension New Mechanism Goals1152658
-Ref: Extension New Mechanism Goals-Footnote-11156018
-Node: Extension Other Design Decisions1156207
-Node: Extension Future Growth1158313
-Node: Old Extension Mechanism1159149
-Node: Notes summary1160911
-Node: Basic Concepts1162097
-Node: Basic High Level1162778
-Ref: figure-general-flow1163050
-Ref: figure-process-flow1163649
-Ref: Basic High Level-Footnote-11166878
-Node: Basic Data Typing1167063
-Node: Glossary1170391
-Node: Copying1195543
-Node: GNU Free Documentation License1233099
-Node: Index1258235
+Node: Format Modifiers279452
+Node: Printf Examples285479
+Node: Redirection287943
+Node: Special Files294915
+Node: Special FD295446
+Ref: Special FD-Footnote-1299070
+Node: Special Network299144
+Node: Special Caveats299994
+Node: Close Files And Pipes300790
+Ref: Close Files And Pipes-Footnote-1307951
+Ref: Close Files And Pipes-Footnote-2308099
+Node: Output Summary308249
+Node: Output exercises309246
+Node: Expressions309926
+Node: Values311111
+Node: Constants311787
+Node: Scalar Constants312467
+Ref: Scalar Constants-Footnote-1313326
+Node: Nondecimal-numbers313576
+Node: Regexp Constants316576
+Node: Using Constant Regexps317051
+Node: Variables320121
+Node: Using Variables320776
+Node: Assignment Options322500
+Node: Conversion324375
+Node: Strings And Numbers324899
+Ref: Strings And Numbers-Footnote-1327961
+Node: Locale influences conversions328070
+Ref: table-locale-affects330787
+Node: All Operators331375
+Node: Arithmetic Ops332005
+Node: Concatenation334510
+Ref: Concatenation-Footnote-1337306
+Node: Assignment Ops337426
+Ref: table-assign-ops342409
+Node: Increment Ops343726
+Node: Truth Values and Conditions347164
+Node: Truth Values348247
+Node: Typing and Comparison349296
+Node: Variable Typing350089
+Ref: Variable Typing-Footnote-1353989
+Node: Comparison Operators354111
+Ref: table-relational-ops354521
+Node: POSIX String Comparison358071
+Ref: POSIX String Comparison-Footnote-1359155
+Node: Boolean Ops359293
+Ref: Boolean Ops-Footnote-1363363
+Node: Conditional Exp363454
+Node: Function Calls365181
+Node: Precedence369061
+Node: Locales372730
+Node: Expressions Summary374361
+Node: Patterns and Actions376902
+Node: Pattern Overview378018
+Node: Regexp Patterns379695
+Node: Expression Patterns380238
+Node: Ranges384019
+Node: BEGIN/END387125
+Node: Using BEGIN/END387887
+Ref: Using BEGIN/END-Footnote-1390623
+Node: I/O And BEGIN/END390729
+Node: BEGINFILE/ENDFILE393014
+Node: Empty395945
+Node: Using Shell Variables396262
+Node: Action Overview398545
+Node: Statements400872
+Node: If Statement402720
+Node: While Statement404218
+Node: Do Statement406262
+Node: For Statement407418
+Node: Switch Statement410570
+Node: Break Statement412673
+Node: Continue Statement414728
+Node: Next Statement416521
+Node: Nextfile Statement418911
+Node: Exit Statement421566
+Node: Built-in Variables423970
+Node: User-modified425097
+Ref: User-modified-Footnote-1432786
+Node: Auto-set432848
+Ref: Auto-set-Footnote-1445767
+Ref: Auto-set-Footnote-2445972
+Node: ARGC and ARGV446028
+Node: Pattern Action Summary449882
+Node: Arrays452105
+Node: Array Basics453654
+Node: Array Intro454480
+Ref: figure-array-elements456453
+Node: Reference to Elements458860
+Node: Assigning Elements461133
+Node: Array Example461624
+Node: Scanning an Array463356
+Node: Controlling Scanning466371
+Ref: Controlling Scanning-Footnote-1471544
+Node: Delete471860
+Ref: Delete-Footnote-1474625
+Node: Numeric Array Subscripts474682
+Node: Uninitialized Subscripts476865
+Node: Multidimensional478490
+Node: Multiscanning481583
+Node: Arrays of Arrays483172
+Node: Arrays Summary487835
+Node: Functions489940
+Node: Built-in490813
+Node: Calling Built-in491891
+Node: Numeric Functions493879
+Ref: Numeric Functions-Footnote-1498515
+Ref: Numeric Functions-Footnote-2498872
+Ref: Numeric Functions-Footnote-3498920
+Node: String Functions499189
+Ref: String Functions-Footnote-1522200
+Ref: String Functions-Footnote-2522329
+Ref: String Functions-Footnote-3522577
+Node: Gory Details522664
+Ref: table-sub-escapes524333
+Ref: table-sub-posix-92525687
+Ref: table-sub-proposed527038
+Ref: table-posix-sub528392
+Ref: table-gensub-escapes529937
+Ref: Gory Details-Footnote-1531113
+Ref: Gory Details-Footnote-2531164
+Node: I/O Functions531315
+Ref: I/O Functions-Footnote-1538438
+Node: Time Functions538585
+Ref: Time Functions-Footnote-1549049
+Ref: Time Functions-Footnote-2549117
+Ref: Time Functions-Footnote-3549275
+Ref: Time Functions-Footnote-4549386
+Ref: Time Functions-Footnote-5549498
+Ref: Time Functions-Footnote-6549725
+Node: Bitwise Functions549991
+Ref: table-bitwise-ops550553
+Ref: Bitwise Functions-Footnote-1554798
+Node: Type Functions554982
+Node: I18N Functions556124
+Node: User-defined557769
+Node: Definition Syntax558573
+Ref: Definition Syntax-Footnote-1563752
+Node: Function Example563821
+Ref: Function Example-Footnote-1566465
+Node: Function Caveats566487
+Node: Calling A Function567005
+Node: Variable Scope567960
+Node: Pass By Value/Reference570948
+Node: Return Statement574456
+Node: Dynamic Typing577440
+Node: Indirect Calls578369
+Node: Functions Summary588082
+Node: Library Functions590621
+Ref: Library Functions-Footnote-1594239
+Ref: Library Functions-Footnote-2594382
+Node: Library Names594553
+Ref: Library Names-Footnote-1598026
+Ref: Library Names-Footnote-2598246
+Node: General Functions598332
+Node: Strtonum Function599360
+Node: Assert Function602140
+Node: Round Function605466
+Node: Cliff Random Function607007
+Node: Ordinal Functions608023
+Ref: Ordinal Functions-Footnote-1611100
+Ref: Ordinal Functions-Footnote-2611352
+Node: Join Function611563
+Ref: Join Function-Footnote-1613334
+Node: Getlocaltime Function613534
+Node: Readfile Function617270
+Node: Data File Management619109
+Node: Filetrans Function619741
+Node: Rewind Function623810
+Node: File Checking625368
+Ref: File Checking-Footnote-1626500
+Node: Empty Files626701
+Node: Ignoring Assigns628680
+Node: Getopt Function630234
+Ref: Getopt Function-Footnote-1641537
+Node: Passwd Functions641740
+Ref: Passwd Functions-Footnote-1650719
+Node: Group Functions650807
+Ref: Group Functions-Footnote-1658748
+Node: Walking Arrays658961
+Node: Library Functions Summary660564
+Node: Library exercises661952
+Node: Sample Programs663232
+Node: Running Examples664002
+Node: Clones664730
+Node: Cut Program665954
+Node: Egrep Program675822
+Ref: Egrep Program-Footnote-1683793
+Node: Id Program683903
+Node: Split Program687567
+Ref: Split Program-Footnote-1691105
+Node: Tee Program691233
+Node: Uniq Program694040
+Node: Wc Program701470
+Ref: Wc Program-Footnote-1705735
+Node: Miscellaneous Programs705827
+Node: Dupword Program707040
+Node: Alarm Program709071
+Node: Translate Program713885
+Ref: Translate Program-Footnote-1718276
+Ref: Translate Program-Footnote-2718546
+Node: Labels Program718680
+Ref: Labels Program-Footnote-1722051
+Node: Word Sorting722135
+Node: History Sorting726178
+Node: Extract Program728014
+Node: Simple Sed735550
+Node: Igawk Program738612
+Ref: Igawk Program-Footnote-1752923
+Ref: Igawk Program-Footnote-2753124
+Node: Anagram Program753262
+Node: Signature Program756330
+Node: Programs Summary757577
+Node: Programs Exercises758792
+Node: Advanced Features762443
+Node: Nondecimal Data764391
+Node: Array Sorting765968
+Node: Controlling Array Traversal766665
+Node: Array Sorting Functions774945
+Ref: Array Sorting Functions-Footnote-1778852
+Node: Two-way I/O779046
+Ref: Two-way I/O-Footnote-1784562
+Node: TCP/IP Networking784644
+Node: Profiling787488
+Node: Advanced Features Summary795039
+Node: Internationalization796903
+Node: I18N and L10N798383
+Node: Explaining gettext799069
+Ref: Explaining gettext-Footnote-1804209
+Ref: Explaining gettext-Footnote-2804393
+Node: Programmer i18n804558
+Node: Translator i18n808783
+Node: String Extraction809577
+Ref: String Extraction-Footnote-1810538
+Node: Printf Ordering810624
+Ref: Printf Ordering-Footnote-1813406
+Node: I18N Portability813470
+Ref: I18N Portability-Footnote-1815919
+Node: I18N Example815982
+Ref: I18N Example-Footnote-1818704
+Node: Gawk I18N818776
+Node: I18N Summary819414
+Node: Debugger820753
+Node: Debugging821775
+Node: Debugging Concepts822216
+Node: Debugging Terms824072
+Node: Awk Debugging826669
+Node: Sample Debugging Session827561
+Node: Debugger Invocation828081
+Node: Finding The Bug829414
+Node: List of Debugger Commands835896
+Node: Breakpoint Control837228
+Node: Debugger Execution Control840892
+Node: Viewing And Changing Data844252
+Node: Execution Stack847610
+Node: Debugger Info849123
+Node: Miscellaneous Debugger Commands853117
+Node: Readline Support858301
+Node: Limitations859193
+Node: Debugging Summary861467
+Node: Arbitrary Precision Arithmetic862631
+Node: Computer Arithmetic863960
+Ref: Computer Arithmetic-Footnote-1868347
+Node: Math Definitions868404
+Ref: table-ieee-formats871288
+Node: MPFR features871792
+Node: FP Math Caution873434
+Ref: FP Math Caution-Footnote-1874475
+Node: Inexactness of computations874844
+Node: Inexact representation875792
+Node: Comparing FP Values877147
+Node: Errors accumulate878111
+Node: Getting Accuracy879544
+Node: Try To Round882203
+Node: Setting precision883102
+Ref: table-predefined-precision-strings883784
+Node: Setting the rounding mode885577
+Ref: table-gawk-rounding-modes885941
+Ref: Setting the rounding mode-Footnote-1889395
+Node: Arbitrary Precision Integers889574
+Ref: Arbitrary Precision Integers-Footnote-1893369
+Node: POSIX Floating Point Problems893518
+Ref: POSIX Floating Point Problems-Footnote-1897394
+Node: Floating point summary897432
+Node: Dynamic Extensions899649
+Node: Extension Intro901201
+Node: Plugin License902466
+Node: Extension Mechanism Outline903151
+Ref: figure-load-extension903575
+Ref: figure-load-new-function905060
+Ref: figure-call-new-function906062
+Node: Extension API Description908046
+Node: Extension API Functions Introduction909496
+Node: General Data Types914361
+Ref: General Data Types-Footnote-1920054
+Node: Requesting Values920353
+Ref: table-value-types-returned921090
+Node: Memory Allocation Functions922048
+Ref: Memory Allocation Functions-Footnote-1924795
+Node: Constructor Functions924891
+Node: Registration Functions926649
+Node: Extension Functions927334
+Node: Exit Callback Functions929636
+Node: Extension Version String930885
+Node: Input Parsers931535
+Node: Output Wrappers941349
+Node: Two-way processors945865
+Node: Printing Messages948069
+Ref: Printing Messages-Footnote-1949146
+Node: Updating `ERRNO'949298
+Node: Accessing Parameters950037
+Node: Symbol Table Access951267
+Node: Symbol table by name951781
+Node: Symbol table by cookie953757
+Ref: Symbol table by cookie-Footnote-1957890
+Node: Cached values957953
+Ref: Cached values-Footnote-1961457
+Node: Array Manipulation961548
+Ref: Array Manipulation-Footnote-1962646
+Node: Array Data Types962685
+Ref: Array Data Types-Footnote-1965388
+Node: Array Functions965480
+Node: Flattening Arrays969354
+Node: Creating Arrays976206
+Node: Extension API Variables980937
+Node: Extension Versioning981573
+Node: Extension API Informational Variables983474
+Node: Extension API Boilerplate984560
+Node: Finding Extensions988364
+Node: Extension Example988924
+Node: Internal File Description989654
+Node: Internal File Ops993745
+Ref: Internal File Ops-Footnote-11005177
+Node: Using Internal File Ops1005317
+Ref: Using Internal File Ops-Footnote-11007664
+Node: Extension Samples1007932
+Node: Extension Sample File Functions1009456
+Node: Extension Sample Fnmatch1017024
+Node: Extension Sample Fork1018506
+Node: Extension Sample Inplace1019719
+Node: Extension Sample Ord1021394
+Node: Extension Sample Readdir1022230
+Ref: table-readdir-file-types1023086
+Node: Extension Sample Revout1023885
+Node: Extension Sample Rev2way1024476
+Node: Extension Sample Read write array1025217
+Node: Extension Sample Readfile1027096
+Node: Extension Sample API Tests1028196
+Node: Extension Sample Time1028721
+Node: gawkextlib1030036
+Node: Extension summary1032849
+Node: Extension Exercises1036542
+Node: Language History1037264
+Node: V7/SVR3.11038907
+Node: SVR41041227
+Node: POSIX1042669
+Node: BTL1044055
+Node: POSIX/GNU1044789
+Node: Feature History1050532
+Node: Common Extensions1063662
+Node: Ranges and Locales1064974
+Ref: Ranges and Locales-Footnote-11069591
+Ref: Ranges and Locales-Footnote-21069618
+Ref: Ranges and Locales-Footnote-31069852
+Node: Contributors1070073
+Node: History summary1075498
+Node: Installation1076867
+Node: Gawk Distribution1077818
+Node: Getting1078302
+Node: Extracting1079126
+Node: Distribution contents1080768
+Node: Unix Installation1086538
+Node: Quick Installation1087155
+Node: Additional Configuration Options1089597
+Node: Configuration Philosophy1091335
+Node: Non-Unix Installation1093686
+Node: PC Installation1094144
+Node: PC Binary Installation1095455
+Node: PC Compiling1097303
+Ref: PC Compiling-Footnote-11100302
+Node: PC Testing1100407
+Node: PC Using1101583
+Node: Cygwin1105741
+Node: MSYS1106550
+Node: VMS Installation1107064
+Node: VMS Compilation1107860
+Ref: VMS Compilation-Footnote-11109082
+Node: VMS Dynamic Extensions1109140
+Node: VMS Installation Details1110513
+Node: VMS Running1112765
+Node: VMS GNV1115599
+Node: VMS Old Gawk1116322
+Node: Bugs1116792
+Node: Other Versions1120796
+Node: Installation summary1127051
+Node: Notes1128107
+Node: Compatibility Mode1128972
+Node: Additions1129754
+Node: Accessing The Source1130679
+Node: Adding Code1132115
+Node: New Ports1138293
+Node: Derived Files1142774
+Ref: Derived Files-Footnote-11147855
+Ref: Derived Files-Footnote-21147889
+Ref: Derived Files-Footnote-31148485
+Node: Future Extensions1148599
+Node: Implementation Limitations1149205
+Node: Extension Design1150453
+Node: Old Extension Problems1151607
+Ref: Old Extension Problems-Footnote-11153124
+Node: Extension New Mechanism Goals1153181
+Ref: Extension New Mechanism Goals-Footnote-11156541
+Node: Extension Other Design Decisions1156730
+Node: Extension Future Growth1158836
+Node: Old Extension Mechanism1159672
+Node: Notes summary1161434
+Node: Basic Concepts1162620
+Node: Basic High Level1163301
+Ref: figure-general-flow1163573
+Ref: figure-process-flow1164172
+Ref: Basic High Level-Footnote-11167401
+Node: Basic Data Typing1167586
+Node: Glossary1170914
+Node: Copying1196066
+Node: GNU Free Documentation License1233622
+Node: Index1258758

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index d6db2018..f2b455b4 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -1731,6 +1731,16 @@ another key, at the same time. For example, a @kbd{Ctrl-d} is typed
by first pressing and holding the @kbd{CONTROL} key, next
pressing the @kbd{d} key and finally releasing both keys.
+@ifset FOR_PRINT
+@quotation NOTE
+Notes of interest look like this.
+@end quotation
+
+@quotation CAUTION
+Cautionary or warning notes look like this.
+@end quotation
+@end ifset
+
@c fakenode --- for prepinfo
@unnumberedsubsec Dark Corners
@cindex Kernighan, Brian
@@ -9022,6 +9032,8 @@ and then to print the multibyte encoding of that character.
Similarly, when printing a numeric value, @command{gawk} allows the
value to be within the numeric range of values that can be held
in a wide character.
+If the conversion to multibyte encoding fails, @command{gawk}
+uses the low eight bits of the value as the character to print.
Other @command{awk} versions generally restrict themselves to printing
the first byte of a string or to numeric values within the range of
@@ -16619,13 +16631,14 @@ Return the cosine of @var{x}, with @var{x} in radians.
@cindex div
Perform integer division, similar to the standard C function of the
same name. First, truncate @code{numerator} and @code{denominator}
-to integers. Clear the @code{result} array, and then set
-@code{result["quotient"]} to the result of @samp{numerator / denominator},
-truncated to an integer, and set @code{result["remainder"]} to the result
-of @samp{numerator % denominator}, truncated to an integer.
-This function is primarily intended for use with arbitrary length
-integers; it avoids creating MPFR arbitrary precision floating-point
-values (@pxref{Arbitrary Precision Integers}).
+towards zero, creating integer values. Clear the @code{result}
+array, and then set @code{result["quotient"]} to the result of
+@samp{numerator / denominator}, truncated towards zero to an integer,
+and set @code{result["remainder"]} to the result of @samp{numerator %
+denominator}, truncated towards zero to an integer. This function is
+primarily intended for use with arbitrary length integers; it avoids
+creating MPFR arbitrary precision floating-point values (@pxref{Arbitrary
+Precision Integers}).
This function is a @code{gawk} extension. It is not available in
compatibility mode (@pxref{Options}).
@@ -21325,7 +21338,9 @@ to either update @code{ARGIND} on your own
or modify this code as appropriate.
The @code{rewind()} function also relies on the @code{nextfile} keyword
-(@pxref{Nextfile Statement}).
+(@pxref{Nextfile Statement}). Because of this, you should not call it
+from an @code{ENDFILE} rule. (This isn't necessary anyway, since as soon
+as an @code{ENDFILE} rule finishes @command{gawk} goes to the next file!)
@node File Checking
@subsection Checking for Readable @value{DDF}s
@@ -31871,8 +31886,8 @@ need to test for a @code{NULL} value. @command{gawk} sets @code{*errcode}
to zero, so there is no need to set it unless an error occurs.
If an error does occur, the function should return @code{EOF} and set
-@code{*errcode} to a non-zero value. In that case, if @code{*errcode}
-does not equal @minus{}1, @command{gawk} automatically updates
+@code{*errcode} to a value greater than zero. In that case, if @code{*errcode}
+does not equal zero, @command{gawk} automatically updates
the @code{ERRNO} variable based on the value of @code{*errcode}.
(In general, setting @samp{*errcode = errno} should do the right thing.)
@@ -35377,6 +35392,16 @@ GCC for VAX and Alpha has not been tested for a while.
@end itemize
+@item
+Support for the following obsolete systems was removed from the code
+and the documentation for @command{gawk} @value{PVERSION} 4.1:
+
+@c nested table
+@itemize @value{MINUS}
+@item
+Ultrix
+@end itemize
+
@end itemize
@c XXX ADD MORE STUFF HERE
diff --git a/doc/gawktexi.in b/doc/gawktexi.in
index 2d749e48..bb94aa1f 100644
--- a/doc/gawktexi.in
+++ b/doc/gawktexi.in
@@ -1698,6 +1698,16 @@ another key, at the same time. For example, a @kbd{Ctrl-d} is typed
by first pressing and holding the @kbd{CONTROL} key, next
pressing the @kbd{d} key and finally releasing both keys.
+@ifset FOR_PRINT
+@quotation NOTE
+Notes of interest look like this.
+@end quotation
+
+@quotation CAUTION
+Cautionary or warning notes look like this.
+@end quotation
+@end ifset
+
@c fakenode --- for prepinfo
@unnumberedsubsec Dark Corners
@cindex Kernighan, Brian
@@ -8641,6 +8651,8 @@ and then to print the multibyte encoding of that character.
Similarly, when printing a numeric value, @command{gawk} allows the
value to be within the numeric range of values that can be held
in a wide character.
+If the conversion to multibyte encoding fails, @command{gawk}
+uses the low eight bits of the value as the character to print.
Other @command{awk} versions generally restrict themselves to printing
the first byte of a string or to numeric values within the range of
@@ -15924,13 +15936,14 @@ Return the cosine of @var{x}, with @var{x} in radians.
@cindex div
Perform integer division, similar to the standard C function of the
same name. First, truncate @code{numerator} and @code{denominator}
-to integers. Clear the @code{result} array, and then set
-@code{result["quotient"]} to the result of @samp{numerator / denominator},
-truncated to an integer, and set @code{result["remainder"]} to the result
-of @samp{numerator % denominator}, truncated to an integer.
-This function is primarily intended for use with arbitrary length
-integers; it avoids creating MPFR arbitrary precision floating-point
-values (@pxref{Arbitrary Precision Integers}).
+towards zero, creating integer values. Clear the @code{result}
+array, and then set @code{result["quotient"]} to the result of
+@samp{numerator / denominator}, truncated towards zero to an integer,
+and set @code{result["remainder"]} to the result of @samp{numerator %
+denominator}, truncated towards zero to an integer. This function is
+primarily intended for use with arbitrary length integers; it avoids
+creating MPFR arbitrary precision floating-point values (@pxref{Arbitrary
+Precision Integers}).
This function is a @code{gawk} extension. It is not available in
compatibility mode (@pxref{Options}).
@@ -20440,7 +20453,9 @@ to either update @code{ARGIND} on your own
or modify this code as appropriate.
The @code{rewind()} function also relies on the @code{nextfile} keyword
-(@pxref{Nextfile Statement}).
+(@pxref{Nextfile Statement}). Because of this, you should not call it
+from an @code{ENDFILE} rule. (This isn't necessary anyway, since as soon
+as an @code{ENDFILE} rule finishes @command{gawk} goes to the next file!)
@node File Checking
@subsection Checking for Readable @value{DDF}s
@@ -30986,8 +31001,8 @@ need to test for a @code{NULL} value. @command{gawk} sets @code{*errcode}
to zero, so there is no need to set it unless an error occurs.
If an error does occur, the function should return @code{EOF} and set
-@code{*errcode} to a non-zero value. In that case, if @code{*errcode}
-does not equal @minus{}1, @command{gawk} automatically updates
+@code{*errcode} to a value greater than zero. In that case, if @code{*errcode}
+does not equal zero, @command{gawk} automatically updates
the @code{ERRNO} variable based on the value of @code{*errcode}.
(In general, setting @samp{*errcode = errno} should do the right thing.)
@@ -34492,6 +34507,16 @@ GCC for VAX and Alpha has not been tested for a while.
@end itemize
+@item
+Support for the following obsolete systems was removed from the code
+and the documentation for @command{gawk} @value{PVERSION} 4.1:
+
+@c nested table
+@itemize @value{MINUS}
+@item
+Ultrix
+@end itemize
+
@end itemize
@c XXX ADD MORE STUFF HERE
diff --git a/extension/ChangeLog b/extension/ChangeLog
index f3a1c7a8..ab3d62c0 100644
--- a/extension/ChangeLog
+++ b/extension/ChangeLog
@@ -1,3 +1,11 @@
+2014-06-13 Paul Gortmaker <paul.gortmaker@windriver.com>
+
+ * Makefile.am (uninstall-so): Came across below bug while cross
+ compiling, and changed both install-data-hook and uninstall-so
+ to use $(DESTDIR) on v4.1.1 before seeing most of the fix in
+ gawk-4.1.1-3-g976f73ab0356; here we ensure uninstall-so also
+ uses the $(DESTDIR) prefix on its use of pkgextensiondir.
+
2014-04-11 Arnold D. Robbins <arnold@skeeve.com>
* Makefile.am (install-data-hook): Use $(DESTDIR) when removing
diff --git a/extension/Makefile.am b/extension/Makefile.am
index 11826e2b..b6beaee3 100644
--- a/extension/Makefile.am
+++ b/extension/Makefile.am
@@ -105,7 +105,7 @@ install-data-hook:
# Keep the uninstall check working:
uninstall-so:
- $(RM) $(pkgextensiondir)/*.so
+ $(RM) $(DESTDIR)$(pkgextensiondir)/*.so
uninstall-recursive: uninstall-so
diff --git a/extension/Makefile.in b/extension/Makefile.in
index d81b1696..294e4f88 100644
--- a/extension/Makefile.in
+++ b/extension/Makefile.in
@@ -1236,7 +1236,7 @@ install-data-hook:
# Keep the uninstall check working:
uninstall-so:
- $(RM) $(pkgextensiondir)/*.so
+ $(RM) $(DESTDIR)$(pkgextensiondir)/*.so
uninstall-recursive: uninstall-so
diff --git a/gawkapi.h b/gawkapi.h
index 5ccadc21..090cf797 100644
--- a/gawkapi.h
+++ b/gawkapi.h
@@ -142,8 +142,8 @@ typedef struct awk_input {
* so there is no need to set it unless an error occurs.
*
* If an error does occur, the function should return EOF and set
- * *errcode to a non-zero value. In that case, if *errcode does not
- * equal -1, gawk will automatically update the ERRNO variable based
+ * *errcode to a positive value. In that case, if *errcode is greater
+ * than zero, gawk will automatically update the ERRNO variable based
* on the value of *errcode (e.g., setting *errcode = errno should do
* the right thing).
*/
diff --git a/interpret.h b/interpret.h
index 27f194ae..c26a9d46 100644
--- a/interpret.h
+++ b/interpret.h
@@ -1191,10 +1191,13 @@ match_re:
JUMPTO(ni);
}
- if (inrec(curfile, & errcode) != 0) {
- if (errcode > 0 && (do_traditional || ! pc->has_endfile))
- fatal(_("error reading input file `%s': %s"),
+ if (! inrec(curfile, & errcode)) {
+ if (errcode > 0) {
+ update_ERRNO_int(errcode);
+ if (do_traditional || ! pc->has_endfile)
+ fatal(_("error reading input file `%s': %s"),
curfile->public.name, strerror(errcode));
+ }
JUMPTO(ni);
} /* else
diff --git a/io.c b/io.c
index 57d4af22..7930904d 100644
--- a/io.c
+++ b/io.c
@@ -574,12 +574,12 @@ set_NR()
/* inrec --- This reads in a record from the input file */
-int
+bool
inrec(IOBUF *iop, int *errcode)
{
char *begin;
int cnt;
- int retval = 0;
+ bool retval = true;
if (at_eof(iop) && no_data_left(iop))
cnt = EOF;
@@ -589,13 +589,13 @@ inrec(IOBUF *iop, int *errcode)
cnt = get_a_record(& begin, iop, errcode);
if (cnt == EOF) {
- retval = 1;
- if (*errcode > 0)
- update_ERRNO_int(*errcode);
+ retval = false;
} else {
INCREMENT_REC(NR);
INCREMENT_REC(FNR);
set_record(begin, cnt);
+ if (*errcode > 0)
+ retval = false;
}
return retval;
diff --git a/main.c b/main.c
index 901bfea5..7f1595b8 100644
--- a/main.c
+++ b/main.c
@@ -472,6 +472,8 @@ main(int argc, char **argv)
case 'M':
#ifdef HAVE_MPFR
do_flags |= DO_MPFR;
+#else
+ warning(_("-M ignored: MPFR/GMP support not compiled in"));
#endif
break;
@@ -752,6 +754,11 @@ out:
if (do_dump_vars)
dump_vars(varfile);
+#ifdef HAVE_MPFR
+ if (do_mpfr)
+ cleanup_mpfr();
+#endif
+
if (do_tidy_mem)
release_all_vars();
@@ -819,9 +826,9 @@ usage(int exitval, FILE *fp)
fputs(_("\t-i includefile\t\t--include=includefile\n"), fp);
fputs(_("\t-l library\t\t--load=library\n"), fp);
fputs(_("\t-L [fatal]\t\t--lint[=fatal]\n"), fp);
- fputs(_("\t-n\t\t\t--non-decimal-data\n"), fp);
fputs(_("\t-M\t\t\t--bignum\n"), fp);
fputs(_("\t-N\t\t\t--use-lc-numeric\n"), fp);
+ fputs(_("\t-n\t\t\t--non-decimal-data\n"), fp);
fputs(_("\t-o[file]\t\t--pretty-print[=file]\n"), fp);
fputs(_("\t-O\t\t\t--optimize\n"), fp);
fputs(_("\t-p[file]\t\t--profile[=file]\n"), fp);
diff --git a/mpfr.c b/mpfr.c
index e9c9d154..758adfb1 100644
--- a/mpfr.c
+++ b/mpfr.c
@@ -89,6 +89,15 @@ init_mpfr(mpfr_prec_t prec, const char *rmode)
register_exec_hook(mpg_interpret, 0);
}
+/* cleanup_mpfr --- clean stuff up, mainly for valgrind */
+
+void
+cleanup_mpfr(void)
+{
+ mpfr_clear(_mpf_t1);
+ mpfr_clear(_mpf_t2);
+}
+
/* mpg_node --- allocate a node to store MPFR float or GMP integer */
NODE *
@@ -688,22 +697,35 @@ do_mpfr_atan2(int nargs)
return res;
}
+/* do_mpfr_func --- run an MPFR function - not inline, for debugging */
-#define SPEC_MATH(X) \
-NODE *t1, *res; \
-mpfr_ptr p1; \
-int tval; \
-t1 = POP_SCALAR(); \
-if (do_lint && (t1->flags & (NUMCUR|NUMBER)) == 0) \
- lintwarn(_("%s: received non-numeric argument"), #X); \
-force_number(t1); \
-p1 = MP_FLOAT(t1); \
-res = mpg_float(); \
-tval = mpfr_##X(res->mpg_numbr, p1, ROUND_MODE); \
-IEEE_FMT(res->mpg_numbr, tval); \
-DEREF(t1); \
-return res
+static inline NODE *
+do_mpfr_func(const char *name,
+ int (*mpfr_func)(), /* putting argument types just gets the compiler confused */
+ int nargs)
+{
+ NODE *t1, *res;
+ mpfr_ptr p1;
+ int tval;
+ t1 = POP_SCALAR();
+ if (do_lint && (t1->flags & (NUMCUR|NUMBER)) == 0)
+ lintwarn(_("%s: received non-numeric argument"), name);
+
+ force_number(t1);
+ p1 = MP_FLOAT(t1);
+ res = mpg_float();
+ mpfr_set_prec(res->mpg_numbr, mpfr_get_prec(p1)); /* needed at least for sqrt() */
+ tval = mpfr_func(res->mpg_numbr, p1, ROUND_MODE);
+ IEEE_FMT(res->mpg_numbr, tval);
+ DEREF(t1);
+ return res;
+}
+
+#define SPEC_MATH(X) \
+NODE *result; \
+result = do_mpfr_func(#X, mpfr_##X, nargs); \
+return result
/* do_mpfr_sin --- do the sin function */
@@ -1239,6 +1261,8 @@ do_mpfr_div(int nargs)
mpz_tdiv_qr(quotient->mpg_i, remainder->mpg_i, num->mpg_i, denom->mpg_i);
unref(num);
unref(denom);
+ unref(numerator);
+ unref(denominator);
sub = make_string("quotient", 8);
lhs = assoc_lookup(result, sub);
@@ -1441,8 +1465,27 @@ mpg_mod(NODE *t1, NODE *t2)
int tval;
if (is_mpg_integer(t1) && is_mpg_integer(t2)) {
+ /*
+ * 8/2014: Originally, this was just
+ *
+ * r = mpg_integer();
+ * mpz_mod(r->mpg_i, t1->mpg_i, t2->mpg_i);
+ *
+ * But that gave very strange results with negative numerator:
+ *
+ * $ ./gawk -M 'BEGIN { print -15 % 7 }'
+ * 6
+ *
+ * So instead we use mpz_tdiv_qr() to get the correct result
+ * and just throw away the quotient. We could not find any
+ * reason why mpz_mod() wasn't working correctly.
+ */
+ NODE *dummy_quotient;
+
r = mpg_integer();
- mpz_mod(r->mpg_i, t1->mpg_i, t2->mpg_i);
+ dummy_quotient = mpg_integer();
+ mpz_tdiv_qr(dummy_quotient->mpg_i, r->mpg_i, t1->mpg_i, t2->mpg_i);
+ unref(dummy_quotient);
} else {
mpfr_ptr p1, p2;
p1 = MP_FLOAT(t1);
diff --git a/po/id.po b/po/id.po
index 5fa3b23a..d1b97f73 100644
--- a/po/id.po
+++ b/po/id.po
@@ -1,14 +1,14 @@
# Pesan bahasa indonesia untuk gawk.
# Copyright (C) 2008 Free Software Foundation, Inc.
# This file is distributed under the same license as the gawk package.
-# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2009.
+# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2009, 2010, 2011, 2012, 2013, 2014.
#
msgid ""
msgstr ""
-"Project-Id-Version: gawk 3.1.6e\n"
+"Project-Id-Version: gawk 4.1.0b\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-03-18 12:00+0200\n"
-"PO-Revision-Date: 2009-07-11 14:00+0700\n"
+"POT-Creation-Date: 2014-01-14 22:23+0200\n"
+"PO-Revision-Date: 2014-08-03 07:30+0700\n"
"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
"Language: id\n"
@@ -16,494 +16,473 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
-#: array.c:103
+#: array.c:256
#, c-format
msgid "from %s"
msgstr "dari %s"
-#: array.c:267
-#, fuzzy
+#: array.c:357
msgid "attempt to use a scalar value as array"
-msgstr "mencoba untuk menggunakan skalar `%s' sebagai sebuah array"
-
-#: array.c:270
-#, c-format
-msgid "attempt to use function `%s' as an array"
-msgstr "mencoba untuk menggunakan fungsi `%s' sebagai sebuah array"
+msgstr "mencoba untuk menggunakan skalar sebagai sebuah array"
-#: array.c:273
+#: array.c:359
#, c-format
msgid "attempt to use scalar parameter `%s' as an array"
msgstr "mencoba untuk menggunakan parameter `%s' sebagai sebuah array"
-#: array.c:276 eval.c:2013
-#, fuzzy, c-format
+#: array.c:362
+#, c-format
msgid "attempt to use scalar `%s' as an array"
msgstr "mencoba untuk menggunakan skalar `%s' sebagai sebuah array"
-#: array.c:321 array.c:648 builtin.c:75 builtin.c:555 builtin.c:597
-#: builtin.c:610 builtin.c:1016 builtin.c:1028 eval.c:1381 eval.c:1385
-#: eval.c:1710 eval.c:1958 eval.c:2026 eval.c:2274
+#: array.c:409 array.c:576 builtin.c:85 builtin.c:1599 builtin.c:1645
+#: builtin.c:1658 builtin.c:2086 builtin.c:2100 eval.c:1122 eval.c:1126
+#: eval.c:1531
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "mencoba menggunakan array `%s' dalam sebuah konteks skalar"
-#: array.c:570
-#, fuzzy, c-format
-msgid "reference to uninitialized element `%s[\"%.*s\"]'"
-msgstr "referensi ke elemen tidak terinisialisasi `%s[\"%s\"]'"
-
-#: array.c:576
-#, c-format
-msgid "subscript of array `%s' is null string"
-msgstr "subscript dari array `%s' adalah string null"
-
-#: array.c:684
+#: array.c:583
#, c-format
msgid "delete: index `%s' not in array `%s'"
msgstr "delete: indeks `%s' tidak dalam array `%s'"
-#: array.c:708
-#, fuzzy, c-format
+#: array.c:597
+#, c-format
msgid "attempt to use scalar `%s[\"%.*s\"]' as an array"
-msgstr "mencoba untuk menggunakan skalar `%s' sebagai sebuah array"
+msgstr "mencoba untuk menggunakan skalar `%s[\"%.*s\"]' sebagai sebuah array"
-#: array.c:871
-#, c-format
-msgid "%s: empty (null)\n"
-msgstr "%s: kosong (null)\n"
+#: array.c:776
+msgid "adump: first argument not an array"
+msgstr "adump: argumen ketiga bukan sebuah array"
-#: array.c:876
-#, c-format
-msgid "%s: empty (zero)\n"
-msgstr "%s: kosong (nol)\n"
+#: array.c:815
+msgid "asort: second argument not an array"
+msgstr "asort: argumen kedua bukan sebuah array"
-#: array.c:880
-#, c-format
-msgid "%s: table_size = %d, array_size = %d\n"
-msgstr "%s: table_size = %d, array_size = %d\n"
+#: array.c:816
+msgid "asorti: second argument not an array"
+msgstr "asorti: argumen kedua bukan sebuah array"
-#: array.c:915
-#, c-format
-msgid "%s: is parameter\n"
-msgstr "%s: adalah parameter\n"
+#: array.c:823
+msgid "asort: first argument not an array"
+msgstr "asort: argumen ketiga bukan sebuah array"
-#: array.c:919
-#, c-format
-msgid "%s: array_ref to %s\n"
-msgstr "%s: array_ref ke %s\n"
+#: array.c:824
+msgid "asorti: first argument not an array"
+msgstr "asorti: argumen ketiga bukan sebuah array"
-#: array.c:924
-#, fuzzy
-msgid "adump: argument not an array"
-msgstr "match: argumen ketiga bukan sebuah array"
+#: array.c:831
+msgid "asort: cannot use a subarray of first arg for second arg"
+msgstr "asort: cannot use a subarray of first arg for second arg"
-#: array.c:1142
-#, fuzzy
-msgid "attempt to use array in a scalar context"
-msgstr "mencoba menggunakan array `%s' dalam sebuah konteks skalar"
+#: array.c:832
+msgid "asorti: cannot use a subarray of first arg for second arg"
+msgstr "asorti: cannot use a subarray of first arg for second arg"
-#: array.c:1239
-#, fuzzy
-msgid "asort: second argument not an array"
-msgstr "split: argumen kedua bukan sebuah array"
+#: array.c:837
+msgid "asort: cannot use a subarray of second arg for first arg"
+msgstr "asort: cannot use a subarray of second arg for first arg"
-#: array.c:1240
-#, fuzzy
-msgid "asorti: second argument not an array"
-msgstr "split: argumen kedua bukan sebuah array"
+#: array.c:838
+msgid "asorti: cannot use a subarray of second arg for first arg"
+msgstr "asorti: cannot use a subarray of second arg for first arg"
-#: array.c:1247
-#, fuzzy
-msgid "asort: first argument not an array"
-msgstr "match: argumen ketiga bukan sebuah array"
+#: array.c:1314
+#, c-format
+msgid "`%s' is invalid as a function name"
+msgstr "`%s' digunakan dalam aksi"
-#: array.c:1248
-#, fuzzy
-msgid "asorti: first argument not an array"
-msgstr "match: argumen ketiga bukan sebuah array"
+#: array.c:1318
+#, c-format
+msgid "sort comparison function `%s' is not defined"
+msgstr "fungsi `%s' tidak didefinisikan"
-#: awkgram.y:249
+#: awkgram.y:233
#, c-format
msgid "%s blocks must have an action part"
msgstr "%s blok harus memiliki sebuah bagian aksi"
-#: awkgram.y:252
+#: awkgram.y:236
msgid "each rule must have a pattern or an action part"
msgstr "setiap aturan harus memiliki sebuah pola atau sebuah bagian aksi"
-#: awkgram.y:323 awkgram.y:334
+#: awkgram.y:325 awkgram.y:336
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "awk lama tidak mendukung multiple aturan `BEGIN' atau `END'"
-#: awkgram.y:371
+#: awkgram.y:373
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "`%s' adalah sebuah fungsi bawaan, ini tidak dapat di redefinisi"
-#: awkgram.y:432
+#: awkgram.y:419
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "konstanta regexp `//' tampak seperti sebuah komentar C++, tetapi bukan"
-#: awkgram.y:436
+#: awkgram.y:423
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "konstanta regexp `/%s/' tampak seperti sebuah komentar C, tetapi bukan"
-#: awkgram.y:528
+#: awkgram.y:515
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "duplikasi nilai case dalam tubuh switch: %s"
-#: awkgram.y:549
-#, fuzzy
+#: awkgram.y:536
msgid "duplicate `default' detected in switch body"
msgstr "Duplikasi `default' terdeteksi dalam tubuh switch"
-#: awkgram.y:811
-#, fuzzy
+#: awkgram.y:796 awkgram.y:3699
msgid "`break' is not allowed outside a loop or switch"
msgstr "`break' diluar sebuah loop tidak diijinkan"
-#: awkgram.y:820
-#, fuzzy
+#: awkgram.y:805 awkgram.y:3691
msgid "`continue' is not allowed outside a loop"
msgstr "`continue' diluar sebuah loop tidak diijinkan"
-#: awkgram.y:829
-#, fuzzy, c-format
+#: awkgram.y:815
+#, c-format
msgid "`next' used in %s action"
-msgstr "`%s' digunakan dalam aksi %s"
-
-#: awkgram.y:837
-msgid "`nextfile' is a gawk extension"
-msgstr "`nextfile' adalah sebuah ekstensi gawk"
+msgstr "`next' digunakan dalam aksi %s"
-#: awkgram.y:840
-#, fuzzy, c-format
+#: awkgram.y:824
+#, c-format
msgid "`nextfile' used in %s action"
-msgstr "`%s' digunakan dalam aksi %s"
+msgstr "`nextfile' digunakan dalam aksi %s"
-#: awkgram.y:863
+#: awkgram.y:848
msgid "`return' used outside function context"
msgstr "`return' digunakan diluar konteks fungsi"
-#: awkgram.y:923
+#: awkgram.y:922
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
-msgstr ""
-"plain `print' dalam aturan BEGIN atau AKHIR seharusnya berupa `print \"\"'"
+msgstr "plain `print' dalam aturan BEGIN atau AKHIR seharusnya berupa `print \"\"'"
+
+#: awkgram.y:988 awkgram.y:1037
+msgid "`delete' is not allowed with SYMTAB"
+msgstr "`delete' is not allowed with SYMTAB"
-#: awkgram.y:993 awkgram.y:997 awkgram.y:1021
-msgid "`delete array' is a gawk extension"
-msgstr "`delete array' adalah sebuah ekstensi gawk"
+#: awkgram.y:990 awkgram.y:1039
+msgid "`delete' is not allowed with FUNCTAB"
+msgstr "`delete' is not allowed with FUNCTAB"
-#: awkgram.y:1017
+#: awkgram.y:1024 awkgram.y:1028
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "`delete(array)' adalah sebuah ekstensi tidak portabel tawk"
-#: awkgram.y:1133
+#: awkgram.y:1149
msgid "multistage two-way pipelines don't work"
msgstr "multi tahap dua jalur pipe lines tidak bekerja"
-#: awkgram.y:1236
+#: awkgram.y:1264
msgid "regular expression on right of assignment"
msgstr "ekspresi regular di penempatan kanan"
-#: awkgram.y:1247
+#: awkgram.y:1275
msgid "regular expression on left of `~' or `!~' operator"
msgstr "ekspresi regular di kiri dari operator `~' atau `!~'"
-#: awkgram.y:1263 awkgram.y:1417
+#: awkgram.y:1291 awkgram.y:1442
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "awk lama tidak mendukung kata kunci `in' kecuali setelah `for'"
-#: awkgram.y:1273
+#: awkgram.y:1301
msgid "regular expression on right of comparison"
msgstr "ekspresi regular di kanan dari perbandingan"
-#: awkgram.y:1392
+#: awkgram.y:1417
#, c-format
msgid "`getline var' invalid inside `%s' rule"
-msgstr ""
+msgstr "`getline var' invalid inside `%s' rule"
-#: awkgram.y:1395 eval.c:2649
+#: awkgram.y:1420
#, c-format
msgid "`getline' invalid inside `%s' rule"
-msgstr ""
+msgstr "`getline' invalid inside `%s' rule"
-#: awkgram.y:1400
+#: awkgram.y:1425
msgid "non-redirected `getline' undefined inside END action"
msgstr "tidak terdireksi `getline' tidak terdefinisi didalam aksi END"
-#: awkgram.y:1419
+#: awkgram.y:1444
msgid "old awk does not support multidimensional arrays"
msgstr "awk lama tidak mendukung array multi dimensi"
-#: awkgram.y:1515
+#: awkgram.y:1541
msgid "call of `length' without parentheses is not portable"
msgstr "panggilan dari `length' tanpa tanda kurung tidak portabel"
-#: awkgram.y:1578
-#, fuzzy
+#: awkgram.y:1607
msgid "indirect function calls are a gawk extension"
-msgstr "`nextfile' adalah sebuah ekstensi gawk"
+msgstr "indirect adalah sebuah ekstensi gawk"
-#: awkgram.y:1591
-#, fuzzy, c-format
+#: awkgram.y:1620
+#, c-format
msgid "can not use special variable `%s' for indirect function call"
-msgstr ""
-"fungsi `%s': tidak dapat menggunakan variabel `%s' sebagai fungsi parameter"
+msgstr "tidak dapat menggunakan variabel `%s' sebagai fungsi parameter"
-#: awkgram.y:1669
+#: awkgram.y:1698
msgid "invalid subscript expression"
msgstr "ekspresi subscript tidak valid"
-#: awkgram.y:1709
-msgid "use of non-array as array"
-msgstr "penggunaan dari bukan array sebagai array"
-
-#: awkgram.y:1973 awkgram.y:1993 msg.c:98
+#: awkgram.y:2024 awkgram.y:2044 gawkapi.c:206 gawkapi.c:224 msg.c:126
msgid "warning: "
msgstr "peringatan: "
-#: awkgram.y:1991 msg.c:130
+#: awkgram.y:2042 gawkapi.c:192 gawkapi.c:221 msg.c:158
msgid "fatal: "
msgstr "fatal: "
-#: awkgram.y:2041
+#: awkgram.y:2092
msgid "unexpected newline or end of string"
msgstr "tidak terduga baris baru atau akhir dari string"
-#: awkgram.y:2297 awkgram.y:2355 awkgram.y:2539
+#: awkgram.y:2359 awkgram.y:2435 awkgram.y:2658 debug.c:523 debug.c:539
+#: debug.c:2812 debug.c:5055
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "tidak dapat membuka berkas sumber `%s' untuk pembacaan (%s)"
-#: awkgram.y:2298 awkgram.y:2356 builtin.c:119
+#: awkgram.y:2360 awkgram.y:2485
+#, c-format
+msgid "can't open shared library `%s' for reading (%s)"
+msgstr "tidak dapat membuka berkas sumber `%s' untuk pembacaan (%s)"
+
+#: awkgram.y:2362 awkgram.y:2436 awkgram.y:2486 builtin.c:135 debug.c:5206
msgid "reason unknown"
msgstr "alasan tidak diketahui"
-#: awkgram.y:2314
-#, fuzzy, c-format
+#: awkgram.y:2371 awkgram.y:2395
+#, c-format
+msgid "can't include `%s' and use it as a program file"
+msgstr "can't include `%s' and use it as a program file"
+
+#: awkgram.y:2384
+#, c-format
msgid "already included source file `%s'"
-msgstr "tidak dapat membaca berkas sumber `%s' (%s)"
+msgstr "tidak dapat membaca berkas sumber `%s'"
+
+#: awkgram.y:2385
+#, c-format
+msgid "already loaded shared library `%s'"
+msgstr "already loaded shared library `%s'"
-#: awkgram.y:2340
-#, fuzzy
+#: awkgram.y:2420
msgid "@include is a gawk extension"
-msgstr "`nextfile' adalah sebuah ekstensi gawk"
+msgstr "@include adalah sebuah ekstensi gawk"
-#: awkgram.y:2346
+#: awkgram.y:2426
msgid "empty filename after @include"
-msgstr ""
+msgstr "empty filename after @include"
+
+#: awkgram.y:2470
+msgid "@load is a gawk extension"
+msgstr "@load adalah sebuah ekstensi gawk"
-#: awkgram.y:2491
+#: awkgram.y:2476
+msgid "empty filename after @load"
+msgstr "empty filename after @load"
+
+#: awkgram.y:2610
msgid "empty program text on command line"
msgstr "aplikasi teks kosong di baris perintah"
-#: awkgram.y:2606
+#: awkgram.y:2725
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "tidak dapat membaca berkas sumber `%s' (%s)"
-#: awkgram.y:2617
+#: awkgram.y:2736
#, c-format
msgid "source file `%s' is empty"
msgstr "berkas sumber `%s' kosong"
-#: awkgram.y:2802
+#: awkgram.y:2913
msgid "source file does not end in newline"
msgstr "berkas sumber tidak berakhir dalam baris baru"
-#: awkgram.y:2879
+#: awkgram.y:3018
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "tidak terakhiri regexp akhir denga `\\' diakhir dari berkas"
-#: awkgram.y:2903
+#: awkgram.y:3042
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "%s: %d: tawk regex pemodifikasi `/.../%c' tidak bekerja dalam gawk"
-#: awkgram.y:2907
+#: awkgram.y:3046
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "tawk regex pemodifikasi `/.../%c' tidak bekerja dalam gawk"
-#: awkgram.y:2914
+#: awkgram.y:3053
msgid "unterminated regexp"
msgstr "tidak terselesaikan regexp"
-#: awkgram.y:2918
+#: awkgram.y:3057
msgid "unterminated regexp at end of file"
msgstr "tidak terselesaikan di akhir dari berkas"
-#: awkgram.y:2977
+#: awkgram.y:3116
msgid "use of `\\ #...' line continuation is not portable"
msgstr "penggunaan dari `\\ #...' kelanjutan baris tidak portabel"
-#: awkgram.y:2993
+#: awkgram.y:3132
msgid "backslash not last character on line"
msgstr "backslash bukan karakter terakhir di baris"
-#: awkgram.y:3054
+#: awkgram.y:3193
msgid "POSIX does not allow operator `**='"
msgstr "POSIX tidak mengijinkan operator `**='"
-#: awkgram.y:3056
+#: awkgram.y:3195
msgid "old awk does not support operator `**='"
msgstr "awk lama tidak mendukung operator `**='"
-#: awkgram.y:3065
+#: awkgram.y:3204
msgid "POSIX does not allow operator `**'"
msgstr "POSIX tidak mengijinkan operator `**'"
-#: awkgram.y:3067
+#: awkgram.y:3206
msgid "old awk does not support operator `**'"
msgstr "awk lama tidak mendukung operator `**'"
-#: awkgram.y:3102
+#: awkgram.y:3241
msgid "operator `^=' is not supported in old awk"
msgstr "operator `^=' tidak didukung dalam awk lama"
-#: awkgram.y:3110
+#: awkgram.y:3249
msgid "operator `^' is not supported in old awk"
msgstr "operator `^' tidak didukung dalam awk lama"
-#: awkgram.y:3203 awkgram.y:3219
+#: awkgram.y:3342 awkgram.y:3358 command.y:1178
msgid "unterminated string"
msgstr "string tidak terselesaikan"
-#: awkgram.y:3415
+#: awkgram.y:3579
#, c-format
msgid "invalid char '%c' in expression"
msgstr "karakter '%c' tidak valid dalam ekspresi"
-#: awkgram.y:3462
+#: awkgram.y:3626
#, c-format
msgid "`%s' is a gawk extension"
msgstr "`%s' adalah sebuah ekstensi gawk"
-#: awkgram.y:3467
-#, c-format
-msgid "`%s' is a Bell Labs extension"
-msgstr "`%s' adalah sebuah ekstensi Bell Labs"
-
-#: awkgram.y:3472
+#: awkgram.y:3631
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX tidak mengijinkan `%s'"
-#: awkgram.y:3480
+#: awkgram.y:3639
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "`%s' tidak didukung dalam awk lama"
-#: awkgram.y:3550
+#: awkgram.y:3729
msgid "`goto' considered harmful!\n"
msgstr "`goto' dipertimbangkan berbahaya!\n"
-#: awkgram.y:3602
+#: awkgram.y:3763
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d tidak valid sebagai jumlah dari argumen untuk %s"
-#: awkgram.y:3637 awkgram.y:3640
-msgid "match: third argument is a gawk extension"
-msgstr "cocok: argumen ketiga adalah sebuah ekstensi gawk"
-
-#: awkgram.y:3668
+#: awkgram.y:3798
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
-msgstr ""
-"%s: literal string sebagai argumen terakhir dari pergantian tidak memiliki "
-"efek"
+msgstr "%s: literal string sebagai argumen terakhir dari pergantian tidak memiliki efek"
-#: awkgram.y:3673
+#: awkgram.y:3803
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "%s parameter ketika bukan sebuah objek yang dapat diubah"
-#: awkgram.y:3759 awkgram.y:3762
+#: awkgram.y:3886 awkgram.y:3889
+msgid "match: third argument is a gawk extension"
+msgstr "cocok: argumen ketiga adalah sebuah ekstensi gawk"
+
+#: awkgram.y:3943 awkgram.y:3946
msgid "close: second argument is a gawk extension"
msgstr "tutup: argumen kedua adalah sebuah ekstensi gawk"
-#: awkgram.y:3774
+#: awkgram.y:3958
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
-msgstr ""
-"penggunaan dari dcgettext(_\"...\") adalah tidak benar: hapus garis bawah "
-"yang mengawali"
+msgstr "penggunaan dari dcgettext(_\"...\") adalah tidak benar: hapus garis bawah yang mengawali"
-#: awkgram.y:3789
+#: awkgram.y:3973
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
-msgstr ""
-"penggunaan dari dcngettext(_\"...\") adalah tidak benar: hapus garis bawah "
-"yang mengawali"
+msgstr "penggunaan dari dcngettext(_\"...\") adalah tidak benar: hapus garis bawah yang mengawali"
-#: awkgram.y:3881
-#, c-format
-msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
-msgstr "fungsi `%s': parameter #%d, `%s', duplikasi paramter #%d"
+#: awkgram.y:3992
+msgid "index: regexp constant as second argument is not allowed"
+msgstr "index: diterima argumen kedua bukan string"
-#: awkgram.y:3923
+#: awkgram.y:4045
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "fungsi `%s': parameter `%s' bayangan variabel global"
-#: awkgram.y:4081
+#: awkgram.y:4102 debug.c:4041 debug.c:4084 debug.c:5204
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "tidak dapat membuka `%s' untuk menulis (%s)"
-#: awkgram.y:4082 profile.c:85
-msgid "sending profile to standard error"
+#: awkgram.y:4103
+msgid "sending variable list to standard error"
msgstr "mengirim profile ke standar error"
-#: awkgram.y:4088
+#: awkgram.y:4111
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: tutup gagal (%s)"
-#: awkgram.y:4140
+#: awkgram.y:4136
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() dipanggil dua kali!"
-#: awkgram.y:4146
+#: awkgram.y:4144
msgid "there were shadowed variables."
msgstr "disana tidak ada variabel bayangan."
-#: awkgram.y:4176
+#: awkgram.y:4215
+#, c-format
+msgid "function name `%s' previously defined"
+msgstr "nama fungsi `%s' sebelumnya telah didefinisikan"
+
+#: awkgram.y:4261
#, c-format
msgid "function `%s': can't use function name as parameter name"
-msgstr ""
-"fungsi `%s': tidak dapat menggunakan nama fungsi sebagai nama parameter"
+msgstr "fungsi `%s': tidak dapat menggunakan nama fungsi sebagai nama parameter"
-#: awkgram.y:4180
+#: awkgram.y:4264
#, c-format
msgid "function `%s': can't use special variable `%s' as a function parameter"
-msgstr ""
-"fungsi `%s': tidak dapat menggunakan variabel `%s' sebagai fungsi parameter"
+msgstr "fungsi `%s': tidak dapat menggunakan variabel `%s' sebagai fungsi parameter"
-#: awkgram.y:4196
+#: awkgram.y:4272
#, c-format
-msgid "function name `%s' previously defined"
-msgstr "nama fungsi `%s' sebelumnya telah didefinisikan"
+msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
+msgstr "fungsi `%s': parameter #%d, `%s', duplikasi paramter #%d"
-#: awkgram.y:4364 awkgram.y:4370
+#: awkgram.y:4359 awkgram.y:4365
#, c-format
msgid "function `%s' called but never defined"
msgstr "fungsi `%s' dipanggil tetapi tidak pernah didefinisikan"
-#: awkgram.y:4373
-#, fuzzy, c-format
+#: awkgram.y:4369
+#, c-format
msgid "function `%s' defined but never called directly"
msgstr "fungsi `%s' didefinisikan tetapi tidak pernah dipanggil"
-#: awkgram.y:4405
+#: awkgram.y:4401
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "konstanta regexp untuk parameter #%d menghasilkan nilai boolean"
-#: awkgram.y:4514
+#: awkgram.y:4460
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -512,363 +491,1306 @@ msgstr ""
"fungsi `%s' dipanggil dengan spasi diantara nama dan `(',\n"
"atau gunakan sebagai sebuah variabel atau sebuah array"
-#: awkgram.y:4761 eval.c:2206
+#: awkgram.y:4696
msgid "division by zero attempted"
msgstr "pembagian dengan nol telah dicoba"
-#: awkgram.y:4770 eval.c:2222
+#: awkgram.y:4705
#, c-format
msgid "division by zero attempted in `%%'"
msgstr "pembagian dengan nol dicoba dalam `%%'"
-#: builtin.c:117
+#: awkgram.y:5025
+msgid "cannot assign a value to the result of a field post-increment expression"
+msgstr "cannot assign a value to the result of a field post-increment expression"
+
+#: awkgram.y:5028
+#, c-format
+msgid "invalid target of assignment (opcode %s)"
+msgstr "tidak valid sebagai jumlah dari argumen untuk %s"
+
+#: builtin.c:133
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s ke \"%s\" gagal (%s)"
-#: builtin.c:118
+#: builtin.c:134
msgid "standard output"
msgstr "standar keluaran"
-#: builtin.c:132
+#: builtin.c:148
msgid "exp: received non-numeric argument"
msgstr "exp: diterima argumen bukan-numerik"
-#: builtin.c:138
+#: builtin.c:154
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: argumen %g diluar dari jangkauan"
-#: builtin.c:197
+#: builtin.c:229
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
-msgstr ""
-"fflush: tidak dapat flush: pipe `%s' dibuka untuk dibaca, bukan ditulis"
+msgstr "fflush: tidak dapat flush: pipe `%s' dibuka untuk dibaca, bukan ditulis"
-#: builtin.c:200
+#: builtin.c:232
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
-msgstr ""
-"fflush: tidak dapat flush: berkas `%s' dibuka untuk dibaca, bukan ditulis"
+msgstr "fflush: tidak dapat flush: berkas `%s' dibuka untuk dibaca, bukan ditulis"
-#: builtin.c:212
+#: builtin.c:244
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: `%s' bukan sebuah berkas terbuka, pipe atau co-proses"
-#: builtin.c:330
+#: builtin.c:362
msgid "index: received non-string first argument"
msgstr "indeks: diterima argumen pertama bukan string"
-#: builtin.c:332
+#: builtin.c:364
msgid "index: received non-string second argument"
msgstr "indeks: diterima argumen kedua bukan string"
-#: builtin.c:454
+#: builtin.c:488 mpfr.c:757
msgid "int: received non-numeric argument"
msgstr "int: diterima argumen bukan numerik"
-#: builtin.c:490
-#, fuzzy
+#: builtin.c:525
msgid "length: received array argument"
msgstr "length: diterima argumen bukan-string"
-#: builtin.c:493
-#, fuzzy
+#: builtin.c:528
msgid "`length(array)' is a gawk extension"
msgstr "`length(array)' adalah sebuah ekstensi gawk"
-#: builtin.c:501
+#: builtin.c:544
msgid "length: received non-string argument"
msgstr "length: diterima argumen bukan-string"
-#: builtin.c:532
+#: builtin.c:575
msgid "log: received non-numeric argument"
msgstr "log: diterima argumen bukan numerik"
-#: builtin.c:535
+#: builtin.c:578
#, c-format
msgid "log: received negative argument %g"
msgstr "log: diterima argumen negatif %g"
-#: builtin.c:593 builtin.c:604
+#: builtin.c:776 builtin.c:781
+msgid "fatal: must use `count$' on all formats or none"
+msgstr "harus menggunakan `count$' di semua format atau tidak sama sekali"
+
+#: builtin.c:851
+#, c-format
+msgid "field width is ignored for `%%' specifier"
+msgstr "lebar daerah diabaikan untuk penspesifikasi `%%'"
+
+#: builtin.c:853
+#, c-format
+msgid "precision is ignored for `%%' specifier"
+msgstr "ketepatan diabaikan untuk penspesifikasi `%%'"
+
+#: builtin.c:855
+#, c-format
+msgid "field width and precision are ignored for `%%' specifier"
+msgstr "lebar daerah dan presisi diabaikan untuk penspesifikasi `%%'"
+
+#: builtin.c:906
+msgid "fatal: `$' is not permitted in awk formats"
+msgstr "`$' tidak diijinkan dalam format awk"
+
+#: builtin.c:915
+msgid "fatal: arg count with `$' must be > 0"
+msgstr "arg count dengan `$' harus > 0"
+
+#: builtin.c:919
+#, c-format
+msgid "fatal: arg count %ld greater than total number of supplied arguments"
+msgstr "arg count %ld lebih besar dari jumlah total dari argumen yang diberikan"
+
+#: builtin.c:923
+msgid "fatal: `$' not permitted after period in format"
+msgstr "`$' tidak diijinkan setelah periode dalam format"
+
+#: builtin.c:939
+msgid "fatal: no `$' supplied for positional field width or precision"
+msgstr "tidak ada `$' yang diberikan untuk posisional field width atau presisi"
+
+#: builtin.c:1011
+msgid "`l' is meaningless in awk formats; ignored"
+msgstr "`l' tidak berarti dalam format awk; diabaikan"
+
+#: builtin.c:1015
+msgid "fatal: `l' is not permitted in POSIX awk formats"
+msgstr "`l' tidak diijinkan dalam format POSIX awk"
+
+#: builtin.c:1028
+msgid "`L' is meaningless in awk formats; ignored"
+msgstr "`L' tidak berarti dalam format awk; diabaikan"
+
+#: builtin.c:1032
+msgid "fatal: `L' is not permitted in POSIX awk formats"
+msgstr "`L' tidak diijinkan dalam format awk POSIX"
+
+#: builtin.c:1045
+msgid "`h' is meaningless in awk formats; ignored"
+msgstr "`h' tidak berarti dalam format awk; diabaikan"
+
+#: builtin.c:1049
+msgid "fatal: `h' is not permitted in POSIX awk formats"
+msgstr "`h' tidak diijinkan dalam format awk POSIX"
+
+#: builtin.c:1447
+#, c-format
+msgid "[s]printf: value %g is out of range for `%%%c' format"
+msgstr "[s]printf: nilai %g diluar dari jangkauan untuk format `%%%c'"
+
+#: builtin.c:1545
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr "mengabaikan format tidak dikenal karakter penspesifikasi `%c': tidak ada argumen yang diubah"
+
+#: builtin.c:1550
+msgid "fatal: not enough arguments to satisfy format string"
+msgstr "tidak cukup argumen untuk memuaskan format string"
+
+#: builtin.c:1552
+msgid "^ ran out for this one"
+msgstr "^ kehabisan untuk yang ini"
+
+#: builtin.c:1559
+msgid "[s]printf: format specifier does not have control letter"
+msgstr "[s]printf: penspesifikasi format tidak memiliki pengontrol huruf"
+
+#: builtin.c:1562
+msgid "too many arguments supplied for format string"
+msgstr "terlalu banyak argumen diberikan untuk format string"
+
+#: builtin.c:1618
+msgid "sprintf: no arguments"
+msgstr "sprintf: tidak ada argumen"
+
+#: builtin.c:1641 builtin.c:1652
msgid "printf: no arguments"
msgstr "printf: tidak ada argumen"
-#: builtin.c:645
+#: builtin.c:1695
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: diterima argumen bukan numerik"
-#: builtin.c:649
+#: builtin.c:1699
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: dipanggil dengan argumen %g negatif"
-#: builtin.c:673
+#: builtin.c:1730
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: panjang %g tidak >= 1"
-#: builtin.c:675
+#: builtin.c:1732
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: panjang %g tidak >= 0"
-#: builtin.c:682
+#: builtin.c:1739
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: panjang bukan integer %g akan dipotong"
-#: builtin.c:687
+#: builtin.c:1744
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
-msgstr ""
-"substr: panjang %g terlalu besar untuk pengindeksan string, dipotong ke %g"
+msgstr "substr: panjang %g terlalu besar untuk pengindeksan string, dipotong ke %g"
-#: builtin.c:699
+#: builtin.c:1756
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: awal indeks %g tidak valid, menggunakan 1"
-#: builtin.c:704
+#: builtin.c:1761
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: awal indeks %g bukan integer akan dipotong"
-#: builtin.c:729
+#: builtin.c:1786
msgid "substr: source string is zero length"
msgstr "substr: sumber string memiliki panjang nol"
-#: builtin.c:745
+#: builtin.c:1802
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: awal indeks %g melewati akhir dari string"
-#: builtin.c:753
+#: builtin.c:1810
#, c-format
-msgid ""
-"substr: length %g at start index %g exceeds length of first argument (%lu)"
-msgstr ""
-"substr: panjang %g di awal indeks %g melewati panjang dari argumen pertama "
-"(%lu)"
+msgid "substr: length %g at start index %g exceeds length of first argument (%lu)"
+msgstr "substr: panjang %g di awal indeks %g melewati panjang dari argumen pertama (%lu)"
-#: builtin.c:826
+#: builtin.c:1884
msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type"
-msgstr ""
+msgstr "strftime: format value in PROCINFO[\"strftime\"] has numeric type"
-#: builtin.c:840
+#: builtin.c:1907
msgid "strftime: received non-numeric second argument"
msgstr "strftime: diterima argumen kedua bukan numerik"
-#: builtin.c:847
+#: builtin.c:1911
+msgid "strftime: second argument less than 0 or too big for time_t"
+msgstr "strftime: second argument less than 0 or too big for time_t"
+
+#: builtin.c:1918
msgid "strftime: received non-string first argument"
msgstr "strftime: diterima argumen pertama bukan string"
-#: builtin.c:853
+#: builtin.c:1925
msgid "strftime: received empty format string"
msgstr "strftime: diterima format string kosong"
-#: builtin.c:919
+#: builtin.c:1991
msgid "mktime: received non-string argument"
msgstr "mktime: diterima argumen bukan string"
-#: builtin.c:936
+#: builtin.c:2008
msgid "mktime: at least one of the values is out of the default range"
-msgstr ""
+msgstr "mktime: at least one of the values is out of the default range"
-#: builtin.c:971
+#: builtin.c:2043
msgid "'system' function not allowed in sandbox mode"
-msgstr ""
+msgstr "'system' function not allowed in sandbox mode"
-#: builtin.c:976
+#: builtin.c:2048
msgid "system: received non-string argument"
msgstr "system: diterima argumen bukan string"
-#: builtin.c:1031 eval.c:1411 eval.c:1936 eval.c:1949
-#, c-format
-msgid "reference to uninitialized variable `%s'"
-msgstr "referensi ke variabel `%s' tidak terinisialisasi"
-
-#: builtin.c:1098
+#: builtin.c:2168
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "referensi ke field tidak terinisialisasi `$%d'"
-#: builtin.c:1185
+#: builtin.c:2255
msgid "tolower: received non-string argument"
msgstr "tolower: diterima argumen bukan string"
-#: builtin.c:1219
+#: builtin.c:2289
msgid "toupper: received non-string argument"
msgstr "toupper: diterima argumen bukan string"
-#: builtin.c:1255
+#: builtin.c:2325 mpfr.c:672
msgid "atan2: received non-numeric first argument"
msgstr "atan2: diterima argumen pertama bukan numerik"
-#: builtin.c:1257
+#: builtin.c:2327 mpfr.c:674
msgid "atan2: received non-numeric second argument"
msgstr "atan2: diterima argumen kedua bukan numerik"
-#: builtin.c:1276
+#: builtin.c:2346
msgid "sin: received non-numeric argument"
msgstr "sin: diterima argumen bukan numerik"
-#: builtin.c:1292
+#: builtin.c:2362
msgid "cos: received non-numeric argument"
msgstr "cos: diterima argumen bukan numerik"
-#: builtin.c:1345
+#: builtin.c:2415 mpfr.c:1156
msgid "srand: received non-numeric argument"
msgstr "srand: diterima argumen bukan numerik"
-#: builtin.c:1376
+#: builtin.c:2446
msgid "match: third argument is not an array"
msgstr "match: argumen ketiga bukan sebuah array"
-#: builtin.c:1883
+#: builtin.c:2718
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: argumen ketiga dari 0 diperlakukan sebagai 1"
-#: builtin.c:1923
+#: builtin.c:3014
msgid "lshift: received non-numeric first argument"
msgstr "lshift: diterima argumen pertama bukan numerik"
-#: builtin.c:1925
+#: builtin.c:3016
msgid "lshift: received non-numeric second argument"
msgstr "lshift: diterima argumen kedua bukan numerik"
-#: builtin.c:1931
+#: builtin.c:3022
#, c-format
-msgid "lshift(%lf, %lf): negative values will give strange results"
-msgstr "lshift(%lf, %lf): nilai negatif akan memberikan hasil aneh"
+msgid "lshift(%f, %f): negative values will give strange results"
+msgstr "lshift(%f, %f): nilai negatif akan memberikan hasil aneh"
-#: builtin.c:1933
+#: builtin.c:3024
#, c-format
-msgid "lshift(%lf, %lf): fractional values will be truncated"
-msgstr "lshift(%lf, %lf): nilai pecahan akan dipotong"
+msgid "lshift(%f, %f): fractional values will be truncated"
+msgstr "lshift(%f, %f): nilai pecahan akan dipotong"
-#: builtin.c:1935
+#: builtin.c:3026
#, c-format
-msgid "lshift(%lf, %lf): too large shift value will give strange results"
-msgstr "lshift(%lf, %lf): nilai shift terlalu besar akan memberikan hasil aneh"
+msgid "lshift(%f, %f): too large shift value will give strange results"
+msgstr "lshift(%f, %f): nilai shift terlalu besar akan memberikan hasil aneh"
-#: builtin.c:1960
+#: builtin.c:3051
msgid "rshift: received non-numeric first argument"
msgstr "rshift: diterima argumen pertama bukan numerik"
-#: builtin.c:1962
+#: builtin.c:3053
msgid "rshift: received non-numeric second argument"
msgstr "rshift: diterima argumen kedua bukan-numerik"
-#: builtin.c:1968
+#: builtin.c:3059
#, c-format
-msgid "rshift(%lf, %lf): negative values will give strange results"
-msgstr "rshift(%lf. %lf): nilai negatif akan memberikan hasil aneh"
+msgid "rshift(%f, %f): negative values will give strange results"
+msgstr "rshift(%f. %f): nilai negatif akan memberikan hasil aneh"
-#: builtin.c:1970
+#: builtin.c:3061
#, c-format
-msgid "rshift(%lf, %lf): fractional values will be truncated"
-msgstr "rshift(%lf, %lf): nilai pecahan akan dipotong"
+msgid "rshift(%f, %f): fractional values will be truncated"
+msgstr "rshift(%f, %f): nilai pecahan akan dipotong"
-#: builtin.c:1972
+#: builtin.c:3063
#, c-format
-msgid "rshift(%lf, %lf): too large shift value will give strange results"
-msgstr "rshift(%lf, %lf): nilai shift terlalu besar akan memberikan hasil aneh"
-
-#: builtin.c:1997
-msgid "and: received non-numeric first argument"
-msgstr "and: diterima argumen pertama tidak numerik"
+msgid "rshift(%f, %f): too large shift value will give strange results"
+msgstr "rshift(%f, %f): nilai shift terlalu besar akan memberikan hasil aneh"
-#: builtin.c:1999
-msgid "and: received non-numeric second argument"
-msgstr "and: diterima argumen kedua bukan numerik"
+#: builtin.c:3088 mpfr.c:968
+msgid "and: called with less than two arguments"
+msgstr "and: dipanggil dengan argumen negatif"
-#: builtin.c:2005
+#: builtin.c:3093
#, c-format
-msgid "and(%lf, %lf): negative values will give strange results"
-msgstr "and(%lf, %lf): nilai negatif akan memberikan hasil aneh"
+msgid "and: argument %d is non-numeric"
+msgstr "and: argumen %d diluar dari jangkauan"
-#: builtin.c:2007
+#: builtin.c:3097
#, c-format
-msgid "and(%lf, %lf): fractional values will be truncated"
-msgstr "and(%lf, %lf): nilai pecahan akan dipotong"
+msgid "and: argument %d negative value %g will give strange results"
+msgstr "and: nilai %d negatif akan memberikan %g hasil aneh"
-#: builtin.c:2032
-msgid "or: received non-numeric first argument"
-msgstr "or: diterima argumen pertama bukan numerik"
+#: builtin.c:3120 mpfr.c:1000
+msgid "or: called with less than two arguments"
+msgstr "or: dipanggil dengan argumen negatif"
-#: builtin.c:2034
-msgid "or: received non-numeric second argument"
-msgstr "or: diterima argumen kedua bukan numerik"
-
-#: builtin.c:2040
+#: builtin.c:3125
#, c-format
-msgid "or(%lf, %lf): negative values will give strange results"
-msgstr "or(%lf, %lf): nilai negatif akan memberikan hasil aneh"
+msgid "or: argument %d is non-numeric"
+msgstr "or: argumen %d diluar dari jangkauan"
-#: builtin.c:2042
+#: builtin.c:3129
#, c-format
-msgid "or(%lf, %lf): fractional values will be truncated"
-msgstr "or(%lf, %lf): nilai pecahan akan dipotong"
-
-#: builtin.c:2070
-msgid "xor: received non-numeric first argument"
-msgstr "xor: diterima argumen pertama bukan numerik"
+msgid "or: argument %d negative value %g will give strange results"
+msgstr "or: nilai %d negatif akan memberikan %g hasil aneh"
-#: builtin.c:2072
-msgid "xor: received non-numeric second argument"
-msgstr "xor: diterima argumen kedua bukan numerik"
+#: builtin.c:3151 mpfr.c:1031
+msgid "xor: called with less than two arguments"
+msgstr "xor: dipanggil dengan argumen negatif"
-#: builtin.c:2078
+#: builtin.c:3157
#, c-format
-msgid "xor(%lf, %lf): negative values will give strange results"
-msgstr "xor(%lf, %lf): nilai negatif akan memberikan hasil aneh"
+msgid "xor: argument %d is non-numeric"
+msgstr "xor: argumen %d diluar dari jangkauan"
-#: builtin.c:2080
+#: builtin.c:3161
#, c-format
-msgid "xor(%lf, %lf): fractional values will be truncated"
-msgstr "xor(%lf, %lf): nilai pecahan akan dipotong"
+msgid "xor: argument %d negative value %g will give strange results"
+msgstr "xor: nilai %d negatif akan memberikan %g hasil aneh"
-#: builtin.c:2104 builtin.c:2110
+#: builtin.c:3186 mpfr.c:787
msgid "compl: received non-numeric argument"
msgstr "compl: diterima argumen bukan numerik"
-#: builtin.c:2112
+#: builtin.c:3192
#, c-format
-msgid "compl(%lf): negative value will give strange results"
-msgstr "compl(%lf): nilai negatif akan memberikan hasil aneh"
+msgid "compl(%f): negative value will give strange results"
+msgstr "compl(%f): nilai negatif akan memberikan hasil aneh"
-#: builtin.c:2114
+#: builtin.c:3194
#, c-format
-msgid "compl(%lf): fractional value will be truncated"
-msgstr "compl(%lf): nilai pecahan akan dipotong"
+msgid "compl(%f): fractional value will be truncated"
+msgstr "compl(%f): nilai pecahan akan dipotong"
-#: builtin.c:2283
+#: builtin.c:3363
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: `%s' bukan sebuah kategori lokal yang valid"
-#: eval.c:410
+#: command.y:225
+#, c-format
+msgid "Type (g)awk statement(s). End with the command \"end\"\n"
+msgstr "Type (g)awk statement(s). End with the command \"end\"\n"
+
+#: command.y:289
+#, c-format
+msgid "invalid frame number: %d"
+msgstr "Akhir jangkauan tidak valid: %d"
+
+#: command.y:295
+#, c-format
+msgid "info: invalid option - \"%s\""
+msgstr "info: pilihan tidak valid - \"%s\""
+
+#: command.y:321
+#, c-format
+msgid "source \"%s\": already sourced."
+msgstr "source \"%s\": already sourced."
+
+#: command.y:326
+#, c-format
+msgid "save \"%s\": command not permitted."
+msgstr "save \"%s\": command not permitted."
+
+#: command.y:339
+msgid "Can't use command `commands' for breakpoint/watchpoint commands"
+msgstr "Can't use command `commands' for breakpoint/watchpoint commands"
+
+#: command.y:341
+msgid "no breakpoint/watchpoint has been set yet"
+msgstr "no breakpoint/watchpoint has been set yet"
+
+#: command.y:343
+msgid "invalid breakpoint/watchpoint number"
+msgstr "invalid breakpoint/watchpoint number"
+
+#: command.y:348
+#, c-format
+msgid "Type commands for when %s %d is hit, one per line.\n"
+msgstr "Type commands for when %s %d is hit, one per line.\n"
+
+#: command.y:350
+#, c-format
+msgid "End with the command \"end\"\n"
+msgstr "End with the command \"end\"\n"
+
+#: command.y:357
+msgid "`end' valid only in command `commands' or `eval'"
+msgstr "`end' valid only in command `commands' or `eval'"
+
+#: command.y:367
+msgid "`silent' valid only in command `commands'"
+msgstr "`silent' valid only in command `commands'"
+
+#: command.y:373
+#, c-format
+msgid "trace: invalid option - \"%s\""
+msgstr "trace: pilihan tidak valid - \"%s\""
+
+#: command.y:387
+msgid "condition: invalid breakpoint/watchpoint number"
+msgstr "condition: invalid breakpoint/watchpoint number"
+
+#: command.y:449
+msgid "argument not a string"
+msgstr "tidak cukup argumen untuk memuaskan format string"
+
+#: command.y:459 command.y:464
+#, c-format
+msgid "option: invalid parameter - \"%s\""
+msgstr "option: invalid parameter - \"%s\""
+
+#: command.y:474
+#, c-format
+msgid "no such function - \"%s\""
+msgstr "no such function - \"%s\""
+
+#: command.y:531
+#, c-format
+msgid "enable: invalid option - \"%s\""
+msgstr "enable: pilihan tidak valid - \"%s\""
+
+#: command.y:597
+#, c-format
+msgid "invalid range specification: %d - %d"
+msgstr "Akhir jangkauan tidak valid: %d - %d"
+
+#: command.y:659
+msgid "non-numeric value for field number"
+msgstr "non-numeric value for field number"
+
+#: command.y:680 command.y:687
+msgid "non-numeric value found, numeric expected"
+msgstr "non-numeric value found, numeric expected"
+
+#: command.y:712 command.y:718
+msgid "non-zero integer value"
+msgstr "non-zero integer value"
+
+#: command.y:817
+msgid "backtrace [N] - print trace of all or N innermost (outermost if N < 0) frames."
+msgstr "backtrace [N] - print trace of all or N innermost (outermost if N < 0) frames."
+
+#: command.y:819
+msgid "break [[filename:]N|function] - set breakpoint at the specified location."
+msgstr "break [[filename:]N|function] - set breakpoint at the specified location."
+
+#: command.y:821
+msgid "clear [[filename:]N|function] - delete breakpoints previously set."
+msgstr "clear [[filename:]N|function] - delete breakpoints previously set."
+
+#: command.y:823
+msgid "commands [num] - starts a list of commands to be executed at a breakpoint(watchpoint) hit."
+msgstr "commands [num] - starts a list of commands to be executed at a breakpoint(watchpoint) hit."
+
+#: command.y:825
+msgid "condition num [expr] - set or clear breakpoint or watchpoint condition."
+msgstr "condition num [expr] - set or clear breakpoint or watchpoint condition."
+
+#: command.y:827
+msgid "continue [COUNT] - continue program being debugged."
+msgstr "continue [COUNT] - continue program being debugged."
+
+#: command.y:829
+msgid "delete [breakpoints] [range] - delete specified breakpoints."
+msgstr "delete [breakpoints] [range] - delete specified breakpoints."
+
+#: command.y:831
+msgid "disable [breakpoints] [range] - disable specified breakpoints."
+msgstr "disable [breakpoints] [range] - disable specified breakpoints."
+
+#: command.y:833
+msgid "display [var] - print value of variable each time the program stops."
+msgstr "display [var] - print value of variable each time the program stops."
+
+#: command.y:835
+msgid "down [N] - move N frames down the stack."
+msgstr "down [N] - move N frames down the stack."
+
+#: command.y:837
+msgid "dump [filename] - dump instructions to file or stdout."
+msgstr "dump [filename] - dump instructions to file or stdout."
+
+#: command.y:839
+msgid "enable [once|del] [breakpoints] [range] - enable specified breakpoints."
+msgstr "enable [once|del] [breakpoints] [range] - enable specified breakpoints."
+
+#: command.y:841
+msgid "end - end a list of commands or awk statements."
+msgstr "end - end a list of commands or awk statements."
+
+#: command.y:843
+msgid "eval stmt|[p1, p2, ...] - evaluate awk statement(s)."
+msgstr "eval stmt|[p1, p2, ...] - evaluate awk statement(s)."
+
+#: command.y:845
+msgid "finish - execute until selected stack frame returns."
+msgstr "finish - execute until selected stack frame returns."
+
+#: command.y:847
+msgid "frame [N] - select and print stack frame number N."
+msgstr "frame [N] - select and print stack frame number N."
+
+#: command.y:849
+msgid "help [command] - print list of commands or explanation of command."
+msgstr "help [command] - print list of commands or explanation of command."
+
+#: command.y:851
+msgid "ignore N COUNT - set ignore-count of breakpoint number N to COUNT."
+msgstr "ignore N COUNT - set ignore-count of breakpoint number N to COUNT."
+
+#: command.y:853
+msgid "info topic - source|sources|variables|functions|break|frame|args|locals|display|watch."
+msgstr "info topic - source|sources|variables|functions|break|frame|args|locals|display|watch."
+
+#: command.y:855
+msgid "list [-|+|[filename:]lineno|function|range] - list specified line(s)."
+msgstr "list [-|+|[filename:]lineno|function|range] - list specified line(s)."
+
+#: command.y:857
+msgid "next [COUNT] - step program, proceeding through subroutine calls."
+msgstr "next [COUNT] - step program, proceeding through subroutine calls."
+
+#: command.y:859
+msgid "nexti [COUNT] - step one instruction, but proceed through subroutine calls."
+msgstr "nexti [COUNT] - stepp one instruction, but proceed through subroutine calls."
+
+#: command.y:861
+msgid "option [name[=value]] - set or display debugger option(s)."
+msgstr "option [name[=value]] - set or display debugger option(s)."
+
+#: command.y:863
+msgid "print var [var] - print value of a variable or array."
+msgstr "print var [var] - print value of a variable or array."
+
+#: command.y:865
+msgid "printf format, [arg], ... - formatted output."
+msgstr "printf format, [arg], ... - formatted output."
+
+#: command.y:867
+msgid "quit - exit debugger."
+msgstr "quit - exit debugger."
+
+#: command.y:869
+msgid "return [value] - make selected stack frame return to its caller."
+msgstr "return [value] - make selected stack frame return to its caller."
+
+#: command.y:871
+msgid "run - start or restart executing program."
+msgstr "run - start or restart executing program."
+
+#: command.y:874
+msgid "save filename - save commands from the session to file."
+msgstr "save filename - save commands from the session to file."
+
+#: command.y:877
+msgid "set var = value - assign value to a scalar variable."
+msgstr "set var = value - assign value to a scalar variable."
+
+#: command.y:879
+msgid "silent - suspends usual message when stopped at a breakpoint/watchpoint."
+msgstr "silent - suspends usual message when stopped at a breakpoint/watchpoint."
+
+#: command.y:881
+msgid "source file - execute commands from file."
+msgstr "source file - execute commads from file."
+
+#: command.y:883
+msgid "step [COUNT] - step program until it reaches a different source line."
+msgstr "step [COUNT] - step program until it reaches a different source line."
+
+#: command.y:885
+msgid "stepi [COUNT] - step one instruction exactly."
+msgstr "stepi [COUNT] - step one instruction exactly."
+
+#: command.y:887
+msgid "tbreak [[filename:]N|function] - set a temporary breakpoint."
+msgstr "tbreak [[filename:]N|function] - set a temporary breakpoint."
+
+#: command.y:889
+msgid "trace on|off - print instruction before executing."
+msgstr "trace on|off - print instruction before executing."
+
+#: command.y:891
+msgid "undisplay [N] - remove variable(s) from automatic display list."
+msgstr "undisplay [N] - remove variable(s) from automatic display list."
+
+#: command.y:893
+msgid "until [[filename:]N|function] - execute until program reaches a different line or line N within current frame."
+msgstr "until [[filename:]N|function] - execute until program reaches a different line or line N within current frame."
+
+#: command.y:895
+msgid "unwatch [N] - remove variable(s) from watch list."
+msgstr "unwatch [N] - remove variable(s) from watch list."
+
+#: command.y:897
+msgid "up [N] - move N frames up the stack."
+msgstr "up [N] - move N frames up the stack."
+
+#: command.y:899
+msgid "watch var - set a watchpoint for a variable."
+msgstr "watch var - set a watchpoint for a variable."
+
+#: command.y:1011 debug.c:401 msg.c:135
+#, c-format
+msgid "error: "
+msgstr "error: "
+
+#: command.y:1051
+#, c-format
+msgid "can't read command (%s)\n"
+msgstr "tidak dapat redirek dari (%s)\n"
+
+#: command.y:1065
+#, c-format
+msgid "can't read command (%s)"
+msgstr "tidak dapat redirek dari (%s)"
+
+#: command.y:1116
+msgid "invalid character in command"
+msgstr "nama kelas karakter tidak valid"
+
+#: command.y:1152
+#, c-format
+msgid "unknown command - \"%.*s\", try help"
+msgstr "unknown command - \"%.*s\", try help"
+
+#: command.y:1222
+#, c-format
+msgid "%s"
+msgstr "%s"
+
+#: command.y:1284
+msgid "invalid character"
+msgstr "Karakter kolasi tidak valid"
+
+#: command.y:1455
+#, c-format
+msgid "undefined command: %s\n"
+msgstr "undefined command: %s\n"
+
+#: debug.c:252
+msgid "set or show the number of lines to keep in history file."
+msgstr "set or show the number of lines to keep in history file."
+
+#: debug.c:254
+msgid "set or show the list command window size."
+msgstr "set or show the list command window size."
+
+#: debug.c:256
+msgid "set or show gawk output file."
+msgstr "set or show gawk output file."
+
+#: debug.c:258
+msgid "set or show debugger prompt."
+msgstr "set or show debugger prompt."
+
+#: debug.c:260
+msgid "(un)set or show saving of command history (value=on|off)."
+msgstr "(un)set or show saving of command history (value=on|off)."
+
+#: debug.c:262
+msgid "(un)set or show saving of options (value=on|off)."
+msgstr "(un)set or show saving of options (value=on|off)."
+
+#: debug.c:264
+msgid "(un)set or show instruction tracing (value=on|off)."
+msgstr "(un)set or show instruction tracing (value=on|off)."
+
+#: debug.c:345
+msgid "program not running."
+msgstr "program not running."
+
+#: debug.c:448 debug.c:606
+#, c-format
+msgid "can't read source file `%s' (%s)"
+msgstr "tidak dapat membaca berkas sumber `%s' (%s)"
+
+#: debug.c:453
+#, c-format
+msgid "source file `%s' is empty.\n"
+msgstr "berkas sumber `%s' kosong.\n"
+
+#: debug.c:480
+msgid "no current source file."
+msgstr "no current source file."
+
+#: debug.c:505
+#, c-format
+msgid "cannot find source file named `%s' (%s)"
+msgstr "tidak dapat membaca berkas sumber `%s' (%s)"
+
+#: debug.c:529
+#, c-format
+msgid "WARNING: source file `%s' modified since program compilation.\n"
+msgstr "WARNING: source file `%s' modified since program compilation.\n"
+
+#: debug.c:551
+#, c-format
+msgid "line number %d out of range; `%s' has %d lines"
+msgstr "line number %d out of range; `%s' has %d lines"
+
+#: debug.c:611
+#, c-format
+msgid "unexpected eof while reading file `%s', line %d"
+msgstr "tidak terduga baris baru atau akhir dari string `%s', %d"
+
+#: debug.c:620
+#, c-format
+msgid "source file `%s' modified since start of program execution"
+msgstr "source file `%s' modified since start of program execution"
+
+#: debug.c:732
+#, c-format
+msgid "Current source file: %s\n"
+msgstr "Current source file: %s\n"
+
+#: debug.c:733
+#, c-format
+msgid "Number of lines: %d\n"
+msgstr "Number of lines: %d\n"
+
+#: debug.c:740
+#, c-format
+msgid "Source file (lines): %s (%d)\n"
+msgstr "Source file (lines): %s (%d)\n"
+
+#: debug.c:754
+msgid ""
+"Number Disp Enabled Location\n"
+"\n"
+msgstr ""
+"Number Disp Enabled Location\n"
+"\n"
+
+#: debug.c:765
+#, c-format
+msgid "\tno of hits = %ld\n"
+msgstr "\tno of hits = %ld\n"
+
+#: debug.c:767
+#, c-format
+msgid "\tignore next %ld hit(s)\n"
+msgstr "\tignore next %ld hit(s)\n"
+
+#: debug.c:769 debug.c:909
+#, c-format
+msgid "\tstop condition: %s\n"
+msgstr "\tstop condition: %s\n"
+
+#: debug.c:771 debug.c:911
+msgid "\tcommands:\n"
+msgstr "\tcommands:\n"
+
+#: debug.c:793
+#, c-format
+msgid "Current frame: "
+msgstr "Current frame: "
+
+#: debug.c:796
+#, c-format
+msgid "Called by frame: "
+msgstr "Called by frame: "
+
+#: debug.c:800
+#, c-format
+msgid "Caller of frame: "
+msgstr "Caller of frame: "
+
+#: debug.c:818
+#, c-format
+msgid "None in main().\n"
+msgstr "None in main().\n"
+
+#: debug.c:848
+msgid "No arguments.\n"
+msgstr "tidak ada argumen\n"
+
+#: debug.c:849
+msgid "No locals.\n"
+msgstr "No locals.\n"
+
+#: debug.c:857
+msgid ""
+"All defined variables:\n"
+"\n"
+msgstr ""
+"All defined variables:\n"
+"\n"
+
+#: debug.c:867
+msgid ""
+"All defined functions:\n"
+"\n"
+msgstr ""
+"All defined functions:\n"
+"\n"
+
+#: debug.c:886
+msgid ""
+"Auto-display variables:\n"
+"\n"
+msgstr ""
+"Auto-display variables:\n"
+"\n"
+
+#: debug.c:889
+msgid ""
+"Watch variables:\n"
+"\n"
+msgstr ""
+"Watch variables:\n"
+"\n"
+
+#: debug.c:1029
+#, c-format
+msgid "no symbol `%s' in current context\n"
+msgstr "no symbol `%s' in current context\n"
+
+#: debug.c:1041 debug.c:1427
+#, c-format
+msgid "`%s' is not an array\n"
+msgstr "`%s' bukan sebuah nama variabel legal\n"
+
+#: debug.c:1055
+#, c-format
+msgid "$%ld = uninitialized field\n"
+msgstr "referensi ke field tidak terinisialisasi $%ld\n"
+
+#: debug.c:1076
+#, c-format
+msgid "array `%s' is empty\n"
+msgstr "berkas data `%s' kosong\n"
+
+#: debug.c:1119 debug.c:1171
+#, c-format
+msgid "[\"%s\"] not in array `%s'\n"
+msgstr "indeks [\"%s\"] tidak dalam array `%s'\n"
+
+#: debug.c:1175
+#, c-format
+msgid "`%s[\"%s\"]' is not an array\n"
+msgstr "`%s[\"%s\"]' is no an array\n"
+
+#: debug.c:1236 debug.c:4964
+#, c-format
+msgid "`%s' is not a scalar variable"
+msgstr "`%s' bukan sebuah nama variabel legal"
+
+#: debug.c:1258 debug.c:4994
+#, c-format
+msgid "attempt to use array `%s[\"%s\"]' in a scalar context"
+msgstr "mencoba menggunakan array `%s[\"%s\"]' dalam sebuah konteks skalar"
+
+#: debug.c:1280 debug.c:5005
+#, c-format
+msgid "attempt to use scalar `%s[\"%s\"]' as array"
+msgstr "mencoba untuk menggunakan skalar `%s[\"%s\"]' sebagai sebuah array"
+
+#: debug.c:1423
+#, c-format
+msgid "`%s' is a function"
+msgstr "`%s' digunakan dalam aksi"
+
+#: debug.c:1465
+#, c-format
+msgid "watchpoint %d is unconditional\n"
+msgstr "watchpoint %d is unconditional\n"
+
+#: debug.c:1499
+#, c-format
+msgid "No display item numbered %ld"
+msgstr "No display item numbered %ld"
+
+#: debug.c:1502
+#, c-format
+msgid "No watch item numbered %ld"
+msgstr "No watch item numbered %ld"
+
+#: debug.c:1528
+#, c-format
+msgid "%d: [\"%s\"] not in array `%s'\n"
+msgstr "%d: indeks [\"%s\"] tidak dalam array `%s'\n"
+
+#: debug.c:1767
+msgid "attempt to use scalar value as array"
+msgstr "mencoba untuk menggunakan skalar sebagai sebuah array"
+
+#: debug.c:1856
+#, c-format
+msgid "Watchpoint %d deleted because parameter is out of scope.\n"
+msgstr "Watchpoint %d deleted because parameter is out of scope.\n"
+
+#: debug.c:1867
+#, c-format
+msgid "Display %d deleted because parameter is out of scope.\n"
+msgstr "Display %d deleted because parameter is out of scope.\n"
+
+#: debug.c:1900
+#, c-format
+msgid " in file `%s', line %d\n"
+msgstr " in file `%s', line %d\n"
+
+#: debug.c:1921
+#, c-format
+msgid " at `%s':%d"
+msgstr " at `%s':%d"
+
+#: debug.c:1937 debug.c:2000
+#, c-format
+msgid "#%ld\tin "
+msgstr "#%ld\tin"
+
+#: debug.c:1974
+#, c-format
+msgid "More stack frames follow ...\n"
+msgstr "More stack frames follow ...\n"
+
+#: debug.c:2017
+msgid "invalid frame number"
+msgstr "Akhir jangkauan tidak valid"
+
+#: debug.c:2200
+#, c-format
+msgid "Note: breakpoint %d (enabled, ignore next %ld hits), also set at %s:%d"
+msgstr "Note: breakpoint %d (enabled, ignore next %ld hits), alse set at %s:%d"
+
+#: debug.c:2207
+#, c-format
+msgid "Note: breakpoint %d (enabled), also set at %s:%d"
+msgstr "Note: breakpoint %d (enabled), also set at %s:%d"
+
+#: debug.c:2214
+#, c-format
+msgid "Note: breakpoint %d (disabled, ignore next %ld hits), also set at %s:%d"
+msgstr "Note: breakpoint %d (disabled, ignore next %ld hits), also set at %s:%d"
+
+#: debug.c:2221
+#, c-format
+msgid "Note: breakpoint %d (disabled), also set at %s:%d"
+msgstr "Note: breakpoint %d (disabled), also set at %s:%d"
+
+#: debug.c:2238
+#, c-format
+msgid "Breakpoint %d set at file `%s', line %d\n"
+msgstr "Breakpoint %d set at file `%s', line %d\n"
+
+#: debug.c:2340
+#, c-format
+msgid "Can't set breakpoint in file `%s'\n"
+msgstr "Can't set breakpoint in file `%s'\n"
+
+#: debug.c:2369 debug.c:2492 debug.c:3350
+#, c-format
+msgid "line number %d in file `%s' out of range"
+msgstr "argumen %d diluar dari jangkauan `%s'"
+
+#: debug.c:2373
+#, c-format
+msgid "Can't find rule!!!\n"
+msgstr "Can't find rule!!!\n"
+
+#: debug.c:2375
+#, c-format
+msgid "Can't set breakpoint at `%s':%d\n"
+msgstr "Can't set breakpoint at `%s':%d\n"
+
+#: debug.c:2387
+#, c-format
+msgid "Can't set breakpoint in function `%s'\n"
+msgstr "Can't set breakpoint in function `%s'\n"
+
+#: debug.c:2403
+#, c-format
+msgid "breakpoint %d set at file `%s', line %d is unconditional\n"
+msgstr "breakpoint %d set at file `%s', line %d is unconditional\n"
+
+#: debug.c:2508 debug.c:2530
+#, c-format
+msgid "Deleted breakpoint %d"
+msgstr "Deleted breakpoint %d"
+
+#: debug.c:2514
+#, c-format
+msgid "No breakpoint(s) at entry to function `%s'\n"
+msgstr "No breakpoint(s) at entry to function `%s'\n"
+
+#: debug.c:2541
+#, c-format
+msgid "No breakpoint at file `%s', line #%d\n"
+msgstr "error membaca berkas masukan `%s': %d\n"
+
+#: debug.c:2596 debug.c:2637 debug.c:2657 debug.c:2700
+msgid "invalid breakpoint number"
+msgstr "invalid breakpoint number"
+
+#: debug.c:2612
+msgid "Delete all breakpoints? (y or n) "
+msgstr "Delete all breakpoints? (y or n) "
+
+#: debug.c:2613 debug.c:2923 debug.c:2976
+msgid "y"
+msgstr "y"
+
+#: debug.c:2662
+#, c-format
+msgid "Will ignore next %ld crossing(s) of breakpoint %d.\n"
+msgstr "Will ignore next %ld crossing(s) of breakpoint %d.\n"
+
+#: debug.c:2666
+#, c-format
+msgid "Will stop next time breakpoint %d is reached.\n"
+msgstr "Will stop next time breakpoint %d is reached.\n"
+
+#: debug.c:2783
+#, c-format
+msgid "Can only debug programs provided with the `-f' option.\n"
+msgstr "Can only debug programs provided with the `-f' option.\n"
+
+#: debug.c:2908
+#, c-format
+msgid "Failed to restart debugger"
+msgstr "Failed to restart debugger"
+
+#: debug.c:2922
+msgid "Program already running. Restart from beginning (y/n)? "
+msgstr "Program already running. Restart from beginning (y/n)? "
+
+#: debug.c:2926
+#, c-format
+msgid "Program not restarted\n"
+msgstr "Program not restarted\n"
+
+#: debug.c:2936
+#, c-format
+msgid "error: cannot restart, operation not allowed\n"
+msgstr "error: cannot restart, operation not allowed\n"
+
+#: debug.c:2942
+#, c-format
+msgid "error (%s): cannot restart, ignoring rest of the commands\n"
+msgstr "error (%s): cannot restart, ignoring rest of the commands\n"
+
+#: debug.c:2950
+#, c-format
+msgid "Starting program: \n"
+msgstr "Starting program: \n"
+
+#: debug.c:2959
+#, c-format
+msgid "Program exited %s with exit value: %d\n"
+msgstr "Program exited %s with exit value: %d\n"
+
+#: debug.c:2975
+msgid "The program is running. Exit anyway (y/n)? "
+msgstr "The program is running. Exit anyway (y/n)? "
+
+#: debug.c:3010
+#, c-format
+msgid "Not stopped at any breakpoint; argument ignored.\n"
+msgstr "Not stopped at any breakpoint; argument ignored.\n"
+
+#: debug.c:3015
+#, c-format
+msgid "invalid breakpoint number %d."
+msgstr "invalid breakpoint number %d."
+
+#: debug.c:3020
+#, c-format
+msgid "Will ignore next %ld crossings of breakpoint %d.\n"
+msgstr "Will ignore next %ld crossings of breakpoint %d.\n"
+
+#: debug.c:3207
+#, c-format
+msgid "'finish' not meaningful in the outermost frame main()\n"
+msgstr "'finish' not meaningful in the outermost frame main()\n"
+
+#: debug.c:3212
+#, c-format
+msgid "Run till return from "
+msgstr "Run till return from"
+
+#: debug.c:3255
+#, c-format
+msgid "'return' not meaningful in the outermost frame main()\n"
+msgstr "'return' not meaningful in the outermost frame main()\n"
+
+#: debug.c:3369
+#, c-format
+msgid "Can't find specified location in function `%s'\n"
+msgstr "Can't find specified location in function `%s'\n"
+
+#: debug.c:3377
+#, c-format
+msgid "invalid source line %d in file `%s'"
+msgstr "invalid source line %d in file `%s'"
+
+#: debug.c:3392
+#, c-format
+msgid "Can't find specified location %d in file `%s'\n"
+msgstr "Can't find specified location %d in file `%s'\n"
+
+#: debug.c:3424
+#, c-format
+msgid "element not in array\n"
+msgstr "tidak dalam array\n"
+
+#: debug.c:3424
+#, c-format
+msgid "untyped variable\n"
+msgstr "untyped variable\n"
+
+#: debug.c:3466
+#, c-format
+msgid "Stopping in %s ...\n"
+msgstr "Stopping in %s ...\n"
+
+#: debug.c:3543
+#, c-format
+msgid "'finish' not meaningful with non-local jump '%s'\n"
+msgstr "'finish' not meaningful with non-local jump '%s'\n"
+
+#: debug.c:3550
+#, c-format
+msgid "'until' not meaningful with non-local jump '%s'\n"
+msgstr "'until' not meaningful with non-local jump '%s'\n"
+
+#: debug.c:4185
+msgid "\t------[Enter] to continue or q [Enter] to quit------"
+msgstr "\t------[Enter] to continue or q [Enter] to quit------"
+
+#: debug.c:4186
+msgid "q"
+msgstr "q"
+
+#: debug.c:5001
+#, c-format
+msgid "[\"%s\"] not in array `%s'"
+msgstr "[\"%s\"] tidak dalam array `%s'"
+
+#: debug.c:5207
+#, c-format
+msgid "sending output to stdout\n"
+msgstr "sending output to stdout\n"
+
+#: debug.c:5247
+msgid "invalid number"
+msgstr "invalid number"
+
+#: debug.c:5381
+#, c-format
+msgid "`%s' not allowed in current context; statement ignored"
+msgstr "`%s' not allowed in current context; statement ignored"
+
+#: debug.c:5389
+msgid "`return' not allowed in current context; statement ignored"
+msgstr "`return' not allowed in current context; statement ignored"
+
+#: debug.c:5590
+#, c-format
+msgid "No symbol `%s' in current context"
+msgstr "No symbol `%s' in current context"
+
+#: dfa.c:998 dfa.c:1001 dfa.c:1021 dfa.c:1031 dfa.c:1043 dfa.c:1094 dfa.c:1103
+#: dfa.c:1106 dfa.c:1111 dfa.c:1124 dfa.c:1191
+msgid "unbalanced ["
+msgstr "unbalanced ["
+
+#: dfa.c:1052
+msgid "invalid character class"
+msgstr "nama kelas karakter tidak valid"
+
+#: dfa.c:1228
+msgid "character class syntax is [[:space:]], not [:space:]"
+msgstr "character class syntax is [[:space:]], not [:space:]"
+
+#: dfa.c:1280
+msgid "unfinished \\ escape"
+msgstr "unfinished \\ escape"
+
+#: dfa.c:1427 regcomp.c:161
+msgid "Invalid content of \\{\\}"
+msgstr "Isi dari \\{\\} tidak valid"
+
+#: dfa.c:1430 regcomp.c:176
+msgid "Regular expression too big"
+msgstr "Ekspresi regular terlalu besar"
+
+#: dfa.c:1847
+msgid "unbalanced ("
+msgstr "unbalanced ("
+
+#: dfa.c:1973
+msgid "no syntax specified"
+msgstr "no syntax specified"
+
+#: dfa.c:1981
+msgid "unbalanced )"
+msgstr "unbalanced )"
+
+#: eval.c:394
#, c-format
msgid "unknown nodetype %d"
msgstr "tipe titik %d tidak diketahui"
-#: eval.c:421 eval.c:435
-#, fuzzy, c-format
+#: eval.c:405 eval.c:419
+#, c-format
msgid "unknown opcode %d"
msgstr "tipe titik %d tidak diketahui"
-#: eval.c:432
+#: eval.c:416
#, c-format
msgid "opcode %s not an operator or keyword"
-msgstr ""
+msgstr "opcode %s not an operator or keyword"
-#: eval.c:485
+#: eval.c:472
msgid "buffer overflow in genflags2str"
msgstr "buffer overflow dalam genflags2str"
-#: eval.c:696
+#: eval.c:675
#, c-format
msgid ""
"\n"
@@ -879,835 +1801,1208 @@ msgstr ""
"\t# Fungsi Call Stack:\n"
"\n"
-#: eval.c:723
+#: eval.c:704
msgid "`IGNORECASE' is a gawk extension"
msgstr "`IGNORECASE' adalah ekstensi gawk"
-#: eval.c:752
+#: eval.c:736
msgid "`BINMODE' is a gawk extension"
msgstr "`BINMODE' adalah ekstensi gawk"
-#: eval.c:810
+#: eval.c:794
#, c-format
msgid "BINMODE value `%s' is invalid, treated as 3"
msgstr "BINMODE nilai `%s' tidak valid, diperlakukan sebagai 3"
-#: eval.c:900
+#: eval.c:885
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "buruk `%sFMT' spesifikasi `%s'"
-#: eval.c:978
+#: eval.c:969
msgid "turning off `--lint' due to assignment to `LINT'"
-msgstr "menonaktifkan `--lint' karena assignmen ke `LINT'"
-
-#: eval.c:1247
-#, fuzzy
-msgid "sorted array traversal is a gawk extension"
-msgstr "`delete array' adalah sebuah ekstensi gawk"
-
-#: eval.c:1291
-msgid "`PROCINFO[\"sorted_in\"]' value is not recognized"
-msgstr ""
+msgstr "menonaktifkan `--lint' karena penempatan ke `LINT'"
-#: eval.c:1373 eval.c:1923
-#, c-format
-msgid "can't use function name `%s' as variable or array"
-msgstr ""
-"tidak dapat menggunakan nama fungsi `%s' sebagai sebuah variabel atau array"
-
-#: eval.c:1401
-msgid "assignment is not allowed to result of builtin function"
-msgstr "assignmen tidak diijinkan untuk menghasilkan fungsi bawaan"
-
-#: eval.c:1410 eval.c:1935 eval.c:1948
+#: eval.c:1147
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "referensi ke argumen `%s' tidak terinisialisasi"
-#: eval.c:1429
+#: eval.c:1148
+#, c-format
+msgid "reference to uninitialized variable `%s'"
+msgstr "referensi ke variabel `%s' tidak terinisialisasi"
+
+#: eval.c:1166
msgid "attempt to field reference from non-numeric value"
msgstr "mencoba untuk mereferensi field dari nilai bukan numerik"
-#: eval.c:1431
-#, fuzzy
+#: eval.c:1168
msgid "attempt to field reference from null string"
msgstr "mencoba untuk mereferensi dari null string"
-#: eval.c:1437
-#, fuzzy, c-format
+#: eval.c:1176
+#, c-format
msgid "attempt to access field %ld"
-msgstr "mencoba untuk mengakses field %d"
+msgstr "mencoba untuk mengakses field %ld"
-#: eval.c:1446
-#, fuzzy, c-format
+#: eval.c:1185
+#, c-format
msgid "reference to uninitialized field `$%ld'"
-msgstr "referensi ke field tidak terinisialisasi `$%d'"
+msgstr "referensi ke field tidak terinisialisasi `$%ld'"
-#: eval.c:1508
+#: eval.c:1272
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "fungsi `%s' dipanggil argumen lebih dari yang dideklarasikan"
-#: eval.c:1663
+#: eval.c:1473
#, c-format
msgid "unwind_stack: unexpected type `%s'"
-msgstr ""
+msgstr "unwind_stack: unexpected type `%s'"
-#: eval.c:1747
+#: eval.c:1569
msgid "division by zero attempted in `/='"
msgstr "pembagian dengan nol dicoba dalam `/='"
-#: eval.c:1754
+#: eval.c:1576
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "pembagian dengan nol dicoba dalam `%%='"
-#: eval.c:2057
-msgid "assignment used in conditional context"
-msgstr "assignment digunakan dalam konteks kondisional"
+#: ext.c:89 ext.c:171
+msgid "extensions are not allowed in sandbox mode"
+msgstr "extensions are not allowed in sandbox mode"
+
+#: ext.c:92
+msgid "-l / @load are gawk extensions"
+msgstr "adalah sebuah ekstensi gawk"
-#: eval.c:2061
-msgid "statement has no effect"
-msgstr "pernyataan tidak memiliki efek"
+#: ext.c:95
+msgid "load_ext: received NULL lib_name"
+msgstr "load_ext: received NULL lib_name"
-#: eval.c:2473
+#: ext.c:98
#, c-format
-msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
-msgstr ""
-"for loop: array `%s' berubah ukuran dari %ld ke %ld selama eksekusi loop"
+msgid "load_ext: cannot open library `%s' (%s)\n"
+msgstr "load_ext: tidak dapat membuka `%s' (%s)\n"
-#: eval.c:2583
+#: ext.c:104
#, c-format
-msgid "function called indirectly through `%s' does not exist"
-msgstr ""
+msgid "load_ext: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n"
+msgstr "load_ext: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n"
-#: eval.c:2595
+#: ext.c:110
#, c-format
-msgid "function `%s' not defined"
-msgstr "fungsi `%s' tidak didefinisikan"
+msgid "load_ext: library `%s': cannot call function `%s' (%s)\n"
+msgstr "load_ext: perpustakaan `%s': tidak dapat memanggil fungsi `%s' (%s)\n"
-#: eval.c:2656
-#, fuzzy, c-format
-msgid "non-redirected `getline' invalid inside `%s' rule"
-msgstr "tidak terdireksi `getline' tidak terdefinisi didalam aksi END"
+#: ext.c:114
+#, c-format
+msgid "load_ext: library `%s' initialization routine `%s' failed\n"
+msgstr "load_ext: library `%s' initialization routine `%s' failed\n"
-#: eval.c:2717
-#, fuzzy, c-format
-msgid "`nextfile' cannot be called from a `%s' rule"
-msgstr "`nextfile' tidak dapat dipanggil dari sebuah aturan END"
+#: ext.c:174
+msgid "`extension' is a gawk extension"
+msgstr "`extension' adalah sebuah ekstensi gawk"
-#: eval.c:2767
-#, fuzzy, c-format
-msgid "`next' cannot be called from a `%s' rule"
-msgstr "`next' tidak dapat dipanggil dari sebuah aturan END"
+#: ext.c:177
+msgid "extension: received NULL lib_name"
+msgstr "extension: received NULL lib_name"
-#: eval.c:2834
+#: ext.c:180
#, c-format
-msgid "Sorry, don't know how to interpret `%s'"
-msgstr ""
+msgid "extension: cannot open library `%s' (%s)"
+msgstr "extension: tidak dapat membuka `%s' (%s)"
-#: ext.c:64
-msgid "extensions are not allowed in sandbox mode"
-msgstr ""
+#: ext.c:186
+#, c-format
+msgid "extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)"
+msgstr "extension: perpustakaan `%s': tidak dapat memanggil fungsi (%s)"
-#: ext.c:70 ext.c:75
-msgid "`extension' is a gawk extension"
-msgstr "`extension' adalah sebuah ekstensi gawk"
+#: ext.c:190
+#, c-format
+msgid "extension: library `%s': cannot call function `%s' (%s)"
+msgstr "extension: perpustakaan `%s': tidak dapat memanggil fungsi `%s' (%s)"
-#: ext.c:85
-#, fuzzy, c-format
-msgid "fatal: extension: cannot open `%s' (%s)\n"
-msgstr "extension: tidak dapat membuka `%s' (%s)\n"
+#: ext.c:221
+msgid "make_builtin: missing function name"
+msgstr "make_builtin: hilang nama fungsi"
-#: ext.c:94
-#, fuzzy, c-format
-msgid ""
-"fatal: extension: library `%s': does not define "
-"`plugin_is_GPL_compatible' (%s)\n"
-msgstr "extension: perpustakaan `%s': tidak dapat memanggil fungsi `%s' (%s)\n"
+#: ext.c:236
+#, c-format
+msgid "make_builtin: can't redefine function `%s'"
+msgstr "make_builtin: tidak dapat meredefinisi fungsi `%s'"
-#: ext.c:103
-#, fuzzy, c-format
-msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n"
-msgstr "extension: perpustakaan `%s': tidak dapat memanggil fungsi `%s' (%s)\n"
+#: ext.c:240
+#, c-format
+msgid "make_builtin: function `%s' already defined"
+msgstr "make_builtin: fungsi `%s' telah didefinisikan"
+
+#: ext.c:244
+#, c-format
+msgid "make_builtin: function name `%s' previously defined"
+msgstr "make_builtin: nama fungsi `%s' telah didefinisikan sebelumnya"
-#: ext.c:137
+#: ext.c:246
+#, c-format
+msgid "make_builtin: can't use gawk built-in `%s' as function name"
+msgstr "make_builtin: tidak dapat menggunakan gawk bawaan `%s' sebagai nama fungsi"
+
+#: ext.c:249 ext.c:304
+#, c-format
+msgid "make_builtin: negative argument count for function `%s'"
+msgstr "make_builtin: negative argument count for function `%s'"
+
+#: ext.c:276
msgid "extension: missing function name"
msgstr "extension: hilang nama fungsi"
-#: ext.c:142
+#: ext.c:279 ext.c:283
#, c-format
msgid "extension: illegal character `%c' in function name `%s'"
msgstr "extension: karakter `%c' tidak legal dalam nama fungsi `%s'"
-#: ext.c:151
+#: ext.c:291
#, c-format
msgid "extension: can't redefine function `%s'"
msgstr "extension: tidak dapat meredefinisi fungsi `%s'"
-#: ext.c:155
+#: ext.c:295
#, c-format
msgid "extension: function `%s' already defined"
msgstr "extension: fungsi `%s' telah didefinisikan"
-#: ext.c:160
+#: ext.c:299
#, c-format
msgid "extension: function name `%s' previously defined"
msgstr "extension: nama fungsi `%s' telah didefinisikan sebelumnya"
-#: ext.c:162
+#: ext.c:301
#, c-format
msgid "extension: can't use gawk built-in `%s' as function name"
-msgstr ""
-"extension: tidak dapat menggunakan gawk bawaan `%s' sebagai nama fungsi"
+msgstr "extension: tidak dapat menggunakan gawk bawaan `%s' sebagai nama fungsi"
-#: ext.c:166
+#: ext.c:375
#, c-format
-msgid "make_builtin: negative argument count for function `%s'"
-msgstr ""
-
-#: ext.c:269
-#, fuzzy, c-format
msgid "function `%s' defined to take no more than %d argument(s)"
msgstr "fungsi `%s' didefinisikan untuk mengambil lebih dari %d argumen"
-#: ext.c:272
+#: ext.c:378
#, c-format
msgid "function `%s': missing argument #%d"
msgstr "fungsi `%s': hilang argumen #%d"
-#: ext.c:282
+#: ext.c:395
#, c-format
msgid "function `%s': argument #%d: attempt to use scalar as an array"
-msgstr ""
-"fungsi `%s': argumen #%d: mencoba menggunaka skalar sebagai sebuah array"
+msgstr "fungsi `%s': argumen #%d: mencoba menggunaka skalar sebagai sebuah array"
-#: ext.c:286
+#: ext.c:399
#, c-format
msgid "function `%s': argument #%d: attempt to use array as a scalar"
-msgstr ""
-"fungsi `%s': argumen #%d: mencoba untuk menggunakan array sebagai sebuah "
-"skalar"
+msgstr "fungsi `%s': argumen #%d: mencoba untuk menggunakan array sebagai sebuah skalar"
-#: ext.c:299
-msgid "Operation Not Supported"
-msgstr "Operasi Tidak Didukung"
+#: ext.c:413
+msgid "dynamic loading of library not supported"
+msgstr "dynamic loading of library not supported"
+
+#: extension/filefuncs.c:159
+msgid "chdir: called with incorrect number of arguments, expecting 1"
+msgstr "chdir: dipanggil dengan argumen %g negatif"
+
+#: extension/filefuncs.c:439
+#, c-format
+msgid "stat: unable to read symbolic link `%s'"
+msgstr "stat: unable to read symbolic link `%s'"
+
+#: extension/filefuncs.c:472
+msgid "stat: called with wrong number of arguments"
+msgstr "stat: dipanggil dengan argumen negatif"
+
+#: extension/filefuncs.c:479
+msgid "stat: bad parameters"
+msgstr "stat: adalah parameter"
+
+#: extension/filefuncs.c:533
+#, c-format
+msgid "fts init: could not create variable %s"
+msgstr "fts init: could not create variable %s"
+
+#: extension/filefuncs.c:554
+msgid "fts is not supported on this system"
+msgstr "tidak didukung dalam awk lama"
+
+#: extension/filefuncs.c:573
+msgid "fill_stat_element: could not create array"
+msgstr "fill_stat_element: could not create array"
+
+#: extension/filefuncs.c:582
+msgid "fill_stat_element: could not set element"
+msgstr "fill_stat_element: could not set element"
+
+#: extension/filefuncs.c:597
+msgid "fill_path_element: could not set element"
+msgstr "fill_path_element: could not set element"
+
+#: extension/filefuncs.c:613
+msgid "fill_error_element: could not set element"
+msgstr "fill_error_element: could not set element"
+
+#: extension/filefuncs.c:660 extension/filefuncs.c:707
+msgid "fts-process: could not create array"
+msgstr "fts-process: could not create array"
+
+#: extension/filefuncs.c:670 extension/filefuncs.c:717
+#: extension/filefuncs.c:735
+msgid "fts-process: could not set element"
+msgstr "fts-process: could not set element"
+
+#: extension/filefuncs.c:784
+msgid "fts: called with incorrect number of arguments, expecting 3"
+msgstr "fts: dipanggil dengan argumen negatif"
+
+#: extension/filefuncs.c:787
+msgid "fts: bad first parameter"
+msgstr "fts: adalah parameter"
+
+#: extension/filefuncs.c:793
+msgid "fts: bad second parameter"
+msgstr "fts: adalah parameter"
+
+#: extension/filefuncs.c:799
+msgid "fts: bad third parameter"
+msgstr "fts: adalah parameter"
+
+#: extension/filefuncs.c:806
+msgid "fts: could not flatten array\n"
+msgstr "fts: could not flatten array\n"
-#: field.c:328
+#: extension/filefuncs.c:824
+msgid "fts: ignoring sneaky FTS_NOSTAT flag. nyah, nyah, nyah."
+msgstr "fts: ignoring sneaky FTS_NOSTAT flag. nyah, nyah, nyah."
+
+#: extension/filefuncs.c:841
+msgid "fts: clear_array() failed\n"
+msgstr "fts: clear_array() failed\n"
+
+#: extension/fnmatch.c:112
+msgid "fnmatch: called with less than three arguments"
+msgstr "fnmatch: dipanggil dengan argumen negatif"
+
+#: extension/fnmatch.c:115
+msgid "fnmatch: called with more than three arguments"
+msgstr "fnmatch: dipanggil dengan argumen negatif"
+
+#: extension/fnmatch.c:118
+msgid "fnmatch: could not get first argument"
+msgstr "fnmatch: diterima argumen pertama bukan string"
+
+#: extension/fnmatch.c:123
+msgid "fnmatch: could not get second argument"
+msgstr "fnmatch: diterima argumen kedua bukan string"
+
+#: extension/fnmatch.c:128
+msgid "fnmatch: could not get third argument"
+msgstr "fnmatch: could not get third argument"
+
+#: extension/fnmatch.c:141
+msgid "fnmatch is not implemented on this system\n"
+msgstr "fnmatch is not implemented on this system\n"
+
+#: extension/fnmatch.c:173
+msgid "fnmatch init: could not add FNM_NOMATCH variable"
+msgstr "fnmatch init: could not add FNM_NOMATCH variable"
+
+#: extension/fnmatch.c:183
+#, c-format
+msgid "fnmatch init: could not set array element %s"
+msgstr "fnmatch init: could not set array element %s"
+
+#: extension/fnmatch.c:193
+msgid "fnmatch init: could not install FNM array"
+msgstr "fnmatch init: could not install FNM array"
+
+#: extension/fork.c:81
+msgid "fork: called with too many arguments"
+msgstr "fork: dipanggil dengan argumen negatif"
+
+#: extension/fork.c:94
+msgid "fork: PROCINFO is not an array!"
+msgstr "fork: PROCINFO is not an array!"
+
+#: extension/fork.c:118
+msgid "waitpid: called with too many arguments"
+msgstr "waitpid: dipanggil dengan argumen negatif"
+
+#: extension/fork.c:126
+msgid "wait: called with no arguments"
+msgstr "wait: dipanggil dengan argumen negatif"
+
+#: extension/fork.c:143
+msgid "wait: called with too many arguments"
+msgstr "wait: dipanggil dengan argumen negatif"
+
+#: extension/inplace.c:130
+msgid "inplace_begin: in-place editing already active"
+msgstr "inplace_begin: in-place editing already active"
+
+#: extension/inplace.c:133 extension/inplace.c:207
+#, c-format
+msgid "inplace_begin: expects 2 arguments but called with %d"
+msgstr "inplace_begin: expects 2 arguments but called with %d"
+
+#: extension/inplace.c:136
+msgid "inplace_begin: cannot retrieve 1st argument as a string filename"
+msgstr "inplace_begin: cannot retrieve 1st argument as a string filename"
+
+#: extension/inplace.c:144
+#, c-format
+msgid "inplace_begin: disabling in-place editing for invalid FILENAME `%s'"
+msgstr "inplace_begin: disabling in-place editing for invalid FILENAME `%s'"
+
+#: extension/inplace.c:151
+#, c-format
+msgid "inplace_begin: Cannot stat `%s' (%s)"
+msgstr "inplace_begin: tidak dapat membuka `%s' (%s)"
+
+#: extension/inplace.c:158
+#, c-format
+msgid "inplace_begin: `%s' is not a regular file"
+msgstr "inplace_begin: `%s' is not a regular file"
+
+#: extension/inplace.c:169
+#, c-format
+msgid "inplace_begin: mkstemp(`%s') failed (%s)"
+msgstr "inplace_begin: mkstemp(`%s') failed (%s)"
+
+#: extension/inplace.c:178
+#, c-format
+msgid "inplace_begin: chmod failed (%s)"
+msgstr "inplace_begin: tutup gagal (%s)"
+
+#: extension/inplace.c:185
+#, c-format
+msgid "inplace_begin: dup(stdout) failed (%s)"
+msgstr "inplace_begin: dup(stdout) failed (%s)"
+
+#: extension/inplace.c:188
+#, c-format
+msgid "inplace_begin: dup2(%d, stdout) failed (%s)"
+msgstr "inplace_begin: dup2(%d, stdout) failed (%s)"
+
+#: extension/inplace.c:191
+#, c-format
+msgid "inplace_begin: close(%d) failed (%s)"
+msgstr "inplace_begin: tutup(%d) gagal (%s)"
+
+#: extension/inplace.c:210
+msgid "inplace_end: cannot retrieve 1st argument as a string filename"
+msgstr "inplace_end: cannot retrieve 1st argument as a string filename"
+
+#: extension/inplace.c:217
+msgid "inplace_end: in-place editing not active"
+msgstr "inplace_end: in-place editing not active"
+
+#: extension/inplace.c:223
+#, c-format
+msgid "inplace_end: dup2(%d, stdout) failed (%s)"
+msgstr "inplace_end: dup2(%d, stdout) failed (%s)"
+
+#: extension/inplace.c:226
+#, c-format
+msgid "inplace_end: close(%d) failed (%s)"
+msgstr "inplace_end: tutup(%d) gagal (%s)"
+
+#: extension/inplace.c:230
+#, c-format
+msgid "inplace_end: fsetpos(stdout) failed (%s)"
+msgstr "inplace_end: fsetpos(stdout) failed (%s)"
+
+#: extension/inplace.c:243
+#, c-format
+msgid "inplace_end: link(`%s', `%s') failed (%s)"
+msgstr "inplace_end: pipe flush dari (`%s',`%s') gagal (%s)."
+
+#: extension/inplace.c:253
+#, c-format
+msgid "inplace_end: rename(`%s', `%s') failed (%s)"
+msgstr "inplace_end: penutupan dari fd (`%s',`%s') gagal (%s)"
+
+#: extension/ordchr.c:69
+msgid "ord: called with too many arguments"
+msgstr "ord: dipanggil dengan argumen negatif"
+
+#: extension/ordchr.c:75
+msgid "ord: called with no arguments"
+msgstr "ord: dipanggil dengan argumen negatif"
+
+#: extension/ordchr.c:77
+msgid "ord: called with inappropriate argument(s)"
+msgstr "ord: dipanggil dengan argumen negatif"
+
+#: extension/ordchr.c:99
+msgid "chr: called with too many arguments"
+msgstr "chr: dipanggil dengan argumen negatif"
+
+#: extension/ordchr.c:109
+msgid "chr: called with no arguments"
+msgstr "chr: dipanggil dengan argumen negatif"
+
+#: extension/ordchr.c:111
+msgid "chr: called with inappropriate argument(s)"
+msgstr "chr: dipanggil dengan argumen negatif"
+
+#: extension/readdir.c:277
+#, c-format
+msgid "dir_take_control_of: opendir/fdopendir failed: %s"
+msgstr "dir_take_control_of: opendir/fdopendir failed: %s"
+
+#: extension/readfile.c:84
+msgid "readfile: called with too many arguments"
+msgstr "readfile: dipanggil dengan argumen negatif"
+
+#: extension/readfile.c:118
+msgid "readfile: called with no arguments"
+msgstr "readfile: dipanggil dengan argumen negatif"
+
+#: extension/rwarray.c:124
+msgid "writea: called with too many arguments"
+msgstr "writea: dipanggil dengan argumen negatif"
+
+#: extension/rwarray.c:131
+#, c-format
+msgid "do_writea: argument 0 is not a string\n"
+msgstr "do_write: argumen diluar dari jangkauan\n"
+
+#: extension/rwarray.c:137
+#, c-format
+msgid "do_writea: argument 1 is not an array\n"
+msgstr "do_writea: argumen kedua bukan sebuah array\n"
+
+#: extension/rwarray.c:184
+#, c-format
+msgid "write_array: could not flatten array\n"
+msgstr "write_array: could not flatten array\n"
+
+#: extension/rwarray.c:198
+#, c-format
+msgid "write_array: could not release flattened array\n"
+msgstr "write_array: could not release flattened array\n"
+
+#: extension/rwarray.c:280
+msgid "reada: called with too many arguments"
+msgstr "reada: dipanggil dengan argumen negatif"
+
+#: extension/rwarray.c:287
+#, c-format
+msgid "do_reada: argument 0 is not a string\n"
+msgstr "do_reada: argumen diluar dari jangkauan\n"
+
+#: extension/rwarray.c:293
+#, c-format
+msgid "do_reada: argument 1 is not an array\n"
+msgstr "do_reada: argumen ketiga bukan sebuah array\n"
+
+#: extension/rwarray.c:337
+#, c-format
+msgid "do_reada: clear_array failed\n"
+msgstr "do_reada: clear_array failed\n"
+
+#: extension/rwarray.c:374
+#, c-format
+msgid "read_array: set_array_element failed\n"
+msgstr "read_array: set_array_element failed\n"
+
+#: extension/time.c:106
+msgid "gettimeofday: ignoring arguments"
+msgstr "gettimeofday: diterima argumen bukan string"
+
+#: extension/time.c:137
+msgid "gettimeofday: not supported on this platform"
+msgstr "gettimeofday: not supported on this platform"
+
+#: extension/time.c:158
+msgid "sleep: called with too many arguments"
+msgstr "sleep: dipanggil dengan argumen negatif"
+
+#: extension/time.c:161
+msgid "sleep: missing required numeric argument"
+msgstr "sleep: diterima argumen bukan-numerik"
+
+#: extension/time.c:167
+msgid "sleep: argument is negative"
+msgstr "sleep: argumen diluar dari jangkauan"
+
+#: extension/time.c:201
+msgid "sleep: not supported on this platform"
+msgstr "sleep: not supported on this platform"
+
+#: field.c:345
msgid "NF set to negative value"
msgstr "NF set ke nilai negatif"
-#: field.c:939 field.c:946 field.c:950
-#, fuzzy
+#: field.c:971 field.c:978 field.c:982
msgid "split: fourth argument is a gawk extension"
-msgstr "cocok: argumen ketiga adalah sebuah ekstensi gawk"
+msgstr "split: argumen ketiga adalah sebuah ekstensi gawk"
-#: field.c:943
-#, fuzzy
+#: field.c:975
msgid "split: fourth argument is not an array"
msgstr "split: argumen kedua bukan sebuah array"
-#: field.c:957
+#: field.c:989
msgid "split: second argument is not an array"
msgstr "split: argumen kedua bukan sebuah array"
-#: field.c:962
-msgid "split: can not use the same array for second and fourth args"
-msgstr ""
+#: field.c:993
+msgid "split: cannot use the same array for second and fourth args"
+msgstr "split: cannot use the same array for second and fourth args"
-#: field.c:990
+#: field.c:998
+msgid "split: cannot use a subarray of second arg for fourth arg"
+msgstr "split: cannot use a subarray of second arg for fourth arg"
+
+#: field.c:1001
+msgid "split: cannot use a subarray of fourth arg for second arg"
+msgstr "split: cannot use a subarray of fourth arg for secod arg"
+
+#: field.c:1032
msgid "split: null string for third arg is a gawk extension"
msgstr "split: null string untuk arg ketika adalah sebuah ekstensi gawk"
-#: field.c:1031
-#, fuzzy
+#: field.c:1072
msgid "patsplit: fourth argument is not an array"
-msgstr "split: argumen kedua bukan sebuah array"
+msgstr "patsplit: argumen kedua bukan sebuah array"
-#: field.c:1036
-#, fuzzy
+#: field.c:1077
msgid "patsplit: second argument is not an array"
-msgstr "split: argumen kedua bukan sebuah array"
+msgstr "patsplit: argumen kedua bukan sebuah array"
-#: field.c:1054
-#, fuzzy
+#: field.c:1083
msgid "patsplit: third argument must be non-null"
-msgstr "match: argumen ketiga bukan sebuah array"
+msgstr "patsplit: argumen ketiga bukan sebuah array"
-#: field.c:1059
-msgid "patsplit: can not use the same array for second and fourth args"
-msgstr ""
+#: field.c:1087
+msgid "patsplit: cannot use the same array for second and fourth args"
+msgstr "patsplit: cannot use the same array for second and fourth args"
-#: field.c:1089
+#: field.c:1092
+msgid "patsplit: cannot use a subarray of second arg for fourth arg"
+msgstr "patsplit: cannot use a subarray of second arg for fourth arg"
+
+#: field.c:1095
+msgid "patsplit: cannot use a subarray of fourth arg for second arg"
+msgstr "patsplit: cannot use a subarray of fourth arg for second arg"
+
+#: field.c:1133
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "`FIELDWIDTHS' adalah sebuah ekstensi gawk"
-#: field.c:1152
+#: field.c:1197
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr "nilai FIELDWIDTHS tidak valid, didekat `%s'"
-#: field.c:1225
+#: field.c:1270
msgid "null string for `FS' is a gawk extension"
msgstr "null string untuk `FS' adalah sebuah ekstensi gawk"
-#: field.c:1229
+#: field.c:1274
msgid "old awk does not support regexps as value of `FS'"
msgstr "awk lama tidak mendukung regexps sebagai nilai dari `FS'"
-#: field.c:1348
-#, fuzzy
+#: field.c:1393
msgid "`FPAT' is a gawk extension"
-msgstr "`%s' adalah sebuah ekstensi gawk"
+msgstr "`FPAT' adalah sebuah ekstensi gawk"
+
+#: gawkapi.c:146
+msgid "awk_value_to_node: received null retval"
+msgstr "awk_value_to_node: received null retval"
+
+#: gawkapi.c:384
+msgid "node_to_awk_value: received null node"
+msgstr "node_to_awk_value: received null node"
+
+#: gawkapi.c:387
+msgid "node_to_awk_value: received null val"
+msgstr "node_to_awk_value: received null val"
+
+#: gawkapi.c:808
+msgid "remove_element: received null array"
+msgstr "remove_element: received null array"
+
+#: gawkapi.c:811
+msgid "remove_element: received null subscript"
+msgstr "remove_element: received null subscript"
+
+#: gawkapi.c:948
+#, c-format
+msgid "api_flatten_array: could not convert index %d\n"
+msgstr "api_flatten_array: could not convert index %d\n"
+
+#: gawkapi.c:953
+#, c-format
+msgid "api_flatten_array: could not convert value %d\n"
+msgstr "api_flatten_array: could not convert value %d\n"
-#: getopt.c:574 getopt.c:590
+#: getopt.c:604 getopt.c:633
#, c-format
-msgid "%s: option '%s' is ambiguous\n"
-msgstr "%s: pilihan '%s' adalah ambigu\n"
+msgid "%s: option '%s' is ambiguous; possibilities:"
+msgstr "%s: pilihan '%s' adalah ambigu"
-#: getopt.c:623 getopt.c:627
+#: getopt.c:679 getopt.c:683
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: pilihan '--%s' tidak mengijinkan sebuah argumen\n"
-#: getopt.c:636 getopt.c:641
+#: getopt.c:692 getopt.c:697
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: pilihan '%c%s' tidak mengijinkan sebuah argumen\n"
-#: getopt.c:684 getopt.c:703
-#, fuzzy, c-format
+#: getopt.c:740 getopt.c:759
+#, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s: pilihan '%s' membutuhkan sebuah argumen\n"
+msgstr "%s: pilihan '--%s' membutuhkan sebuah argumen\n"
-#: getopt.c:741 getopt.c:744
+#: getopt.c:797 getopt.c:800
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: pilihan tidak dikenal '--%s'\n"
-#: getopt.c:752 getopt.c:755
+#: getopt.c:808 getopt.c:811
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: pilihan tidak dikenal '%c%s'\n"
-#: getopt.c:804 getopt.c:807
+#: getopt.c:860 getopt.c:863
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: pilihan tidak valid -- '%c'\n"
-#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100
+#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: pilihan membutuhkan sebuah argumen -- '%c'\n"
-#: getopt.c:930 getopt.c:946
+#: getopt.c:989 getopt.c:1005
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: pilihan '-W %s' adalah ambigu\n"
-#: getopt.c:970 getopt.c:988
+#: getopt.c:1029 getopt.c:1047
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: pilihan '-W %s' tidak mengijinkan sebuah argumen\n"
-#: getopt.c:1009 getopt.c:1027
-#, fuzzy, c-format
+#: getopt.c:1068 getopt.c:1086
+#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: pilihan '%s' membutuhkan sebuah argumen\n"
+msgstr "%s: pilihan '-w %s' membutuhkan sebuah argumen\n"
-#: io.c:282
+#: io.c:392
#, c-format
msgid "command line argument `%s' is a directory: skipped"
-msgstr ""
+msgstr "command line argument `%s' is a directory: skipped"
-#: io.c:285 io.c:382
+#: io.c:395 io.c:513
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "tidak dapat membuka berkas `%s' untuk membaca (%s)"
-#: io.c:429
-#, c-format
-msgid "error reading input file `%s': %s"
-msgstr "error membaca berkas masukan `%s': %s"
-
-#: io.c:498
+#: io.c:640
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "penutupan dari fd %d (`%s') gagal (%s)"
-#: io.c:575
+#: io.c:716
msgid "redirection not allowed in sandbox mode"
-msgstr ""
+msgstr "redirection not allowed in sandbox mode"
-#: io.c:609
+#: io.c:750
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "ekspresi dalam `%s' redireksi hanya memiliki nilai numerik"
-#: io.c:615
+#: io.c:756
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "ekspresi untuk `%s' redireksi hanya memiliki nilai string null"
-#: io.c:621
+#: io.c:761
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
-msgstr ""
-"nama berkas `%s' untuk `%s' redireksi hanya menghasilkan ekspresi logikal"
+msgstr "nama berkas `%s' untuk `%s' redireksi hanya menghasilkan ekspresi logikal"
-#: io.c:664
+#: io.c:809
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "pencampuran tidak perlu dari `>' dan `>>' untuk berkas `%.*s'"
-#: io.c:717
+#: io.c:863
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "tidak dapat membuka pipe `%s' untuk keluaran (%s)"
-#: io.c:727
+#: io.c:873
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "tidak dapat membuka pipe `%s' untuk masukan (%s)"
-#: io.c:749
+#: io.c:904
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "tidak dapat membuka pipe dua arah `%s' untuk input/output (%s)"
-#: io.c:831
+#: io.c:986
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "tidak dapat redirek dari `%s' (%s)"
-#: io.c:834
+#: io.c:989
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "tidak dapat redirek ke `%s' (%s)"
-#: io.c:883
-msgid ""
-"reached system limit for open files: starting to multiplex file descriptors"
-msgstr ""
-"batas sistem tercapi untuk berkas terbuka: mulai untuk multiplex berkas "
-"deskripsi"
+#: io.c:1040
+msgid "reached system limit for open files: starting to multiplex file descriptors"
+msgstr "batas sistem tercapi untuk berkas terbuka: mulai untuk multiplex berkas deskripsi"
-#: io.c:899
+#: io.c:1056
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "penutupan dari `%s' gagal (%s)."
-#: io.c:907
+#: io.c:1064
msgid "too many pipes or input files open"
msgstr "terlalu banyak pipes atau berkas masukan terbuka"
-#: io.c:929
+#: io.c:1086
msgid "close: second argument must be `to' or `from'"
msgstr "close: argumen kedua harus berupa `to' atau `from'"
-#: io.c:946
+#: io.c:1103
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: `%.*s' bukan sebuah berkas terbuka, pipe atau co-proses"
-#: io.c:951
+#: io.c:1108
msgid "close of redirection that was never opened"
msgstr "penutupan dari redireksi yang tidak pernah terbuka"
-#: io.c:1048
+#: io.c:1205
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
-msgstr ""
-"close: redireksi `%s' tidak dibuka dengan `|&', argumen kedua diabaikan"
+msgstr "close: redireksi `%s' tidak dibuka dengan `|&', argumen kedua diabaikan"
-#: io.c:1064
+#: io.c:1222
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "status gagal (%d) di tutup pipe dari `%s' (%s)"
-#: io.c:1067
+#: io.c:1225
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "status gagal (%d) di tutup berkas dari `%s' (%s)"
-#: io.c:1087
+#: io.c:1245
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "tidak ada eksplisit tutup dari socket `%s' yang disediakan"
-#: io.c:1090
+#: io.c:1248
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "tidak ada eksplisit tutup dari co-proses `%s' yang disediakan"
-#: io.c:1093
+#: io.c:1251
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "tidak ada eksplisit tutup dari pipe `%s' disediakan"
-#: io.c:1096
+#: io.c:1254
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "tidak ada eksplisit close dari berkas `%s' disediakan"
-#: io.c:1124 io.c:1179 main.c:809 main.c:851
+#: io.c:1284 io.c:1342 main.c:864 main.c:906
#, c-format
msgid "error writing standard output (%s)"
msgstr "error menulis standar keluaran (%s)"
-#: io.c:1128 io.c:1184
+#: io.c:1289 io.c:1348 main.c:866
#, c-format
msgid "error writing standard error (%s)"
msgstr "error menulis standar error (%s)"
-#: io.c:1136
+#: io.c:1297
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "pipe flush dari `%s' gagal (%s)."
-#: io.c:1139
+#: io.c:1300
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "co-proses flush dari pipe ke `%s' gagal (%s)."
-#: io.c:1142
+#: io.c:1303
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "file flush dari `%s' gagal (%s)."
-#: io.c:1257
+#: io.c:1420
#, c-format
msgid "local port %s invalid in `/inet'"
msgstr "lokal port %s tidak valid dalam `/inet'"
-#: io.c:1274
+#: io.c:1438
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr "remote host dan informasi port (%s, %s) tidak valid"
-#: io.c:1426
+#: io.c:1590
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
-msgstr ""
-"tidak (diketahui) protokol yang diberikan dalam nama berkas spesial `%s'"
+msgstr "tidak (diketahui) protokol yang diberikan dalam nama berkas spesial `%s'"
-#: io.c:1440
+#: io.c:1604
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "nama berkas spesial `%s' tidak lengkap"
-#: io.c:1457
+#: io.c:1621
msgid "must supply a remote hostname to `/inet'"
msgstr "harus memberikan sebuah remote hostname ke `/inet'"
-#: io.c:1475
+#: io.c:1639
msgid "must supply a remote port to `/inet'"
msgstr "harus memberikan sebuah remote port ke `/inet'"
-#: io.c:1521
+#: io.c:1685
msgid "TCP/IP communications are not supported"
msgstr "komunikasi TCP/IP tidak didukung"
-#: io.c:1688
+#: io.c:1867
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "tidak dapat membuka `%s', mode `%s'"
-#: io.c:1739
+#: io.c:1917
#, c-format
msgid "close of master pty failed (%s)"
msgstr "penutupan dari master pty gagal (%s)"
-#: io.c:1741 io.c:1909 io.c:2066
+#: io.c:1919 io.c:2105 io.c:2305
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "penutupan dari stdout dalam child gagal (%s)"
-#: io.c:1744
+#: io.c:1922
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "memindahkan slave pty ke stdout dalam child gagal (dup: %s)"
-#: io.c:1746 io.c:1914
+#: io.c:1924 io.c:2110
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "penutupan dari stdin dalam anak gagal (%s)"
-#: io.c:1749
+#: io.c:1927
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "memindahkan slave pty ke stdin dalam anak gagal (dup: %s)"
-#: io.c:1751 io.c:1772
+#: io.c:1929 io.c:1951
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "penutupan dari pty budak gagal (%s)"
-#: io.c:1850 io.c:1912 io.c:2044 io.c:2069
+#: io.c:2040 io.c:2108 io.c:2276 io.c:2308
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "memindahkan pipe ke stdout dalam anak gaal (dup: %s)"
-#: io.c:1857 io.c:1917
+#: io.c:2047 io.c:2113
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "memindahkan pipe ke stdin dalam anak gagal (dup: %s)"
-#: io.c:1877 io.c:2059
+#: io.c:2073 io.c:2298
msgid "restoring stdout in parent process failed\n"
msgstr "mengembalikan stdout dalam proses orang tua gagal\n"
-#: io.c:1885
+#: io.c:2081
msgid "restoring stdin in parent process failed\n"
msgstr "mengembalikan stdin dalam proses orang tua gagal\n"
-#: io.c:1920 io.c:2071 io.c:2085
+#: io.c:2116 io.c:2310 io.c:2324
#, c-format
msgid "close of pipe failed (%s)"
msgstr "penutupan dari pipe gagal (%s)"
-#: io.c:1965
+#: io.c:2174
msgid "`|&' not supported"
msgstr "`|&' tidak didukung"
-#: io.c:2031
+#: io.c:2261
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "tidak dapat membuka pipe `%s' (%s)"
-#: io.c:2079
+#: io.c:2318
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "tidak dapat membuat proses anak untuk `%s' (fork: %s)"
-#: io.c:2569
+#: io.c:2790
+msgid "register_input_parser: received NULL pointer"
+msgstr "register_input_parser: received NULL pointer"
+
+#: io.c:2818
+#, c-format
+msgid "input parser `%s' conflicts with previously installed input parser `%s'"
+msgstr "input parser `%s' conflicts with previously installed input parser `%s'"
+
+#: io.c:2825
+#, c-format
+msgid "input parser `%s' failed to open `%s'"
+msgstr "input parser `%s' failed to open `%s'"
+
+#: io.c:2845
+msgid "register_output_wrapper: received NULL pointer"
+msgstr "register_output_wrapper: received NULL pointer"
+
+#: io.c:2873
+#, c-format
+msgid "output wrapper `%s' conflicts with previously installed output wrapper `%s'"
+msgstr "output wrapper `%s' conflicts with previously installed output wrapper `%s'"
+
+#: io.c:2880
+#, c-format
+msgid "output wrapper `%s' failed to open `%s'"
+msgstr "output wrapper `%s' failed to open `%s'"
+
+#: io.c:2901
+msgid "register_output_processor: received NULL pointer"
+msgstr "register_output_processor: received NULL pointer"
+
+#: io.c:2930
+#, c-format
+msgid "two-way processor `%s' conflicts with previously installed two-way processor `%s'"
+msgstr "two-way processor `%s' conflicts with previously installed two-way processor `%s'"
+
+#: io.c:2939
+#, c-format
+msgid "two way processor `%s' failed to open `%s'"
+msgstr "two way processor `%s' failed to open `%s'"
+
+#: io.c:3064
#, c-format
msgid "data file `%s' is empty"
msgstr "berkas data `%s' kosong"
-#: io.c:2610 io.c:2618
+#: io.c:3106 io.c:3114
msgid "could not allocate more input memory"
msgstr "tidak dapat mengalokasikan lebih dari masukan memori"
-#: io.c:3171
+#: io.c:3682
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "nilai multi karakter dari `RS' adalah sebuah ekstensi gawk"
-#: io.c:3276
-#, fuzzy
+#: io.c:3771
msgid "IPv6 communication is not supported"
-msgstr "komunikasi TCP/IP tidak didukung"
-
-#: main.c:307
-msgid "out of memory"
-msgstr "kehabisan memori"
+msgstr "IPv6 komunikasi TCP/IP tidak didukung"
-#: main.c:384
-msgid "`-m[fr]' option irrelevant in gawk"
-msgstr "pilihan `-m[fr]' tidak relevan dalam gawk"
-
-#: main.c:386
-msgid "-m option usage: `-m[fr] nnn'"
-msgstr "penggunaan pilihan -m: `-m[fr] nnn'"
-
-#: main.c:409
-#, fuzzy
+#: main.c:405
msgid "empty argument to `-e/--source' ignored"
-msgstr "argumen kosong ke `--source' diabaikan"
+msgstr "argumen kosong ke `-e/--source' diabaikan"
-#: main.c:475
+#: main.c:495
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: pilihan `-W %s' tidak dikenal, diabaikan\n"
-#: main.c:528
+#: main.c:541
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr "%s: pilihan membutuhkan sebuah argumen -- %c\n"
-#: main.c:549
+#: main.c:562
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "variabel lingkungan `POSIXLY_CORRECT' set: mengaktifkan `--posix'"
-#: main.c:555
+#: main.c:568
msgid "`--posix' overrides `--traditional'"
msgstr "`--posix' overrides `--traditional'"
-#: main.c:566
+#: main.c:579
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "`--posix'/`--traditional' overrides `--non-decimal-data'"
-#: main.c:570
+#: main.c:583
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "menjalankan %s setuid root mungkin sebuah masalah keamanan"
-#: main.c:575
-#, fuzzy
-msgid "`--posix' overrides `--binary'"
-msgstr "`--posix' overrides `--traditional'"
+#: main.c:588
+msgid "`--posix' overrides `--characters-as-bytes'"
+msgstr "`--posix' overrides `--characters-as-bytes'"
-#: main.c:626
+#: main.c:647
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "tidak dapat menset mode binari di stdin (%s)"
-#: main.c:629
+#: main.c:650
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "tidak dapat menset mode binari di stdout (%s)"
-#: main.c:631
+#: main.c:652
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "tidak dapat menset mode binari di stderr (%s)"
-#: main.c:670
+#: main.c:710
msgid "no program text at all!"
msgstr "tidak ada teks aplikasi apapun!"
-#: main.c:749
+#: main.c:799
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
-msgstr ""
-"Penggunaan: %s [pilihan POSIX atau gaya GNU] -f progfile [--] berkas ...\n"
+msgstr "Penggunaan: %s [pilihan POSIX atau gaya GNU] -f progfile [--] berkas ...\n"
-#: main.c:751
+#: main.c:801
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
-msgstr ""
-"Penggunaan: %s[ pilihan POSIX atau gaya GNU] [--] %cprogram%c berkas ...\n"
+msgstr "Penggunaan: %s[ pilihan POSIX atau gaya GNU] [--] %cprogram%c berkas ...\n"
-#: main.c:756
-#, fuzzy
+#: main.c:806
msgid "POSIX options:\t\tGNU long options: (standard)\n"
msgstr "pilihan POSIX:\t\tpilihan panjang GNU:\n"
-#: main.c:757
+#: main.c:807
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f progfile\t\t--file=progfile\n"
-#: main.c:758
+#: main.c:808
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:759
+#: main.c:809
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=val\t\t--assign=var=val\n"
-#: main.c:760
-#, fuzzy
+#: main.c:810
msgid "Short options:\t\tGNU long options: (extensions)\n"
msgstr "pilihan POSIX:\t\tpilihan panjang GNU:\n"
-#: main.c:761
+#: main.c:811
msgid "\t-b\t\t\t--characters-as-bytes\n"
-msgstr ""
+msgstr "\t-b\t\t\t--characters-as-bytes\n"
-#: main.c:762
-#, fuzzy
+#: main.c:812
msgid "\t-c\t\t\t--traditional\n"
-msgstr "\t-W tradisional\t\t--traditional\n"
+msgstr "\t-c\t\t\t--traditional\n"
-#: main.c:763
-#, fuzzy
+#: main.c:813
msgid "\t-C\t\t\t--copyright\n"
-msgstr "\t-W hak cipta\t\t--copyright\n"
+msgstr "\t-C hak cipta\t\t--copyright\n"
-#: main.c:764
-#, fuzzy
-msgid "\t-d [file]\t\t--dump-variables[=file]\n"
-msgstr "\t-W tampilkan variabel[=berkas]\t--dump-variables[=berkas]\n"
+#: main.c:814
+msgid "\t-d[file]\t\t--dump-variables[=file]\n"
+msgstr "\t-d tampilkan variabel[=berkas]\t\t--dump-variables[=berkas]\n"
-#: main.c:765
-#, fuzzy
+#: main.c:815
+msgid "\t-D[file]\t\t--debug[=file]\n"
+msgstr "\t-D profile[=file]\t\t--profile[=file]\n"
+
+#: main.c:816
msgid "\t-e 'program-text'\t--source='program-text'\n"
-msgstr "\t-W sumber=teks-program\t--source=teks-program\n"
+msgstr "\t-e sumber=teks-program\t\t--source=teks-program\n"
-#: main.c:766
-#, fuzzy
+#: main.c:817
msgid "\t-E file\t\t\t--exec=file\n"
-msgstr "\t-W exec=berkas\t\t--exec=berkas\n"
+msgstr "\t-E exec=berkas\t\t\t--exec=berkas\n"
-#: main.c:767
-#, fuzzy
+#: main.c:818
msgid "\t-g\t\t\t--gen-pot\n"
-msgstr "\t-W gen-po\t\t--gen-po\n"
+msgstr "\t-g gen-po\t\t\t--gen-po\n"
-#: main.c:768
-#, fuzzy
+#: main.c:819
msgid "\t-h\t\t\t--help\n"
-msgstr "\t-W bantuan\t\t\t--help\n"
+msgstr "\t-h bantuan\t\t\t--help\n"
+
+#: main.c:820
+msgid "\t-i includefile\t\t--include=includefile\n"
+msgstr "\t-i includefile\t\t--include=includefile\n"
+
+#: main.c:821
+msgid "\t-l library\t\t--load=library\n"
+msgstr "\t-I library\t\t--load=library\n"
-#: main.c:769
-#, fuzzy
+#: main.c:822
msgid "\t-L [fatal]\t\t--lint[=fatal]\n"
-msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
+msgstr "\t-L lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:770
-#, fuzzy
+#: main.c:823
msgid "\t-n\t\t\t--non-decimal-data\n"
-msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
+msgstr "\t-n non-decimal-data\t\t\t--non-decimal-data\n"
+
+#: main.c:824
+msgid "\t-M\t\t\t--bignum\n"
+msgstr "\t-M\t\t\t--optimize\n"
-#: main.c:771
-#, fuzzy
+#: main.c:825
msgid "\t-N\t\t\t--use-lc-numeric\n"
-msgstr "\t-W use-lc-numeric\t--use-lc-numeric\n"
+msgstr "\t-N use-lc-numeric\t\t\t--use-lc-numeric\n"
-#: main.c:772
+#: main.c:826
+msgid "\t-o[file]\t\t--pretty-print[=file]\n"
+msgstr "\t-W profile[=file]\t\t--profile[=file]\n"
+
+#: main.c:827
msgid "\t-O\t\t\t--optimize\n"
msgstr "\t-0\t\t\t--optimize\n"
-#: main.c:773
-#, fuzzy
-msgid "\t-p [file]\t\t--profile[=file]\n"
-msgstr "\t-W profile[=file]\t--profile[=file]\n"
+#: main.c:828
+msgid "\t-p[file]\t\t--profile[=file]\n"
+msgstr "\t-p profile[=file]\t\t--profile[=file]\n"
-#: main.c:774
-#, fuzzy
+#: main.c:829
msgid "\t-P\t\t\t--posix\n"
-msgstr "\t-W posix\t\t--posix\n"
+msgstr "\t-P posix\t\t\t--posix\n"
-#: main.c:775
-#, fuzzy
+#: main.c:830
msgid "\t-r\t\t\t--re-interval\n"
-msgstr "\t-W re-interval\t\t--re-interval\n"
+msgstr "\t-r re-interval\t\t\t--re-interval\n"
-#: main.c:777
-#, fuzzy
-msgid "\t-R file\t\t\t--command=file\n"
-msgstr "\t-W exec=berkas\t\t--exec=berkas\n"
-
-#: main.c:778
+#: main.c:831
msgid "\t-S\t\t\t--sandbox\n"
-msgstr ""
+msgstr "\t-S\t\t\t--sandbox\n"
-#: main.c:779
-#, fuzzy
+#: main.c:832
msgid "\t-t\t\t\t--lint-old\n"
-msgstr "\t-W lint-old\t\t--lint-old\n"
+msgstr "\t-t lint-old\t\t\t--lint-old\n"
-#: main.c:780
-#, fuzzy
+#: main.c:833
msgid "\t-V\t\t\t--version\n"
-msgstr "\t-W versi\t\t--version\n"
+msgstr "\t-V versi\t\t\t--version\n"
-#: main.c:782
+#: main.c:835
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:785
-#, fuzzy
+#: main.c:838
msgid "\t-Y\t\t--parsedebug\n"
-msgstr "\t-W parsedebug\t\t--parsedebug\n"
+msgstr "\t-Y parsedebug\t\t--parsedebug\n"
#. TRANSLATORS: --help output 5 (end)
#. TRANSLATORS: the placeholder indicates the bug-reporting address
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:794
+#: main.c:847
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1719,7 +3014,7 @@ msgstr ""
"daerah `Reporting Problems and Bugs' dalam versi tercetak.\n"
"\n"
-#: main.c:798
+#: main.c:851
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1729,7 +3024,7 @@ msgstr ""
"Secara baku ini membaca standar masukan dan menulis standa keluaran.\n"
"\n"
-#: main.c:802
+#: main.c:855
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1739,7 +3034,7 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' berkas\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:822
+#: main.c:880
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1752,15 +3047,13 @@ msgid ""
msgstr ""
"Hak Cipta (C) 1989, 1991-%d Free Software Foundationn.\n"
"\n"
-"Aplikasi ini adalah aplikasi bebas; anda dapat meredistribusikannya dan/atau "
-"memodifikasinya\n"
-"dibawah ketentuan dari GNU General Public License seperti dipublikasikan "
-"oleh\n"
+"Aplikasi ini adalah aplikasi bebas; anda dapat meredistribusikannya dan/atau memodifikasinya\n"
+"dibawah ketentuan dari GNU General Public License seperti dipublikasikan oleh\n"
"Free Software Foundation; baik versi 3 dari Lisensi, atau\n"
"(di pilihan anda) untuk versi selanjutnya.\n"
"\n"
-#: main.c:830
+#: main.c:888
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1769,31 +3062,29 @@ msgid ""
"\n"
msgstr ""
"Aplikasi ini didistribusikan dengan harapan ini akan berguna,\n"
-"tetapi TANPA GARANSI APAPUN; bahkan tanpa garansi yang diimplisikasikan "
-"dari\n"
+"tetapi TANPA GARANSI APAPUN; bahkan tanpa garansi yang diimplisikasikan dari\n"
"PERDAGANGAN atau KESESUAIAN UNTUK SEBUAH TUJUAN TERTENTU. Lihat\n"
"GNU General Public License untuk lebih lengkapnya.\n"
"\n"
-#: main.c:841
+#: main.c:894
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
msgstr ""
"Anda seharusnya menerima salinan dari GNU General Public License\n"
-"bersama dengan aplikasi ini. Jika tidak, lihat http://www.gnu.org/"
-"licenses/.\n"
+"bersama dengan aplikasi ini. Jika tidak, lihat http://www.gnu.org/licenses/.\n"
-#: main.c:876
+#: main.c:931
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft tidak menset FS ke tab dalam POSIX awk"
-#: main.c:1110
+#: main.c:1208
#, c-format
msgid "unknown value for field spec: %d\n"
-msgstr ""
+msgstr "unknown value for field spec: %d\n"
-#: main.c:1170
+#: main.c:1306
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1802,119 +3093,168 @@ msgstr ""
"%s: `%s' argumen ke `-v' tidak dalam bentuk `var=value'\n"
"\n"
-#: main.c:1190
+#: main.c:1332
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "`%s' bukan sebuah nama variabel legal"
-#: main.c:1193
+#: main.c:1335
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "`%s' bukan sebuah nama variabel, pencarian untuk berkas `%s=%s'"
-#: main.c:1246
+#: main.c:1339
+#, c-format
+msgid "cannot use gawk builtin `%s' as variable name"
+msgstr "tidak dapat menggunakan gawk bawaan `%s' sebagai nama fungsi"
+
+#: main.c:1344
+#, c-format
+msgid "cannot use function `%s' as variable name"
+msgstr "tidak dapat menggunakan nama fungsi `%s' sebagai sebuah variabel atau array"
+
+#: main.c:1397
msgid "floating point exception"
msgstr "eksepsi titik pecahan"
-#: main.c:1253
+#: main.c:1404
msgid "fatal error: internal error"
msgstr "fatal error: internal error"
-#: main.c:1268
+#: main.c:1419
msgid "fatal error: internal error: segfault"
msgstr "fatal error: internal error: segfault"
-#: main.c:1280
+#: main.c:1431
msgid "fatal error: internal error: stack overflow"
msgstr "fatal error: internal error: stack overflow"
-#: main.c:1330
+#: main.c:1490
#, c-format
msgid "no pre-opened fd %d"
msgstr "tidak ada pre-opened fd %d"
-#: main.c:1337
+#: main.c:1497
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "tidak dapat pre-open /dev/null untuk fd %d"
-#: main.c:1360 main.c:1369
+#: mpfr.c:550
#, c-format
-msgid "could not find groups: %s"
-msgstr "tidak dapat menemukan grup: %s"
+msgid "PREC value `%.*s' is invalid"
+msgstr "PREC nilai `%.*s' tidak valid, diperlakukan sebagai 3"
-#: msg.c:63
+#: mpfr.c:608
+#, c-format
+msgid "RNDMODE value `%.*s' is invalid"
+msgstr "RNDMODE nilai `%.*s' tidak valid, diperlakukan sebagai 3"
+
+#: mpfr.c:698
+#, c-format
+msgid "%s: received non-numeric argument"
+msgstr "%s: diterima argumen bukan numerik"
+
+#: mpfr.c:800
+msgid "compl(%Rg): negative value will give strange results"
+msgstr "compl(%Rg): nilai negatif akan memberikan hasil aneh"
+
+#: mpfr.c:804
+msgid "comp(%Rg): fractional value will be truncated"
+msgstr "compl(%Rg): nilai pecahan akan dipotong"
+
+#: mpfr.c:816
+#, c-format
+msgid "cmpl(%Zd): negative values will give strange results"
+msgstr "compl(%Zd): nilai negatif akan memberikan hasil aneh"
+
+#: mpfr.c:835
+#, c-format
+msgid "%s: received non-numeric argument #%d"
+msgstr "%s: diterima argumen bukan numerik #%d"
+
+#: mpfr.c:845
+msgid "%s: argument #%d has invalid value %Rg, using 0"
+msgstr "%s: argument #%d has invalid value %Rg, using 0"
+
+#: mpfr.c:857
+msgid "%s: argument #%d negative value %Rg will give strange results"
+msgstr "%s: #%d nilai negatif %Rg akan memberikan hasil aneh"
+
+#: mpfr.c:863
+msgid "%s: argument #%d fractional value %Rg will be truncated"
+msgstr "%s: #%d nilai pecahan %Rg akan dipotong"
+
+#: mpfr.c:878
+#, c-format
+msgid "%s: argument #%d negative value %Zd will give strange results"
+msgstr "%s: #%d nilai negatif %Zd akan memberikan hasil aneh"
+
+#: msg.c:68
#, c-format
msgid "cmd. line:"
msgstr "cmd. baris:"
-#: msg.c:107
-msgid "error: "
-msgstr "error: "
-
-#: node.c:401
+#: node.c:421
msgid "backslash at end of string"
msgstr "backslash di akhir dari string"
-#: node.c:502
+#: node.c:500
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "awk lama tidak mendukung escape sequence `\\%c'"
-#: node.c:553
+#: node.c:551
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX tidak mengijinkan escapes `\\x'"
-#: node.c:559
+#: node.c:557
msgid "no hex digits in `\\x' escape sequence"
msgstr "tidak ada digit heksa dalam escape sequence `\\x'"
-#: node.c:581
+#: node.c:579
#, c-format
-msgid ""
-"hex escape \\x%.*s of %d characters probably not interpreted the way you "
-"expect"
-msgstr ""
-"hex escape \\x%.*s dari karakter %d mungkin tidak dapat diinterpretrasikan "
-"seperti yang anda kira"
+msgid "hex escape \\x%.*s of %d characters probably not interpreted the way you expect"
+msgstr "hex escape \\x%.*s dari karakter %d mungkin tidak dapat diinterpretrasikan seperti yang anda kira"
-#: node.c:596
+#: node.c:594
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "escape sequence `\\%c' diperlakukan sebagai plain `%c'"
-#: node.c:735
-msgid ""
-"Invalid multibyte data detected. There may be a mismatch between your data "
-"and your locale."
-msgstr ""
+#: node.c:739
+msgid "Invalid multibyte data detected. There may be a mismatch between your data and your locale."
+msgstr "Invalid multibyte data detected. There may be a mismatch between your data and your locale."
-#: posix/gawkmisc.c:175
-#, fuzzy, c-format
+#: posix/gawkmisc.c:177
+#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr "%s %s `%s': tidak dapat menset close-on-exec: (fcntl: %s)"
-#: posix/gawkmisc.c:187
-#, fuzzy, c-format
+#: posix/gawkmisc.c:189
+#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr "%s %s `%s': tidak dapat menset close-on-exec: (fcntl: %s)"
-#: profile.c:83
+#: profile.c:71
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "tidak dapat membuka `%s' untuk penulisan: %s"
-#: profile.c:203
-#, fuzzy, c-format
+#: profile.c:73
+msgid "sending profile to standard error"
+msgstr "mengirim profile ke standar error"
+
+#: profile.c:193
+#, c-format
msgid ""
"\t# %s block(s)\n"
"\n"
msgstr ""
-"\t# END blok\n"
+"\t# %s END blok\n"
"\n"
-#: profile.c:208
-#, fuzzy, c-format
+#: profile.c:198
+#, c-format
msgid ""
"\t# Rule(s)\n"
"\n"
@@ -1922,17 +3262,30 @@ msgstr ""
"\t# Aturan\n"
"\n"
-#: profile.c:279
+#: profile.c:272
#, c-format
msgid "internal error: %s with null vname"
msgstr "internal error: %s dengan null vname"
-#: profile.c:938
+#: profile.c:537
+msgid "internal error: builtin with null fname"
+msgstr "internal error: dengan null vname"
+
+#: profile.c:949
+#, c-format
+msgid ""
+"\t# Loaded extensions (-l and/or @load)\n"
+"\n"
+msgstr ""
+"\t# Loaded extensions (-l and/or @load)\n"
+"\n"
+
+#: profile.c:972
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# gawk profile, dibuat %s\n"
-#: profile.c:1317
+#: profile.c:1475
#, c-format
msgid ""
"\n"
@@ -1941,271 +3294,256 @@ msgstr ""
"\n"
"\t# Fungsi, terdaftar secara alphabet\n"
-#: profile.c:1356
+#: profile.c:1513
#, c-format
msgid "redir2str: unknown redirection type %d"
-msgstr ""
+msgstr "redir2str: unknown redirection type %d"
-#: re.c:589
-#, c-format
-msgid "range of the form `[%c-%c]' is locale dependant"
-msgstr ""
-
-#: re.c:611
+#: re.c:607
#, c-format
msgid "regexp component `%.*s' should probably be `[%.*s]'"
-msgstr ""
+msgstr "regexp component `%.*s' should probably be `[%.*s]'"
-#: regcomp.c:132
+#: regcomp.c:131
msgid "Success"
msgstr "Sukses"
-#: regcomp.c:135
+#: regcomp.c:134
msgid "No match"
msgstr "Tidak cocok"
-#: regcomp.c:138
+#: regcomp.c:137
msgid "Invalid regular expression"
msgstr "Ekspresi regular tidak valid"
-#: regcomp.c:141
+#: regcomp.c:140
msgid "Invalid collation character"
msgstr "Karakter kolasi tidak valid"
-#: regcomp.c:144
+#: regcomp.c:143
msgid "Invalid character class name"
msgstr "nama kelas karakter tidak valid"
-#: regcomp.c:147
+#: regcomp.c:146
msgid "Trailing backslash"
msgstr "Akhiran backslash"
-#: regcomp.c:150
+#: regcomp.c:149
msgid "Invalid back reference"
msgstr "Referensi balik tidak valid"
-#: regcomp.c:153
+#: regcomp.c:152
msgid "Unmatched [ or [^"
msgstr "Tidak cocok [ atau [^"
-#: regcomp.c:156
+#: regcomp.c:155
msgid "Unmatched ( or \\("
msgstr "Tidak cocok ( atau \\("
-#: regcomp.c:159
+#: regcomp.c:158
msgid "Unmatched \\{"
msgstr "Tidak cocok \\{"
-#: regcomp.c:162
-msgid "Invalid content of \\{\\}"
-msgstr "Isi dari \\{\\} tidak valid"
-
-#: regcomp.c:165
+#: regcomp.c:164
msgid "Invalid range end"
msgstr "Akhir jangkauan tidak valid"
-#: regcomp.c:168
+#: regcomp.c:167
msgid "Memory exhausted"
msgstr "Kehabisan memori"
-#: regcomp.c:171
+#: regcomp.c:170
msgid "Invalid preceding regular expression"
msgstr "Ekspresi regular yang mengawali tidak valid"
-#: regcomp.c:174
+#: regcomp.c:173
msgid "Premature end of regular expression"
msgstr "Akhir dari ekspresi regular prematur"
-#: regcomp.c:177
-msgid "Regular expression too big"
-msgstr "Ekspresi regular terlalu besar"
-
-#: regcomp.c:180
+#: regcomp.c:179
msgid "Unmatched ) or \\)"
msgstr "Tidak cocok ) atau \\)"
-#: regcomp.c:701
+#: regcomp.c:704
msgid "No previous regular expression"
msgstr "Tidak ada ekspresi regular sebelumnya"
-#~ msgid "statement may have no effect"
-#~ msgstr "pernyataan mungkin tidak memiliki pengaruh"
+#: symbol.c:741
+msgid "can not pop main context"
+msgstr "can not pop main context"
-#~ msgid "attempt to use scalar `%s' as array"
-#~ msgstr "mencoba untuk menggunakan skalar `%s' sebagai sebuah array"
+#~ msgid "attempt to use function `%s' as an array"
+#~ msgstr "mencoba untuk menggunakan fungsi `%s' sebagai sebuah array"
-#, fuzzy
-#~ msgid "attempt to use array `%s' in scalar context"
-#~ msgstr "mencoba menggunakan array `%s' dalam sebuah konteks skalar"
+#~ msgid "reference to uninitialized element `%s[\"%s\"]'"
+#~ msgstr "referensi ke elemen tidak terinisialisasi `%s[\"%s\"]'"
-#~ msgid "`continue' outside a loop is not allowed"
-#~ msgstr "`continue' diluar sebuah loop tidak diijinkan"
+#~ msgid "subscript of array `%s' is null string"
+#~ msgstr "subscript dari array `%s' adalah string null"
-#, fuzzy
-#~ msgid "`break' outside a loop is not allowed"
-#~ msgstr "`break' diluar sebuah loop tidak diijinkan"
+#~ msgid "%s: empty (null)\n"
+#~ msgstr "%s: kosong (null)\n"
-#~ msgid "/inet/raw client not ready yet, sorry"
-#~ msgstr "/inet/raw client belum siap, maaf"
+#~ msgid "%s: empty (zero)\n"
+#~ msgstr "%s: kosong (nol)\n"
-#~ msgid "only root may use `/inet/raw'."
-#~ msgstr "hanya root yang boleh menggunakan `/inet/raw'."
+#~ msgid "%s: table_size = %d, array_size = %d\n"
+#~ msgstr "%s: table_size = %d, array_size = %d\n"
-#~ msgid "/inet/raw server not ready yet, sorry"
-#~ msgstr "/inet/raw server belum siap, maaf"
+#~ msgid "%s: array_ref to %s\n"
+#~ msgstr "%s: array_ref ke %s\n"
-#~ msgid "\t-m[fr] val\n"
-#~ msgstr "\t-m[fr] val\n"
+#~ msgid "statement may have no effect"
+#~ msgstr "pernyataan mungkin tidak memiliki pengaruh"
+
+#~ msgid "`delete array' is a gawk extension"
+#~ msgstr "`delete array' adalah sebuah ekstensi gawk"
#~ msgid "call of `length' without parentheses is deprecated by POSIX"
-#~ msgstr ""
-#~ "panggilan dari `length' tanpa tanda kurung sudah ditinggalkan oleh POSIX"
+#~ msgstr "panggilan dari `length' tanpa tanda kurung sudah ditinggalkan oleh POSIX"
-#, fuzzy
-#~ msgid "reference to uninitialized field `$%s'"
-#~ msgstr "referensi ke field tidak terinisialisasi `$%d'"
+#~ msgid "use of non-array as array"
+#~ msgstr "penggunaan dari bukan array sebagai array"
-#~ msgid "can't convert string to float"
-#~ msgstr "tidak dapat mengubah string ke float"
+#~ msgid "`%s' is a Bell Labs extension"
+#~ msgstr "`%s' adalah sebuah ekstensi Bell Labs"
-#~ msgid "`continue' outside a loop is not portable"
-#~ msgstr "`continue' diluar sebuah loop tidak portabel"
+#~ msgid "length: untyped argument will be forced to scalar"
+#~ msgstr "length: argument tidak terketik akan dipaksa ke skalar"
-#~ msgid "`break' outside a loop is not portable"
-#~ msgstr "`break' diluar sebuah loop adalah tidak portabel"
+#~ msgid "and: received non-numeric first argument"
+#~ msgstr "and: diterima argumen pertama tidak numerik"
-#~ msgid "`nextfile' cannot be called from a BEGIN rule"
-#~ msgstr "`nextfile' tidak dapat dipanggil dari sebuah aturan BEGIN"
+#~ msgid "and: received non-numeric second argument"
+#~ msgstr "and: diterima argumen kedua bukan numerik"
-#~ msgid "`next' cannot be called from a BEGIN rule"
-#~ msgstr "`next' tidak dapat dipanggil dari sebuah aturan BEGIN"
+#~ msgid "or: received non-numeric first argument"
+#~ msgstr "or: diterima argumen pertama bukan numerik"
-#~ msgid "file `%s' is a directory"
-#~ msgstr "berkas `%s' adalah sebuah direktori"
+#~ msgid "or: received non-numeric second argument"
+#~ msgstr "or: diterima argumen kedua bukan numerik"
-#~ msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
-#~ msgstr "lebih baik gunakan `PROCINFO[\"%s\"]' daripada `%s'"
+#~ msgid "or(%lf, %lf): negative values will give strange results"
+#~ msgstr "or(%lf, %lf): nilai negatif akan memberikan hasil aneh"
-#~ msgid "use `PROCINFO[...]' instead of `/dev/user'"
-#~ msgstr "lebih baik gunakan `PROCINFO[...]' daripada `/dev/user'"
+#~ msgid "or(%lf, %lf): fractional values will be truncated"
+#~ msgstr "or(%lf, %lf): nilai pecahan akan dipotong"
-#~ msgid "\t-W compat\t\t--compat\n"
-#~ msgstr "\t-W compabilitas\t\t--compat\n"
+#~ msgid "xor: received non-numeric first argument"
+#~ msgstr "xor: diterima argumen pertama bukan numerik"
-#~ msgid "\t-W copyleft\t\t--copyleft\n"
-#~ msgstr "\t-W copyleft\t\t--copyleft\n"
+#~ msgid "xor: received non-numeric second argument"
+#~ msgstr "xor: diterima argumen kedua bukan numerik"
-#~ msgid "\t-W usage\t\t--usage\n"
-#~ msgstr "\t-W penggunaan\t\t--usage\n"
+#~ msgid "xor(%lf, %lf): fractional values will be truncated"
+#~ msgstr "xor(%lf, %lf): nilai pecahan akan dipotong"
-#~ msgid ""
-#~ "\t# BEGIN block(s)\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\t # BEGIN blok\n"
-#~ "\n"
+#~ msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
+#~ msgstr "for loop: array `%s' berubah ukuran dari %ld ke %ld selama eksekusi loop"
-#~ msgid "must use `count$' on all formats or none"
-#~ msgstr "harus menggunakan `count$' di semua format atau tidak sama sekali"
+#~ msgid "`break' outside a loop is not portable"
+#~ msgstr "`break' diluar sebuah loop adalah tidak portabel"
-#~ msgid "field width is ignored for `%%%%' specifier"
-#~ msgstr "lebar daerah diabaikan untuk penspesifikasi `%%%%'"
+#~ msgid "`continue' outside a loop is not portable"
+#~ msgstr "`continue' diluar sebuah loop tidak portabel"
-#~ msgid "precision is ignored for `%%%%' specifier"
-#~ msgstr "ketepatan diabaikan untuk penspesifikasi `%%%%'"
+#~ msgid "`next' cannot be called from a BEGIN rule"
+#~ msgstr "`next' tidak dapat dipanggil dari sebuah aturan BEGIN"
-#~ msgid "field width and precision are ignored for `%%%%' specifier"
-#~ msgstr "lebar daerah dan presisi diabaikan untuk penspesifikasi `%%%%'"
+#~ msgid "`next' cannot be called from an END rule"
+#~ msgstr "`next' tidak dapat dipanggil dari sebuah aturan END"
-#~ msgid "`$' is not permitted in awk formats"
-#~ msgstr "`$' tidak diijinkan dalam format awk"
+#~ msgid "`nextfile' cannot be called from a BEGIN rule"
+#~ msgstr "`nextfile' tidak dapat dipanggil dari sebuah aturan BEGIN"
-#~ msgid "arg count with `$' must be > 0"
-#~ msgstr "arg count dengan `$' harus > 0"
+#~ msgid "`nextfile' cannot be called from an END rule"
+#~ msgstr "`nextfile' tidak dapat dipanggil dari sebuah aturan END"
-#~ msgid "arg count %ld greater than total number of supplied arguments"
-#~ msgstr ""
-#~ "arg count %ld lebih besar dari jumlah total dari argumen yang diberikan"
+#~ msgid "statement has no effect"
+#~ msgstr "pernyataan tidak memiliki efek"
-#~ msgid "`$' not permitted after period in format"
-#~ msgstr "`$' tidak diijinkan setelah periode dalam format"
+#~ msgid "concatenation: side effects in one expression have changed the length of another!"
+#~ msgstr "concatenation: efek samping dalam satu ekspresi telah mengubah panjang dari yang lain!"
-#~ msgid "no `$' supplied for positional field width or precision"
-#~ msgstr ""
-#~ "tidak ada `$' yang diberikan untuk posisional field width atau presisi"
+#~ msgid "assignment used in conditional context"
+#~ msgstr "penempatan digunakan dalam konteks kondisional"
-#~ msgid "`l' is meaningless in awk formats; ignored"
-#~ msgstr "`l' tidak berarti dalam format awk; diabaikan"
+#~ msgid "illegal type (%s) in tree_eval"
+#~ msgstr "tipe (%s) tidak legal dalam tree_eval"
-#~ msgid "`l' is not permitted in POSIX awk formats"
-#~ msgstr "`l' tidak diijinkan dalam format POSIX awk"
+#~ msgid "\t# -- main --\n"
+#~ msgstr "\t# -- main --\n"
-#~ msgid "`L' is meaningless in awk formats; ignored"
-#~ msgstr "`L' tidak berarti dalam format awk; diabaikan"
+#~ msgid "assignment is not allowed to result of builtin function"
+#~ msgstr "penempatan tidak diijinkan untuk menghasilkan fungsi bawaan"
-#~ msgid "`L' is not permitted in POSIX awk formats"
-#~ msgstr "`L' tidak diijinkan dalam format awk POSIX"
+#~ msgid "Operation Not Supported"
+#~ msgstr "Operasi Tidak Didukung"
-#~ msgid "`h' is meaningless in awk formats; ignored"
-#~ msgstr "`h' tidak berarti dalam format awk; diabaikan"
+#~ msgid "invalid tree type %s in redirect()"
+#~ msgstr "tipe tree %s tidak valid dalam redirect()"
-#~ msgid "`h' is not permitted in POSIX awk formats"
-#~ msgstr "`h' tidak diijinkan dalam format awk POSIX"
+#~ msgid "can't open two way socket `%s' for input/output (%s)"
+#~ msgstr "tidak dapat membuka socket dua arah `%s' untuk input/output (%s)"
-#~ msgid "[s]printf: value %g is out of range for `%%%c' format"
-#~ msgstr "[s]printf: nilai %g diluar dari jangkauan untuk format `%%%c'"
+#~ msgid "/inet/raw client not ready yet, sorry"
+#~ msgstr "/inet/raw client belum siap, maaf"
-#~ msgid ""
-#~ "ignoring unknown format specifier character `%c': no argument converted"
-#~ msgstr ""
-#~ "mengabaikan format tidak dikenal karakter penspesifikasi `%c': tidak ada "
-#~ "argumen yang diubah"
+#~ msgid "only root may use `/inet/raw'."
+#~ msgstr "hanya root yang boleh menggunakan `/inet/raw'."
-#~ msgid "not enough arguments to satisfy format string"
-#~ msgstr "tidak cukup argumen untuk memuaskan format string"
+#~ msgid "/inet/raw server not ready yet, sorry"
+#~ msgstr "/inet/raw server belum siap, maaf"
-#~ msgid "^ ran out for this one"
-#~ msgstr "^ kehabisan untuk yang ini"
+#~ msgid "file `%s' is a directory"
+#~ msgstr "berkas `%s' adalah sebuah direktori"
-#~ msgid "[s]printf: format specifier does not have control letter"
-#~ msgstr "[s]printf: penspesifikasi format tidak memiliki pengontrol huruf"
+#~ msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
+#~ msgstr "lebih baik gunakan `PROCINFO[\"%s\"]' daripada `%s'"
-#~ msgid "too many arguments supplied for format string"
-#~ msgstr "terlalu banyak argumen diberikan untuk format string"
+#~ msgid "use `PROCINFO[...]' instead of `/dev/user'"
+#~ msgstr "lebih baik gunakan `PROCINFO[...]' daripada `/dev/user'"
-#, fuzzy
-#~ msgid "attempt to use array parameter `%s' in a scalar context"
-#~ msgstr "mencoba menggunakan array `%s' dalam sebuah konteks skalar"
+#~ msgid "out of memory"
+#~ msgstr "kehabisan memori"
-#~ msgid "can't open two way socket `%s' for input/output (%s)"
-#~ msgstr "tidak dapat membuka socket dua arah `%s' untuk input/output (%s)"
+#~ msgid "`-m[fr]' option irrelevant in gawk"
+#~ msgstr "pilihan `-m[fr]' tidak relevan dalam gawk"
-#~ msgid "length: untyped argument will be forced to scalar"
-#~ msgstr "length: argument tidak terketik akan dipaksa ke skalar"
+#~ msgid "-m option usage: `-m[fr] nnn'"
+#~ msgstr "penggunaan pilihan -m: `-m[fr] nnn'"
-#~ msgid ""
-#~ "concatenation: side effects in one expression have changed the length of "
-#~ "another!"
-#~ msgstr ""
-#~ "concatenation: efek samping dalam satu ekspresi telah mengubah panjang "
-#~ "dari yang lain!"
+#~ msgid "\t-m[fr] val\n"
+#~ msgstr "\t-m[fr] val\n"
-#~ msgid "illegal type (%s) in tree_eval"
-#~ msgstr "tipe (%s) tidak legal dalam tree_eval"
+#~ msgid "\t-W compat\t\t--compat\n"
+#~ msgstr "\t-W compabilitas\t\t--compat\n"
-#~ msgid "\t# -- main --\n"
-#~ msgstr "\t# -- main --\n"
+#~ msgid "\t-W copyleft\t\t--copyleft\n"
+#~ msgstr "\t-W copyleft\t\t--copyleft\n"
-#~ msgid "invalid tree type %s in redirect()"
-#~ msgstr "tipe tree %s tidak valid dalam redirect()"
+#~ msgid "\t-W usage\t\t--usage\n"
+#~ msgstr "\t-W penggunaan\t\t--usage\n"
+
+#~ msgid "could not find groups: %s"
+#~ msgstr "tidak dapat menemukan grup: %s"
+
+#~ msgid "can't convert string to float"
+#~ msgstr "tidak dapat mengubah string ke float"
-#, fuzzy
#~ msgid "# treated internally as `delete'"
-#~ msgstr "# diperlakukan secara internal sebagai 'delete'"
+#~ msgstr "# diperlakukan secara internal sebagai `delete'"
#~ msgid "# this is a dynamically loaded extension function"
#~ msgstr "# ini adalah sebuah fungsi yang secara dinamis diload ekstensi"
+#~ msgid ""
+#~ "\t# BEGIN block(s)\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\t # BEGIN blok\n"
+#~ "\n"
+
#~ msgid "unexpected type %s in prec_level"
#~ msgstr "tipe %s tidak terduga dalam prec_level"
diff --git a/po/it.po b/po/it.po
index 68f2d7f0..a5578723 100644
--- a/po/it.po
+++ b/po/it.po
@@ -1,5 +1,5 @@
# Italian messages for GNU Awk
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2014 Free Software Foundation, Inc.
# Antonio Colombo <azc100@gmail.com>.
#
msgid ""
@@ -7,7 +7,7 @@ msgstr ""
"Project-Id-Version: GNU Awk 4.0.73, API: 0.0\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
"POT-Creation-Date: 2014-04-08 19:23+0300\n"
-"PO-Revision-Date: 2014-01-15 10:39+0100\n"
+"PO-Revision-Date: 2014-06-14 17:50+0100\n"
"Last-Translator: Antonio Colombo <azc100@gmail.com>\n"
"Language-Team: Italian <it@li.org>\n"
"Language: it\n"
@@ -211,7 +211,7 @@ msgstr "`getline' invalida all'interno della regola `%s'"
#: awkgram.y:1425
msgid "non-redirected `getline' undefined inside END action"
-msgstr "`getline' non re-diretta indefinita dentro `azione' END"
+msgstr "`getline' non ri-diretta indefinita dentro `azione' END"
#: awkgram.y:1444
msgid "old awk does not support multidimensional arrays"
@@ -1141,7 +1141,7 @@ msgstr ""
#: command.y:855
msgid "list [-|+|[filename:]lineno|function|range] - list specified line(s)."
msgstr ""
-"list [-|+|[nome-file:]num_linea|funzione|intervallo] - elenca riga/he "
+"list [-|+|[nome-file:]num_riga|funzione|intervallo] - elenca riga/he "
"richiesta/e."
#: command.y:857
@@ -1229,7 +1229,7 @@ msgid ""
"line or line N within current frame."
msgstr ""
"until [[nome-file:]N|funzione] - esegui finché il programma arriva una "
-"rigadifferente, o alla riga N nell'elemento di stack corrente."
+"riga differente, o alla riga N nell'elemento di stack corrente."
#: command.y:895
msgid "unwatch [N] - remove variable(s) from watch list."
@@ -2615,23 +2615,23 @@ msgstr "chiusura di fd %d (`%s') non riuscita (%s)"
#: io.c:716
msgid "redirection not allowed in sandbox mode"
-msgstr "re-direzione non consentita in modo `sandbox'"
+msgstr "ri-direzione non consentita in modo `sandbox'"
#: io.c:750
#, c-format
msgid "expression in `%s' redirection only has numeric value"
-msgstr "espressione nella re-direzione `%s' ha solo un valore numerico"
+msgstr "espressione nella ri-direzione `%s' ha solo un valore numerico"
#: io.c:756
#, c-format
msgid "expression for `%s' redirection has null string value"
-msgstr "espressione nella re-direzione `%s' ha per valore la stringa nulla"
+msgstr "espressione nella ri-direzione `%s' ha per valore la stringa nulla"
#: io.c:761
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
-"nome-file `%s' per la re-direzione `%s' può essere il risultato di una "
+"nome-file `%s' per la ri-direzione `%s' può essere il risultato di una "
"espressione logica"
#: io.c:809
@@ -2658,12 +2658,12 @@ msgstr ""
#: io.c:986
#, c-format
msgid "can't redirect from `%s' (%s)"
-msgstr "non riesco a re-dirigere da `%s' (%s)"
+msgstr "non riesco a ri-dirigere da `%s' (%s)"
#: io.c:989
#, c-format
msgid "can't redirect to `%s' (%s)"
-msgstr "non riesco a re-dirigere a `%s' (%s)"
+msgstr "non riesco a ri-dirigere a `%s' (%s)"
#: io.c:1040
msgid ""
@@ -2692,12 +2692,12 @@ msgstr "close: `%.*s' non è un file aperto, una `pipe' o un co-processo"
#: io.c:1108
msgid "close of redirection that was never opened"
-msgstr "chiusura di una re-direzione mai aperta"
+msgstr "chiusura di una ri-direzione mai aperta"
#: io.c:1205
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
-msgstr "close: re-direzione `%s' non aperta con `|&', ignoro secondo argomento"
+msgstr "close: ri-direzione `%s' non aperta con `|&', ignoro secondo argomento"
#: io.c:1222
#, c-format
@@ -3313,7 +3313,7 @@ msgstr "%s: argomento #%d con valore negativo %Zd, darà risultati strani"
#: msg.c:68
#, c-format
msgid "cmd. line:"
-msgstr "linea com.:"
+msgstr "riga com.:"
#: node.c:421
msgid "backslash at end of string"
@@ -3427,7 +3427,7 @@ msgstr ""
#: profile.c:1513
#, c-format
msgid "redir2str: unknown redirection type %d"
-msgstr "redir2str: tipo di re-direzione non noto %d"
+msgstr "redir2str: tipo di ri-direzione non noto %d"
#: re.c:607
#, c-format
@@ -3503,5 +3503,3 @@ msgstr "Nessuna espressione regolare precedente"
msgid "can not pop main context"
msgstr "non posso salire più in alto nello stack"
-#~ msgid "range of the form `[%c-%c]' is locale dependent"
-#~ msgstr "intervallo della forma `[%c-%c]' dipende da `locale'"
diff --git a/test/ChangeLog b/test/ChangeLog
index cc921277..db9b1e35 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,18 @@
+2014-08-05 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (mpfrsqrt): New test.
+ * mpfrsqrt.awk, mpfrsqrt.ok: New files.
+ Test from Katie Wasserman <katie@wass.net>.
+
+2014-07-25 Arnold D. Robbins <arnold@skeeve.com>
+
+ * printhuge.awk: Add a newline to output.
+ * printhuge.ok: Adjust.
+
+2014-07-24 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Adjust after correctly alphabetizing options.
+
2014-07-10 Arnold D. Robbins <arnold@skeeve.com>
* Makefile.am (printhuge): New test.
diff --git a/test/Makefile.am b/test/Makefile.am
index d4ef501c..f28b381e 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -529,10 +529,14 @@ EXTRA_DIST = \
mpfrnr.awk \
mpfrnr.in \
mpfrnr.ok \
+ mpfrrem.awk \
+ mpfrrem.ok \
mpfrrnd.awk \
mpfrrnd.ok \
mpfrsort.awk \
mpfrsort.ok \
+ mpfrsqrt.awk \
+ mpfrsqrt.ok \
mtchi18n.awk \
mtchi18n.in \
mtchi18n.ok \
@@ -1024,8 +1028,8 @@ INET_TESTS = inetdayu inetdayt inetechu inetecht
MACHINE_TESTS = double1 double2 fmtspcl intformat
-MPFR_TESTS = mpfrnr mpfrnegzero mpfrrnd mpfrieee mpfrexprange \
- mpfrsort mpfrbigint
+MPFR_TESTS = mpfrnr mpfrnegzero mpfrrem mpfrrnd mpfrieee mpfrexprange \
+ mpfrsort mpfrsqrt mpfrbigint
LOCALE_CHARSET_TESTS = \
asort asorti backbigs1 backsmalls1 backsmalls2 \
@@ -1748,6 +1752,16 @@ mpfrbigint:
@$(AWK) -M -f "$(srcdir)"/$@.awk > _$@ 2>&1
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+mpfrsqrt:
+ @echo $@
+ @$(AWK) -M -f "$(srcdir)"/$@.awk > _$@ 2>&1
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
+mpfrrem:
+ @echo $@
+ @$(AWK) -M -f "$(srcdir)"/$@.awk > _$@ 2>&1
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
jarebug::
@echo $@
@"$(srcdir)"/$@.sh "$(AWKPROG)" "$(srcdir)"/$@.awk "$(srcdir)"/$@.in "_$@"
diff --git a/test/Makefile.in b/test/Makefile.in
index 449ff46b..f3b537f3 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -775,10 +775,14 @@ EXTRA_DIST = \
mpfrnr.awk \
mpfrnr.in \
mpfrnr.ok \
+ mpfrrem.awk \
+ mpfrrem.ok \
mpfrrnd.awk \
mpfrrnd.ok \
mpfrsort.awk \
mpfrsort.ok \
+ mpfrsqrt.awk \
+ mpfrsqrt.ok \
mtchi18n.awk \
mtchi18n.in \
mtchi18n.ok \
@@ -1266,8 +1270,8 @@ GAWK_EXT_TESTS = \
EXTRA_TESTS = inftest regtest
INET_TESTS = inetdayu inetdayt inetechu inetecht
MACHINE_TESTS = double1 double2 fmtspcl intformat
-MPFR_TESTS = mpfrnr mpfrnegzero mpfrrnd mpfrieee mpfrexprange \
- mpfrsort mpfrbigint
+MPFR_TESTS = mpfrnr mpfrnegzero mpfrrem mpfrrnd mpfrieee mpfrexprange \
+ mpfrsort mpfrsqrt mpfrbigint
LOCALE_CHARSET_TESTS = \
asort asorti backbigs1 backsmalls1 backsmalls2 \
@@ -2172,6 +2176,16 @@ mpfrbigint:
@$(AWK) -M -f "$(srcdir)"/$@.awk > _$@ 2>&1
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+mpfrsqrt:
+ @echo $@
+ @$(AWK) -M -f "$(srcdir)"/$@.awk > _$@ 2>&1
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
+mpfrrem:
+ @echo $@
+ @$(AWK) -M -f "$(srcdir)"/$@.awk > _$@ 2>&1
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
jarebug::
@echo $@
@"$(srcdir)"/$@.sh "$(AWKPROG)" "$(srcdir)"/$@.awk "$(srcdir)"/$@.in "_$@"
diff --git a/test/badargs.ok b/test/badargs.ok
index 1be81ec3..8d34be1f 100644
--- a/test/badargs.ok
+++ b/test/badargs.ok
@@ -18,9 +18,9 @@ Short options: GNU long options: (extensions)
-i includefile --include=includefile
-l library --load=library
-L [fatal] --lint[=fatal]
- -n --non-decimal-data
-M --bignum
-N --use-lc-numeric
+ -n --non-decimal-data
-o[file] --pretty-print[=file]
-O --optimize
-p[file] --profile[=file]
diff --git a/test/mpfrrem.awk b/test/mpfrrem.awk
new file mode 100644
index 00000000..fd8bc4d5
--- /dev/null
+++ b/test/mpfrrem.awk
@@ -0,0 +1,6 @@
+BEGIN {
+ print "15 % 7 =", 15 % 7
+ print "15 % -7 =", 15 % -7
+ print "-15 % 7 =", -15 % 7
+ print "-15 % -7 =", -15 % -7
+}
diff --git a/test/mpfrrem.ok b/test/mpfrrem.ok
new file mode 100644
index 00000000..91010457
--- /dev/null
+++ b/test/mpfrrem.ok
@@ -0,0 +1,4 @@
+15 % 7 = 1
+15 % -7 = 1
+-15 % 7 = -1
+-15 % -7 = -1
diff --git a/test/mpfrsqrt.awk b/test/mpfrsqrt.awk
new file mode 100644
index 00000000..23a15c92
--- /dev/null
+++ b/test/mpfrsqrt.awk
@@ -0,0 +1,82 @@
+# Date: Sat, 02 Aug 2014 12:27:00 -0400
+# To: bug-gawk@gnu.org
+# From: Katherine Wasserman <katie@wass.net>
+# Message-ID: <E1XDc9F-0007BX-O1@eggs.gnu.org>
+# Subject: [bug-gawk] GAWK 4.1 SQRT() bug
+#
+# In version 4.1.60 of GAWK the sqrt() function does not work correctly on bignums.
+# Here's a demo of the problem along with, a function that does work correctly.
+#
+# Running this program (sqrt-bug.awk):
+# --------------------------------------------------------------------
+BEGIN {
+a=11111111111111111111111111111111111111111111111111111111111
+print sqrt(a^2)
+#print sq_root(a^2)
+
+# ADR: Added for gawk-4.1-stable which doesn't have built-in div() function
+if (PROCINFO["version"] < "4.1.60")
+ print sq_root2(a^2)
+else
+ print sq_root(a^2)
+}
+
+
+function sq_root(x, temp,r,z)
+{ temp=substr(x,1,length(x)/2) + 0 # a good first guess
+ z=0
+ while (abs(z-temp)>1)
+ { z=temp
+ div(x,temp,r)
+ temp=r["quotient"] + temp
+ div(temp,2,r)
+ temp=r["quotient"]
+ }
+ return temp
+}
+
+function sq_root2(x, temp,r,z)
+{ temp=substr(x,1,length(x)/2) + 0 # a good first guess
+ z=0
+ while (abs(z-temp)>1)
+ { z=temp
+ awk_div(x,temp,r)
+ temp=r["quotient"] + temp
+ awk_div(temp,2,r)
+ temp=r["quotient"]
+ }
+ return temp
+}
+
+function abs(x)
+{ return (x<0 ? -x : x)
+}
+#
+# --------------------------------------------------------------------
+# gawk -M -f sqrt-bug.awk
+#
+# results in:
+# 11111111111111111261130863809439559987542611609749437808640
+# 11111111111111111111111111111111111111111111111111111111111
+#
+# Thanks,
+# Katie
+#
+
+# div --- do integer division
+
+function awk_div(numerator, denominator, result, i, save_PREC)
+{
+ save_PREC = PREC
+ PREC = 400 # good enough for this test
+
+ split("", result)
+
+ numerator = int(numerator)
+ denominator = int(denominator)
+ result["quotient"] = int(numerator / denominator)
+ result["remainder"] = int(numerator % denominator)
+
+ PREC = save_PREC
+ return 0.0
+}
diff --git a/test/mpfrsqrt.ok b/test/mpfrsqrt.ok
new file mode 100644
index 00000000..16217c78
--- /dev/null
+++ b/test/mpfrsqrt.ok
@@ -0,0 +1,2 @@
+11111111111111111111111111111111111111111111111111111111111
+11111111111111111111111111111111111111111111111111111111111
diff --git a/test/printhuge.awk b/test/printhuge.awk
index 4d4fb7d4..1de27ecc 100644
--- a/test/printhuge.awk
+++ b/test/printhuge.awk
@@ -1,3 +1,3 @@
BEGIN {
- printf("%c", sprintf("%c", (0xffffff00+255)))
+ printf("%c\n", sprintf("%c", (0xffffff00+255)))
}
diff --git a/test/printhuge.ok b/test/printhuge.ok
index ce542efa..29e181eb 100644
--- a/test/printhuge.ok
+++ b/test/printhuge.ok
@@ -1 +1 @@
-˙ \ No newline at end of file