#! /bin/sh # # This is patch #5 to gawk 3.1. cd to gawk-3.1.4 and sh this file. # Then remove all the .orig files and rename the directory gawk-3.1.5 # Changes to files that are automatically recreated have been omitted. # They will be recreated the first time you run make. # This includes all the extracted example files in awklib. # First, slight rearranging rm -fr intl bisonfix.sed pc/Makefile.tst echo - 'pc/Makefile.tst' cat << \EOF > pc/Makefile.tst # Makefile for GNU Awk test suite. # # Copyright (C) 1988-2004 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. # # GAWK is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # GAWK is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # ============================================================================ # MS-DOS & OS/2 Notes: READ THEM! # ============================================================================ # As of version 2.91, efforts to make this makefile run in MS-DOS and OS/2 # have started in earnest. The following steps need to be followed in order # to run this makefile: # # 1. The first thing that you will need to do is to convert all of the # files ending in ".ok" in the test directory, all of the files ending # in ".good" (or ".goo") in the test/reg directory, and mmap8k.in from # having a linefeed to having carriage return/linefeed at the end of each # line. There are various public domain UNIX to DOS converters and any # should work. Alternatively, you can use diff instead of cmp--most # versions of diff don't care about how the lines end. # # 2. You will need an sh-compatible shell. Please refer to the "README.pc" # file in the README_d directory for information about obtaining a copy. # You will also need various UNIX utilities. At a minimum, you will # need: rm, tr, cmp (or diff, see above), cat, wc, and sh. # You should also have a UNIX-compatible date program. # # The makefile has only been tested with dmake 3.8 and DJGPP Make 3.74 or # later. After making all of these changes, typing "dmake bigtest extra" # or "make bigtest extra" (with DJGPP Make) should run successfully. # The Bash shell (compiled with djgpp) works very well with the # MSC & djgpp-compiled gawks. It is currently the recommended shell to use # for testing, along with DJGPP make. See README.pc for # more information on OS/2 and DOS shells. # You will almost certainly need to change some of the values (MACROS) # defined on the next few lines. # This won't work unless you have "sh" and set SHELL equal to it (Make 3.74 # or later which comes with DJGPP will work with SHELL=/bin/sh if you have # sh.exe anywhere on your PATH). #SHELL = e:\bin\sh.exe SHELL = /bin/sh # Point to gawk AWK = ../gawk.exe # Also point to gawk but for DOS commands needing backslashes. We need # the forward slash version too or 'arrayparam' fails. AWK2 = '..\gawk.exe' AWKPROG = ../gawk.exe # Set your cmp command here (you can use most versions of diff instead of cmp # if you don't want to convert the .ok files to the DOS CR/LF format). # This is also an issue for the "mmap8k" test. If it fails, make sure that # mmap8k.in has CR/LFs or that you've used diff. # # The following comment is for users of OSs which support long file names # (such as Windows 95) for all versions of gawk (both 16 & 32-bit). # If you use a shell which doesn't support long filenames, temporary files # created by this makefile will be truncated by your shell. "_argarra" is an # example of this. If $(CMP) is a DJGPP-compiled program, then it will fail # because it looks for the long filename (eg. _argarray). To fix this, you # need to set LFN=n in your shell's environment. # NOTE: Setting LFN in the makefile most probably won't help you because LFN # needs to be an environment variable. #CMP = cmp # See the comment above for why you might want to set CMP to "env LFN=n diff" #CMP = env LFN=n diff CMP = diff #CMP = diff -c #CMP = gcmp # Set your "cp" and "mkdir" commands here. Note: DOS's copy must take forward # slashes. #CP = cp #CP = : && command -c copy CP = command.com /c copy #MKDIR = mkdir #MKDIR = gmkdir #MKDIR = : && command -c mkdir MKDIR = command.com /c mkdir # Set your unix-style date function here #DATE = date DATE = gdate # MS-DOS and OS/2 use ; as a PATH delimiter PATH_SEPARATOR = ; # ============================================================================ # You shouldn't need to modify anything below this line. # ============================================================================ srcdir = . # Get rid of core files when cleaning CLEANFILES = core core.* # try to keep these sorted BASIC_TESTS = addcomma anchgsub argarray arrayparm arrayref arrymem1 \ arrayprm2 arrayprm3 arryref2 arryref3 arryref4 arryref5 arynasty \ arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \ aryprm8 arysubnm asgext awkpath back89 backgsub childin clobber \ clsflnam compare compare2 concat1 concat2 concat3 convfmt datanonl defref \ delarprm delarpm2 delfunc dynlj eofsplit exitval1 exitval2 fldchg fldchgnf fmttest fnamedat \ fnarray fnarray2 fnarydel fnaryscl fnasgnm fnmisc fnparydl \ fordel forsimp fsbs fsspcoln fsrs fstabplus funsemnl funsmnam funstack getline \ getline2 getline3 getlnbuf getnr2tb getnr2tm gsubasgn gsubtest \ gsubtst2 gsubtst3 gsubtst4 gsubtst5 hex hsprint inputred intest \ intprec iobug1 leaddig leadnl litoct longsub longwrds manglprm math membug1 \ messages minusstr mmap8k nasty nasty2 negexp nested nfldstr \ nfneg nfset nlfldsep nlinstr nlstrina noeffect nofmtch noloop1 \ noloop2 nonl noparms nors nulrsend numindex numsubstr octsub ofmt \ ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf paramdup paramtyp \ parseme pcntplus prdupval prec printf0 printf1 prmarscl prmreuse \ prt1eval prtoeval psx96sub rand rebt8b1 rebt8b2 redfilnm regeq \ reindops reparse resplit rs rsnul1nl rsnulbig rsnulbig2 rstest1 \ rstest2 rstest3 rstest4 rstest5 rswhite scalar sclforin sclifin \ sortempty splitargv splitarr splitdef splitvar splitwht sprintfc \ strcat1 strtod subamp subsepnm subslash substr swaplns synerr1 tradanch \ tweakfld uninit2 uninit3 uninit4 uninitialized unterm wjposer1 \ zeroe0 zeroflag UNIX_TESTS = fflush getlnhd pid pipeio1 pipeio2 poundbang space strftlng GAWK_EXT_TESTS = argtest asort asorti backw badargs clos1way fieldwdth fsfwfs \ gensub gensub2 gnuops2 gnuops3 gnureops icasefs icasers igncdym igncfs ignrcase \ ignrcas2 lint match1 match2 manyfiles nondec posix procinfs \ printfbad1 regx8bit rebuf reint rsstart1 rsstart2 rsstart3 \ rstest6 shadow sort1 strtonum strftime whiny EXTRA_TESTS = regtest inftest INET_TESTS = inetechu inetecht inetdayu inetdayt # List of the tests which should be run with --lint option: NEED_LINT = defref noeffect nofmtch shadow uninit2 uninit3 uninit4 uninitialized # List of the files that appear in manual tests or are for reserve testing: GENTESTS_UNUSED = Makefile.in gtlnbufv.awk printfloat.awk switch2.awk # Message stuff is to make it a little easier to follow. # Make the pass-fail last and dependent on others to avoid # spurious errors if `make -j' in effect. check: msg \ printlang \ basic-msg-start basic basic-msg-end \ unix-msg-start unix-tests unix-msg-end \ extend-msg-start gawk-extensions extend-msg-end \ pass-fail basic: $(BASIC_TESTS) unix-tests: $(UNIX_TESTS) gawk-extensions: $(GAWK_EXT_TESTS) #extra: $(EXTRA_TESTS) inet extra: $(EXTRA_TESTS) inetmesg inet: inetmesg $(INET_TESTS) msg:: @echo '' @echo 'Any output from "cmp" is bad news, although some differences' @echo 'in floating point values are probably benign -- in particular,' @echo 'some systems may omit a leading zero and the floating point' @echo 'precision may lead to slightly different output in a few cases.' printlang:: @$(AWK) -f $(srcdir)/printlang.awk basic-msg-start: @echo "======== Starting basic tests ========" basic-msg-end: @echo "======== Done with basic tests ========" unix-msg-start: @echo "======== Starting Unix tests ========" unix-msg-end: @echo "======== Done with Unix tests ========" extend-msg-start: @echo "======== Starting gawk extension tests ========" extend-msg-end: @echo "======== Done with gawk extension tests ========" # This test is a PITA because increasingly, /tmp is getting # mounted noexec. So, we'll test it locally. Sigh. # # More PITA; some systems have medium short limits on #! paths, # so this can still fail poundbang:: @echo $@ @sed "s;/tmp/gawk;`pwd`/$(AWKPROG);" < $(srcdir)/poundbang.awk > ./_pbd.awk @chmod +x ./_pbd.awk @if ./_pbd.awk $(srcdir)/poundbang.awk > _`basename $@` ; \ then : ; \ else \ sed "s;/tmp/gawk;../$(AWKPROG);" < $(srcdir)/poundbang.awk > ./_pbd.awk ; \ chmod +x ./_pbd.awk ; \ LC_ALL=$${GAWKLOCALE:-C} LANG=$${GAWKLOCALE:-C} ./_pbd.awk $(srcdir)/poundbang.awk > _`basename $@`; \ fi @-$(CMP) $(srcdir)/poundbang.awk _`basename $@` && rm -f _`basename $@` _pbd.awk messages:: @echo $@ @$(AWK) -f $(srcdir)/messages.awk >out2 2>out3 @-$(CMP) $(srcdir)/out1.ok out1 && $(CMP) $(srcdir)/out2.ok out2 && $(CMP) $(srcdir)/out3.ok out3 && rm -f out1 out2 out3 argarray:: @echo $@ @case $(srcdir) in \ .) : ;; \ *) cp $(srcdir)/argarray.in . ;; \ esac @TEST=test echo just a test | $(AWK) -f $(srcdir)/argarray.awk ./argarray.in - >_$@ @case $(srcdir) in \ .) : ;; \ *) rm -f ./argarray.in ;; \ esac @-$(CMP) $(srcdir)/argarray.ok _$@ && rm -f _$@ regtest:: @echo 'Some of the output from regtest is very system specific, do not' @echo 'be distressed if your output differs from that distributed.' @echo 'Manual inspection is called for.' AWK=`pwd`/$(AWK) $(srcdir)/regtest.sh manyfiles:: @echo manyfiles @rm -rf junk @mkdir junk @$(AWK) 'BEGIN { for (i = 1; i <= 300; i++) print i, i}' >_$@ @$(AWK) -f $(srcdir)/manyfiles.awk _$@ _$@ @wc -l junk/* | $(AWK) '$$1 != 2' | wc -l | sed "s/ *//g" > _$@ @rm -rf junk ; $(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ compare:: @echo $@ @$(AWK) -f $(srcdir)/compare.awk 0 1 $(srcdir)/compare.in >_$@ @-$(CMP) $(srcdir)/compare.ok _$@ && rm -f _$@ inftest:: @echo $@ @echo This test is very machine specific... @echo This sometimes seems to cause problems for MSC gawk, so do not @echo run it. # @$(AWK) -f $(srcdir)/inftest.awk | sed "s/inf/Inf/g" >_$@ # @-$(CMP) $(srcdir)/inftest.ok _$@ && rm -f _$@ getline2:: @echo $@ @$(AWK) -f $(srcdir)/getline2.awk $(srcdir)/getline2.awk $(srcdir)/getline2.awk >_$@ @-$(CMP) $(srcdir)/getline2.ok _$@ && rm -f _$@ awkpath:: @echo $@ @AWKPATH="$(srcdir)$(PATH_SEPARATOR)$(srcdir)/lib" $(AWK) -f awkpath.awk >_$@ @-$(CMP) $(srcdir)/awkpath.ok _$@ && rm -f _$@ argtest:: @echo $@ @$(AWK) -f $(srcdir)/argtest.awk -x -y abc >_$@ @-$(CMP) $(srcdir)/argtest.ok _$@ && rm -f _$@ badargs:: @echo $@ @-$(AWK) -f 2>&1 | grep -v patchlevel >_$@ @-$(CMP) $(srcdir)/badargs.ok _$@ && rm -f _$@ nonl:: @echo $@ @-AWKPATH=$(srcdir) $(AWK) --lint -f nonl.awk /dev/null >_$@ 2>&1 @-$(CMP) $(srcdir)/nonl.ok _$@ && rm -f _$@ strftime:: @echo This test could fail on slow machines or on a minute boundary, @echo so if it does, double check the actual results: @echo $@ # @GAWKLOCALE=C; export GAWKLOCALE; \ # TZ=GMT0; export TZ; \ # (LC_ALL=C date) | $(AWK) -v OUTPUT=_$@ -f $(srcdir)/strftime.awk @GAWKLOCALE=C; export GAWKLOCALE; \ TZ=GMT0; export TZ; \ (LC_ALL=C $(DATE)) | $(AWK) -v OUTPUT=_$@ -f $(srcdir)/strftime.awk @-$(CMP) strftime.ok _$@ && rm -f _$@ strftime.ok || exit 0 litoct:: @echo $@ @echo ab | $(AWK) --traditional -f $(srcdir)/litoct.awk >_$@ @-$(CMP) $(srcdir)/litoct.ok _$@ && rm -f _$@ fflush:: @echo $@ @$(srcdir)/fflush.sh >_$@ @-$(CMP) $(srcdir)/fflush.ok _$@ && rm -f _$@ tweakfld:: @echo $@ @$(AWK) -f $(srcdir)/tweakfld.awk $(srcdir)/tweakfld.in >_$@ @rm -f errors.cleanup @-$(CMP) $(srcdir)/tweakfld.ok _$@ && rm -f _$@ mmap8k:: @echo $@ @$(AWK) '{ print }' $(srcdir)/mmap8k.in >_$@ @-$(CMP) $(srcdir)/mmap8k.in _$@ && rm -f _$@ tradanch:: @echo $@ @$(AWK) --traditional -f $(srcdir)/tradanch.awk $(srcdir)/tradanch.in >_$@ @-$(CMP) $(srcdir)/tradanch.ok _$@ && rm -f _$@ # AIX /bin/sh exec's the last command in a list, therefore issue a ":" # command so that pid.sh is fork'ed as a child before being exec'ed. pid:: @echo pid @echo Expect pid to fail with DJGPP. @AWKPATH=$(srcdir) AWK=$(AWKPROG) $(SHELL) $(srcdir)/pid.sh $$$$ > _`basename $@` ; : @-$(CMP) $(srcdir)/pid.ok _`basename $@` && rm -f _`basename $@` _`basename $@`.in strftlng:: @echo $@ @TZ=UTC; export TZ; $(AWK) -f $(srcdir)/strftlng.awk >_$@ @if $(CMP) $(srcdir)/strftlng.ok _$@ >/dev/null 2>&1 ; then : ; else \ TZ=UTC0; export TZ; $(AWK) -f $(srcdir)/strftlng.awk >_$@ ; \ fi @-$(CMP) $(srcdir)/strftlng.ok _$@ && rm -f _$@ nors:: @echo $@ @echo A B C D E | tr -d '\12\15' | $(AWK) '{ print $$NF }' - $(srcdir)/nors.in > _$@ @-$(CMP) $(srcdir)/nors.ok _$@ && rm -f _$@ reint:: @echo $@ @$(AWK) --re-interval -f $(srcdir)/reint.awk $(srcdir)/reint.in >_$@ @-$(CMP) $(srcdir)/reint.ok _$@ && rm -f _$@ pipeio1:: @echo $@ @$(AWK) -f $(srcdir)/pipeio1.awk >_$@ @rm -f test1 test2 @-$(CMP) $(srcdir)/pipeio1.ok _$@ && rm -f _$@ pipeio2:: @echo $@ @$(AWK) -v SRCDIR=$(srcdir) -f $(srcdir)/pipeio2.awk >_$@ @-$(CMP) $(srcdir)/pipeio2.ok _$@ && rm -f _$@ clobber:: @echo $@ @$(AWK) -f $(srcdir)/clobber.awk >_$@ @-$(CMP) $(srcdir)/clobber.ok seq && $(CMP) $(srcdir)/clobber.ok _$@ && rm -f _$@ @rm -f seq arynocls:: @echo $@ @-AWKPATH=$(srcdir) $(AWK) -v INPUT=$(srcdir)/arynocls.in -f arynocls.awk >_$@ @-$(CMP) $(srcdir)/arynocls.ok _$@ && rm -f _$@ getlnbuf:: @echo $@ @-AWKPATH=$(srcdir) $(AWK) -f getlnbuf.awk $(srcdir)/getlnbuf.in > _$@ @-AWKPATH=$(srcdir) $(AWK) -f gtlnbufv.awk $(srcdir)/getlnbuf.in > _2$@ @-$(CMP) $(srcdir)/getlnbuf.ok _$@ && $(CMP) $(srcdir)/getlnbuf.ok _2$@ && rm -f _$@ _2$@ inetmesg:: @echo These tests only work if your system supports the services @echo "'discard'" at port 9 and "'daytimed'" at port 13. Check your @echo file /etc/services and do "'netstat -a'". inetechu:: @echo This test is for establishing UDP connections @$(AWK) 'BEGIN {print "" |& "/inet/udp/0/127.0.0.1/9"}' inetecht:: @echo This test is for establishing TCP connections @$(AWK) 'BEGIN {print "" |& "/inet/tcp/0/127.0.0.1/9"}' inetdayu:: @echo This test is for bidirectional UDP transmission @$(AWK) 'BEGIN { print "" |& "/inet/udp/0/127.0.0.1/13"; \ "/inet/udp/0/127.0.0.1/13" |& getline; print $0}' inetdayt:: @echo This test is for bidirectional TCP transmission @$(AWK) 'BEGIN { print "" |& "/inet/tcp/0/127.0.0.1/13"; \ "/inet/tcp/0/127.0.0.1/13" |& getline; print $0}' redfilnm:: @echo $@ @$(AWK) -f $(srcdir)/redfilnm.awk srcdir=$(srcdir) $(srcdir)/redfilnm.in >_$@ @-$(CMP) $(srcdir)/redfilnm.ok _$@ && rm -f _$@ leaddig:: @echo $@ @$(AWK) -v x=2E -f $(srcdir)/leaddig.awk >_$@ @-$(CMP) $(srcdir)/leaddig.ok _$@ && rm -f _$@ gsubtst3:: @echo $@ @$(AWK) --re-interval -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ space:: @echo $@ @echo Expect space to fail with DJGPP. @$(AWK) -f ' ' $(srcdir)/space.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ printf0:: @echo $@ @$(AWK) --posix -f $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rsnulbig:: @echo $@ @ : Suppose that block size for pipe is at most 128kB: @$(AWK) 'BEGIN { for (i = 1; i <= 128*64+1; i++) print "abcdefgh123456\n" }' 2>&1 | \ $(AWK) 'BEGIN { RS = ""; ORS = "\n\n" }; { print }' 2>&1 | \ $(AWK) '/^[^a]/; END{ print NR }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rsnulbig2:: @echo $@ @$(AWK) 'BEGIN { ORS = ""; n = "\n"; for (i = 1; i <= 10; i++) n = (n n); \ for (i = 1; i <= 128; i++) print n; print "abc\n" }' 2>&1 | \ $(AWK) 'BEGIN { RS = ""; ORS = "\n\n" };{ print }' 2>&1 | \ $(AWK) '/^[^a]/; END { print NR }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ whiny:: @echo $@ @WHINY_USERS=1 $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ ignrcas2:: @echo $@ @GAWKLOCALE=en_US ; export GAWKLOCALE ; \ $(AWK) -f $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ subamp:: @echo $@ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ # This test makes sure gawk exits with a zero code. # Thus, unconditionally generate the exit code. exitval1:: @echo $@ @$(AWK) -f $(srcdir)/exitval1.awk >_$@ 2>&1; echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fsspcoln:: @echo $@ @$(AWK) -f $(srcdir)/$@.awk 'FS=[ :]+' $(srcdir)/$@.in >_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rsstart1:: @echo $@ @$(AWK) -f $(srcdir)/$@.awk $(srcdir)/rsstart1.in >_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rsstart2:: @echo $@ @$(AWK) -f $(srcdir)/$@.awk $(srcdir)/rsstart1.in >_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rsstart3:: @echo $@ @head $(srcdir)/rsstart1.in | $(AWK) -f $(srcdir)/rsstart2.awk >_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ Gt-dummy: # file Maketests, generated from Makefile.am by the Gentests program addcomma: @echo addcomma @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ anchgsub: @echo anchgsub @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arrayparm: @echo arrayparm @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arrayref: @echo arrayref @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arrymem1: @echo arrymem1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arrayprm2: @echo arrayprm2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arrayprm3: @echo arrayprm3 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arryref2: @echo arryref2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arryref3: @echo arryref3 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arryref4: @echo arryref4 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arryref5: @echo arryref5 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arynasty: @echo arynasty @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ aryprm1: @echo aryprm1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ aryprm2: @echo aryprm2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ aryprm3: @echo aryprm3 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ aryprm4: @echo aryprm4 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ aryprm5: @echo aryprm5 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ aryprm6: @echo aryprm6 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ aryprm7: @echo aryprm7 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ aryprm8: @echo aryprm8 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ arysubnm: @echo arysubnm @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ asgext: @echo asgext @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ back89: @echo back89 @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ backgsub: @echo backgsub @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ childin: @echo childin @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ clsflnam: @echo clsflnam @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ compare2: @echo compare2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ concat1: @echo concat1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ concat2: @echo concat2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ concat3: @echo concat3 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ convfmt: @echo convfmt @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ datanonl: @echo datanonl @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ defref: @echo defref @AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ delarprm: @echo delarprm @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ delarpm2: @echo delarpm2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ delfunc: @echo delfunc @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ dynlj: @echo dynlj @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ eofsplit: @echo eofsplit @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ exitval2: @echo exitval2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fldchg: @echo fldchg @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fldchgnf: @echo fldchgnf @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fmttest: @echo fmttest @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fnamedat: @echo fnamedat @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fnarray: @echo fnarray @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fnarray2: @echo fnarray2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fnarydel: @echo fnarydel @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fnaryscl: @echo fnaryscl @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fnasgnm: @echo fnasgnm @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fnmisc: @echo fnmisc @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fnparydl: @echo fnparydl @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fordel: @echo fordel @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ forsimp: @echo forsimp @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fsbs: @echo fsbs @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fsrs: @echo fsrs @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fstabplus: @echo fstabplus @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ funsemnl: @echo funsemnl @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ funsmnam: @echo funsmnam @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ funstack: @echo funstack @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ getline: @echo getline @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ getline3: @echo getline3 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ getnr2tb: @echo getnr2tb @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ getnr2tm: @echo getnr2tm @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gsubasgn: @echo gsubasgn @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gsubtest: @echo gsubtest @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gsubtst2: @echo gsubtst2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gsubtst4: @echo gsubtst4 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gsubtst5: @echo gsubtst5 @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ hex: @echo hex @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ hsprint: @echo hsprint @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ inputred: @echo inputred @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ intest: @echo intest @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ intprec: @echo intprec @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ iobug1: @echo iobug1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ leadnl: @echo leadnl @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ longsub: @echo longsub @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ longwrds: @echo longwrds @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ manglprm: @echo manglprm @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ math: @echo math @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ membug1: @echo membug1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ minusstr: @echo minusstr @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nasty: @echo nasty @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nasty2: @echo nasty2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ negexp: @echo negexp @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nested: @echo nested @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nfldstr: @echo nfldstr @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nfneg: @echo nfneg @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nfset: @echo nfset @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nlfldsep: @echo nlfldsep @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nlinstr: @echo nlinstr @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nlstrina: @echo nlstrina @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ noeffect: @echo noeffect @AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nofmtch: @echo nofmtch @AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ noloop1: @echo noloop1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ noloop2: @echo noloop2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ noparms: @echo noparms @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nulrsend: @echo nulrsend @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ numindex: @echo numindex @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ numsubstr: @echo numsubstr @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ octsub: @echo octsub @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ ofmt: @echo ofmt @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ ofmtbig: @echo ofmtbig @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ ofmtfidl: @echo ofmtfidl @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ ofmts: @echo ofmts @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ onlynl: @echo onlynl @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ opasnidx: @echo opasnidx @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ opasnslf: @echo opasnslf @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ paramdup: @echo paramdup @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ paramtyp: @echo paramtyp @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ parseme: @echo parseme @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ pcntplus: @echo pcntplus @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ prdupval: @echo prdupval @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ prec: @echo prec @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ printf1: @echo printf1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ prmarscl: @echo prmarscl @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ prmreuse: @echo prmreuse @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ prt1eval: @echo prt1eval @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ prtoeval: @echo prtoeval @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ psx96sub: @echo psx96sub @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rand: @echo rand @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rebt8b1: @echo rebt8b1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rebt8b2: @echo rebt8b2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ regeq: @echo regeq @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ reindops: @echo reindops @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ reparse: @echo reparse @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ resplit: @echo resplit @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rs: @echo rs @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rsnul1nl: @echo rsnul1nl @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rstest1: @echo rstest1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rstest2: @echo rstest2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rstest3: @echo rstest3 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rstest4: @echo rstest4 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rstest5: @echo rstest5 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rswhite: @echo rswhite @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ scalar: @echo scalar @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ sclforin: @echo sclforin @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ sclifin: @echo sclifin @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ sortempty: @echo sortempty @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ splitargv: @echo splitargv @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ splitarr: @echo splitarr @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ splitdef: @echo splitdef @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ splitvar: @echo splitvar @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ splitwht: @echo splitwht @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ sprintfc: @echo sprintfc @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ strcat1: @echo strcat1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ strtod: @echo strtod @echo Expect strtod to fail with DJGPP. @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ subsepnm: @echo subsepnm @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ subslash: @echo subslash @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ substr: @echo substr @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ swaplns: @echo swaplns @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ synerr1: @echo synerr1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ uninit2: @echo uninit2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ uninit3: @echo uninit3 @AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ uninit4: @echo uninit4 @AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ uninitialized: @echo uninitialized @AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ unterm: @echo unterm @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ wjposer1: @echo wjposer1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ zeroe0: @echo zeroe0 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ zeroflag: @echo zeroflag @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ getlnhd: @echo getlnhd @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ asort: @echo asort @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ asorti: @echo asorti @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ backw: @echo backw @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ clos1way: @echo clos1way @echo Expect clos1way to fail with DJGPP. @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fieldwdth: @echo fieldwdth @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ fsfwfs: @echo fsfwfs @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gensub: @echo gensub @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gensub2: @echo gensub2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gnuops2: @echo gnuops2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gnuops3: @echo gnuops3 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ gnureops: @echo gnureops @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ icasefs: @echo icasefs @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ icasers: @echo icasers @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ igncdym: @echo igncdym @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ igncfs: @echo igncfs @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ ignrcase: @echo ignrcase @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ lint: @echo lint @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ match1: @echo match1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ match2: @echo match2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ nondec: @echo nondec @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ posix: @echo posix @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ procinfs: @echo procinfs @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ printfbad1: @echo printfbad1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ regx8bit: @echo regx8bit @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rebuf: @echo rebuf @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rstest6: @echo rstest6 @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ shadow: @echo shadow @AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ sort1: @echo sort1 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ strtonum: @echo strtonum @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ # end of file Maketests # Targets generated for other tests: $(srcdir)/Maketests: $(srcdir)/Makefile.am $(srcdir)/Gentests $(AWK) -f $(srcdir)/Gentests "$(srcdir)/Makefile.am" *.awk *.in > $(srcdir)/Maketests clean: rm -fr _* core core.* junk out1 out2 out3 strftime.ok test1 test2 seq *~ # An attempt to print something that can be grepped for in build logs pass-fail: @COUNT=`ls _* 2>/dev/null | wc -l` ; \ if test $$COUNT = 0 ; \ then echo ALL TESTS PASSED ; \ else echo $$COUNT TESTS FAILED ; \ fi # This target for my convenience to look at all the results diffout: for i in _* ; \ do \ echo ============== $$i ============= ; \ diff -c $(srcdir)/$${i#_}.ok $$i ; \ done | more # This target is for testing with electric fence. efence: for i in $$(ls _* | sed 's;_\(.*\);\1;') ; \ do \ bad=$$(wc -l < _$$i) \ ok=$$(wc -l < $$i.ok) ; \ if (( $$bad == $$ok + 2 )) ; \ then \ rm _$$i ; \ fi ; \ done # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: EOF cd po echo - 'gawk.pot' cat << 'EOF' > 'gawk.pot' # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, c-format msgid "attempt to use function `%s' as an array" msgstr "" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "" #: array.c:156 #, c-format msgid "from %s" msgstr "" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "" #: awkgram.y:313 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "" #: awkgram.y:962 msgid "use of non-array as array" msgstr "" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" #: awkgram.y:3105 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "" #: builtin.c:146 msgid "standard output" msgstr "" #: builtin.c:147 msgid "reason unknown" msgstr "" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "" #: builtin.c:472 msgid "`length(array)' is a gawk extension" msgstr "" #: builtin.c:481 msgid "length: received non-string argument" msgstr "" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "" #: builtin.c:1353 #, c-format msgid "substr: length %g is not >= 1" msgstr "" #: builtin.c:1355 #, c-format msgid "substr: length %g is not >= 0" msgstr "" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "" #: builtin.c:2717 msgid "lshift: received non-numeric second argument" msgstr "" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "" #: builtin.c:2755 msgid "rshift: received non-numeric second argument" msgstr "" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "" #: builtin.c:2793 msgid "and: received non-numeric second argument" msgstr "" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "" #: builtin.c:2829 msgid "or: received non-numeric second argument" msgstr "" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "" #: builtin.c:2865 msgid "xor: received non-numeric second argument" msgstr "" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "" #: eval.c:875 msgid "statement has no effect" msgstr "" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "" #: eval.c:1278 msgid "division by zero attempted" msgstr "" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" #: ext.c:102 msgid "extension: missing function name" msgstr "" #: ext.c:107 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "" #: ext.c:113 #, c-format msgid "extension: can't redefine function `%s'" msgstr "" #: ext.c:117 #, c-format msgid "extension: function `%s' already defined" msgstr "" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" #: ext.c:124 #, c-format msgid "extension: function name `%s' previously defined" msgstr "" #: ext.c:201 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "" #: ext.c:204 #, c-format msgid "function `%s': missing argument #%d" msgstr "" #: ext.c:214 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" #: ext.c:243 msgid "Operation Not Supported" msgstr "" #: field.c:326 msgid "NF set to negative value" msgstr "" #: field.c:819 msgid "split: second argument is not an array" msgstr "" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "" #: io.c:811 msgid "too many pipes or input files open" msgstr "" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "" #: io.c:852 msgid "close of redirection that was never opened" msgstr "" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "" #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "" #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "" #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "" #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "" #: io.c:2024 msgid "`|&' not supported" msgstr "" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "" #: main.c:572 msgid "no program text at all!" msgstr "" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "" #: main.c:681 msgid "\t-W exec=file\t\t--exec=file\n" msgstr "" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "" #: main.c:1074 msgid "floating point exception" msgstr "" #: main.c:1081 msgid "fatal error: internal error" msgstr "" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "" #: msg.c:120 msgid "warning: " msgstr "" #: msg.c:142 msgid "error: " msgstr "" #: msg.c:178 msgid "fatal: " msgstr "" #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "" #: node.c:414 msgid "backslash at end of string" msgstr "" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "" #: regcomp.c:160 msgid "Success" msgstr "" #: regcomp.c:163 msgid "No match" msgstr "" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "" #: regcomp.c:169 msgid "Invalid collation character" msgstr "" #: regcomp.c:172 msgid "Invalid character class name" msgstr "" #: regcomp.c:175 msgid "Trailing backslash" msgstr "" #: regcomp.c:178 msgid "Invalid back reference" msgstr "" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "" #: regcomp.c:193 msgid "Invalid range end" msgstr "" #: regcomp.c:196 msgid "Memory exhausted" msgstr "" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "" #: regcomp.c:205 msgid "Regular expression too big" msgstr "" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr "" #: regcomp.c:688 msgid "No previous regular expression" msgstr "" EOF echo - 'ca.po' cat << 'EOF' > 'ca.po' # translation of gawk.po to Catalan # Copyright (C) 2003 Free Software Foundation, Inc. # Antoni Bella Perez , 2003. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.31\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2003-05-07 21:13+0100\n" "Last-Translator: Antoni Bella Perez \n" "Language-Team: Catalan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.1\n" #: array.c:112 #, fuzzy, c-format msgid "attempt to use function `%s' as an array" msgstr "s'ha intentat usar la funció «%s» com a una matriu" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "s'ha intentat usar un paràmetre escalar «%s» com a una matriu" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "s'ha intentat usar la dada escalar «%s» com a una matriu" #: array.c:156 #, fuzzy, c-format msgid "from %s" msgstr "%s (de %s)" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "referència a un element sense valor inicial «%s[\"%s\"]»" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "el subscript de la matriu «%s» és una cadena nul·la" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: l'índex «%s» no està en la matriu «%s»" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: buit (nul)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: buit (zero)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: mida_taula = %d, mida_matriu = %d\n" #: array.c:829 #, fuzzy, c-format msgid "%s: is parameter\n" msgstr "%s: és un paràmetre\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: ref_matriu a %s\n" #: awkgram.y:208 #, fuzzy, c-format msgid "%s blocks must have an action part" msgstr "Els blocs FINAL han de tindre una part d'acció" #: awkgram.y:211 #, fuzzy msgid "each rule must have a pattern or an action part" msgstr "Els blocs FINAL han de tindre una part d'acció" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "«%s» és una funció interna, no pot ser redefinida" #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "la constant d'expressió regular «/%s/» sembla un comentari en C, perà no ho " "és" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "la constant d'expressió regular «/%s/» sembla un comentari en C, perà no ho " "és" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "la declaració podria no tindre efecte" #: awkgram.y:440 awkgram.y:460 #, fuzzy, c-format msgid "`%s' used in %s action" msgstr "«next» és usat dintre de l'acció BEGIN o END" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "«nextfile» és una extensió de gawk" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "«return» és usat fora del context d'una funció" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "el «print» simple en la regla BEGIN o END probablement ha de ser «print \"\"»" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "«delete array» és una extensió de gawk" #: awkgram.y:540 awkgram.y:547 #, fuzzy msgid "`delete(array)' is a non-portable tawk extension" msgstr "«delete array» és una extensió de gawk" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "les canonades bidireccionals multi-etapes no funcionen" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "expressió regular a la dreta d'una assignació" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "expressió regular a l'esquerra de l'operador «~» o «!~»" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "expressió regular a la derta de la comparació" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "«getline» no redirigit sense definir dintre de l'acció FINAL" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "la crida de «length» sense parèntesis no és portable" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "la crida de «length» sense parèntesis està desaprovada per POSIX" #: awkgram.y:962 msgid "use of non-array as array" msgstr "" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "expressió de subscript no vàlida" #: awkgram.y:1171 #, fuzzy msgid "unexpected newline or end of string" msgstr "nova línia inesperada" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "el text del programa en la línia de comandaments està buit" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "no es pot obrir el fitxer font «%s» per a lectura (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "no es pot llegir el fitxer font «%s» (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "el fitxer font «%s» està buit" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "el fitxer font no finalitza amb un retorn de carro" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "expressió regular sense finalitzar acaba amb «\\» al final del fitxer" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "expressió regular sense finalitzar" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "expressió regular sense finalitzar al final del fitxer" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "l'ús de «\\ #...» com a continuació de línia no és portable" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "la barra invertida no és l'últim caràcter en la línia" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX no permet l'operador «**=»" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "l'antic awk no suporta l'operador «**=»" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX no permet l'operador «**»" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "l'antic awk no suporta l'operador «**=»" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "l'operador «^=» no està suportat en l'antic awk" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "l'operador «^» no està suportat en l'antic awk" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "cadena sense finalitzar" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "caràcter «%c» no vàlid en l'expressió" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "«%s» és una extensió de gawk" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "«%s» és una extensió de Bell Labs" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX no permet «%s»" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "«%s» no està suportat en l'antic awk" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "«goto» se considera nefast!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d no és vàlid com a nombre d'arguments per a %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: el tercer argument és una extensió de gawk" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: la cadena literal com a últim argument de substitució no té efecte" #: awkgram.y:2339 #, fuzzy, c-format msgid "%s third parameter is not a changeable object" msgstr "sub: el tercer argument no és un objecte intercanviable" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: el segon argument és una extensió de gawk" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "l'ús de dcgettext(_\"...\") no és correcte: elimineu el guió baix inicial" #: awkgram.y:2394 #, fuzzy msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "l'ús de dcgettext(_\"...\") no és correcte: elimineu el guió baix inicial" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "funció «%s»: paràmetre #%d, «%s», duplica al paràmetre #%d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funció «%s»: paràmetre «%s» ofusca la variable global" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "no es pot obrir «%s» per a escriptura (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "enviant el perfil a l'eixida d'error estàndard" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: tancament erroni (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() crida dos vegades!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funció «%s»: no pot usar el nom de la funció com a paràmetre" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "nom de la funció «%s» definida prèviament" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "es crida a la funció «%s» però no s'ha definit" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "es defineix la funció «%s» però no s'ha cridat mai" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "l'expressió regular constant per al paràmetre #%d condueix a un valor booleà" #: awkgram.y:3105 #, fuzzy, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "s'ha cridat a la funció «%s» amb espai entre el nom i el «(»,\n" "%s" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s a \"%s\" ha fallat (%s)" #: builtin.c:146 msgid "standard output" msgstr "eixida estàndard" #: builtin.c:147 msgid "reason unknown" msgstr "motiu desconegut" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: s'ha rebut un argument que no és un número" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: l'argument %g està fora de rang" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: no es pot netejar: la canonada «%s» s'ha obert per a lectura, no per " "a escriptura" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: no es pot netejar: el fitxer «%s» s'ha obert per a lectura, no per a " "escriptura" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: «%s» no és un fitxer obert, canonada o co-procés" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "índex: el primer argument rebut no és una cadena" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "índex: el segon argument rebut no és una cadena" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: s'ha rebut un argument no numèric" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "«delete array» és una extensió de gawk" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: s'ha rebut un argument que no és una cadena" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: s'ha rebut un argument no numèric" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: s'ha rebut l'argument negatiu %g" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "no es permeten «$» en els formats awk" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "el compte d'arguments amb «$» ha de ser > 0" #: builtin.c:786 #, fuzzy, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "" "el comte d'arguments %d és major que el nombre total d'arguments " "proporcionats" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "no es permet «$» després d'un punt en el format" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "no es proporciona «$» per a l'ample o precisió del camp de posició" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "«l» manca de significat en els formats awk; serà ignorat" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "«l» no està permés en els formats POSIX de awk" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "«L» manca de significat en els formats awk; serà ignorat" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "«L» no està permés en els formats POSIX de awk" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "«h» manca de significat en els formats awk; serà ignorat" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "«h» no està permés en els formats POSIX de awk" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "no hi ha prou arguments per a satisfer el format d'una cadena" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ desbordament per a aquest" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: l'especificador de format no conté lletra de control" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "s'han proporcionat masses arguments per a la cadena de format" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: sense arguments" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: s'ha rebut un argument no numèric" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: cridat amb l'argument negatiu %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: l'índex d'inici %g no és vàlid, usant 1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: l'índex d'inici no enter %g serà truncat" #: builtin.c:1353 #, fuzzy, c-format msgid "substr: length %g is not >= 1" msgstr "substr: la longitud %g és <= 0" #: builtin.c:1355 #, fuzzy, c-format msgid "substr: length %g is not >= 0" msgstr "substr: la longitud %g és <= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: la longitud sobre un nombre no enter %g serà truncada" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: la cadena font és de longitud zero" #: builtin.c:1395 #, fuzzy, c-format msgid "substr: start index %g is past end of string" msgstr "substr: l'índex d'inici %d sobrepassa l'acabament de la cadena" #: builtin.c:1403 #, fuzzy, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: la longitud %d a l'índex d'inici %d excedeix la longitud del 1er " "argument (%d)" #: builtin.c:1478 #, fuzzy msgid "strftime: received non-string first argument" msgstr "strftime: el primer argument rebut no és una cadena" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: s'ha rebut una cadena de format buida" #: builtin.c:1493 #, fuzzy msgid "strftime: received non-numeric second argument" msgstr "strftime: el segon argument rebut no és numèric" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: s'ha rebut un argument que no és una cadena" #: builtin.c:1601 #, fuzzy msgid "system: received non-string argument" msgstr "system: s'ha rebut un argument que no és una cadena" #: builtin.c:1722 eval.c:2039 #, fuzzy, c-format msgid "reference to uninitialized field `$%d'" msgstr "referència a una variable sense inicialitzar «%s»" #: builtin.c:1827 #, fuzzy msgid "tolower: received non-string argument" msgstr "tolower: s'ha rebut un argument que no és una cadena" #: builtin.c:1857 #, fuzzy msgid "toupper: received non-string argument" msgstr "toupper: s'ha rebut un argument que no és una cadena" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: el primer argument rebut no és numèric" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: el segon argument rebut no és numèric" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: s'ha rebut un argument que no és numèric" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: s'ha rebut un argument que no és numèric" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: s'ha rebut un argument que no és numèric" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: el tercer argument no és una matriu" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: el tercer argument de 0 és tractat com a 1" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: el primer argument rebut no és numèric" #: builtin.c:2717 #, fuzzy msgid "lshift: received non-numeric second argument" msgstr "strftime: el segon argument rebut no és numèric" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): els valors negatius donaran resultats estranys" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): els valors fraccionaris sernn truncats" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): un valor de desplaçament massa gran donarà resultats " "estranys" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: el primer argument rebut no és numèric" #: builtin.c:2755 #, fuzzy msgid "rshift: received non-numeric second argument" msgstr "strftime: el segon argument rebut no és numèric" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): els valors negatius donaran resultats estranys" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): els valors fraccionaris seran truncats" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): un valor de desplaçament massa gran donarà resultats " "estranys" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: el primer argument rebut no és numèric" #: builtin.c:2793 #, fuzzy msgid "and: received non-numeric second argument" msgstr "atan2: el segon argument rebut no és numèric" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): els valors negatius donaran resultats estranys" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): els valors fraccionaris seran truncats" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: el primer argument rebut no és numèric" #: builtin.c:2829 #, fuzzy msgid "or: received non-numeric second argument" msgstr "atan2: el segon argument rebut no és numèric" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): els valors negatius donaran resultats estranys" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): els valors fraccionaris seran truncats" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: el primer argument rebut no és numèric" #: builtin.c:2865 #, fuzzy msgid "xor: received non-numeric second argument" msgstr "atan2: el segon argument rebut no és numèric" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): els valors negatius donaran resultats estranys" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): els valors fraccionaris seran truncats" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: s'ha rebut un argument que no és numèric" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): el valor negatiu donarà resultats estranys" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): el valor fraccionari serà truncat" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: «%s» no és una categoria local vàlida" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "tipo de node %d desconegut" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "desbordament del cau temporal en genflags2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "s'ha intentat usar la matriu «%s» en un context escalar" #: eval.c:733 #, fuzzy, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "bucle for: la matriu «%s» ha canviat de mida de %d a %d durant l'execució " "del bucle" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "«break» a fora d'un bucle no és portable" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "no es permet «break» a fora d'un bucle" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "«continue» fora d'un bucle no és portable" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "no es permet «continue» a fora d'un bucle" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "«next» no es pot cridar des d'una regla BEGIN" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "«next» no es pot cridar des d'una regla FINAL" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "«nextfile» no es pot cridar des d'una regla BEGIN" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "«nextfile» no es pot cridar des d'una regla FINAL" #: eval.c:875 msgid "statement has no effect" msgstr "la sentència no té efecte" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "no es pot usar el nom de la funció «%s» com a variable o matriu" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "referència a un argument sense inicialitzar «%s»" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "referència a una variable sense inicialitzar «%s»" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenació: els efectes colaterals en una expressió han canviat la " "longitud d'una altra!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "assignació usada en un context condicional" #: eval.c:1278 msgid "division by zero attempted" msgstr "s'ha intentat una divisió per zero" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "s'ha intentat una divisió per zero en «%%»" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "tipus il·legal (%s) en tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "s'ha intentat una divisió per zero en «/=»" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "s'ha intentat una divisió per zero en «%%=»" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "s'ha cridat a la funció «%s» amb més arguments dels declarats" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "la funció «%s» no està definida" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Pila de Crides a les Funcions:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- principal --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "s'ha intentat una referència de camp a partir d'un valor no numèric" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "s'ha intentat una referència a partir d'una cadena nul·la" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "s'ha intentat accedir al camp %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "" "no es permet l'assignació per a obtindre un resultat d'una funció interna" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "«IGNORECASE» és una extensió de gawk" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "«BINMODE» és una extensió de gawk" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "«%sFMT» especificació errònia «%s»" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "desactivant «--lint» degut a una assignació a «LINT»" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "«extension» és una extensió gawk" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: no es pot obrir «%s» (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: biblioteca «%s»: no es pot cridar a la funció «%s» (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "" #: ext.c:107 #, fuzzy, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: biblioteca «%s»: no es pot cridar a la funció «%s» (%s)\n" #: ext.c:113 #, fuzzy, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: no es pot obrir «%s» (%s)\n" #: ext.c:117 #, fuzzy, c-format msgid "extension: function `%s' already defined" msgstr "la funció «%s» no està definida" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" #: ext.c:124 #, fuzzy, c-format msgid "extension: function name `%s' previously defined" msgstr "nom de la funció «%s» definida prèviament" #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "es defineix la funció «%s» però no s'ha cridat mai" #: ext.c:204 #, fuzzy, c-format msgid "function `%s': missing argument #%d" msgstr "la funció «%s» no està definida" #: ext.c:214 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "s'ha intentat usar la dada escalar «%s» com a una matriu" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" #: ext.c:243 msgid "Operation Not Supported" msgstr "Operació No Suportada" #: field.c:326 msgid "NF set to negative value" msgstr "NF s'inicialitza sobre un valor negatiu" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: el segon argument no és una matriu" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: la cadena nul·la per al tercer argument és una extensió de gawk" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "«FIELDWIDTHS» és una extensió de gawk" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "la cadena nul·la per a «FS» és una extensió de gawk" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: l'opció «%s» és ambigua\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: l'opció «--%s» no admet cap argument\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: l'opció «%c%s» no admet cap argument\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: l'opció «%s» requereix un argument\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: no es reconeix l'opció «--%s»\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: no es reconeix l'opció «%c%s»\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: opció il·legal -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: opció no vàlida -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: l'opció requereix un argument -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: l'opció «-W %s» és ambigua\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: l'opció «-W %s» no admet cap argument\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "no es pot obrir el fitxer «%s» per a lectura (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "la finalització del descriptor fd %d («%s») ha fallat (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "tipus d'arbre %s no vàlid dintre de redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "l'expressió en la redirecció «%s» solt té un valor numèric" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "l'expressió per a la redirecció «%s» té un valor de cadena nul·la" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "el fitxer «%s» per a la redirecció «%s» pot ser resultat d'una expressió " "lògica" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "mescla innecessària de «>» i «>>» per al fitxer «%.*s»" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "no es pot obrir la canonada «%s» per a l'eixida (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "no es pot obrir la canonada «%s» per a l'entrada (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "" "no es pot obrir un socket bidireccional «%s» per a les entrades/eixides (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "" "no es pot obrir una canonada bidireccional «%s» per a les entrades/eixides (%" "s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "no es pot redirigir des de «%s» (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "no es pot redirigir cap a «%s» (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "s'ha arribat al límit del sistema per a fitxers oberts: es començarà a " "multiplexar els descriptors de fitxer" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "la finalització de «%s» ha fallat (%s)" #: io.c:811 msgid "too many pipes or input files open" msgstr "masses canonades o fitxers d'entrada oberts" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: el segon argument hauria de ser «to» o «from»" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: «%.*s» no és un fitxer obert, canonada o co-procés" #: io.c:852 msgid "close of redirection that was never opened" msgstr "finalització d'una redirecció que no s'ha obert" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: la redirecció «%s» no s'obre amb «|&», s'ignora el segon argument" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "estaus de falla (%d) en la finalització de la canonada «%s» (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "estatus de falla (%d) en la finalització del fitxer «%s» (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "no s'aporta la finalització explícita del socket «%s»" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "no s'aporta la finalització explícita del co-procés «%s»" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "no s'aporta la finalització explícita de la canonada «%s»" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "no s'aporta la finalització explícita del fitxer «%s»" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "error a l'escriure en l'eixida estàndard (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "error a l'escriure en l'eixida d'error estàndard (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "la neteja de la canonada de «%sx» ha fallat (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "la neteja de la canonada per al co-procés de «%sx» ha fallat (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "la neteja del fitxer «%sx» ha fallat (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "el client /inet/raw encara no està a punt, ho sento" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "sols el root pot usar «/inet/raw»." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "el servidor /inet/raw encara no està a punt, ho sento" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "no s'aporta cap protocol (conegut) en el nom del fitxer especial «%s»" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "el nom del fitxer especial «%s» està incomplet" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "port local no vàlid en «%s»" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "s'ha de subministrar un nom de sistema remot a «/inet»" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "s'ha de subministrar un port remot a «/inet»" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "port remot no vàlid en «%s»" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "les comunicacions TCP/IP no estan suportades" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "el fitxer «%s» és un directori" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "useu «PROCINFO[\"%s\"]» en comptes de «%s»" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "useu «PROCINFO[...]» en comptes de «/dev/user»" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "no es pot obrir «%s», mode «%s»" #: io.c:1814 #, fuzzy, c-format msgid "close of master pty failed (%s)" msgstr "ha fallat la finalització de la canonada (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "" "ha fallat la finalització de l'eixida estàndard en els processos fills (%s)" #: io.c:1819 #, fuzzy, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "ha fallat la redirecció cap a l'eixida estàndard dels processos fills (dup: %" "s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "" "ha fallat la finalització de l'entrada estàndard en els processos fills (%s)" #: io.c:1824 #, fuzzy, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "ha fallat la redirecció cap a l'entrada estàndard dels processos fills (dup: " "%s)" #: io.c:1826 io.c:1845 #, fuzzy, c-format msgid "close of slave pty failed (%s)" msgstr "ha fallat la finalització de la canonada (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" "ha fallat la redirecció cap a l'eixida estàndard dels processos fills (dup: %" "s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "ha fallat la redirecció cap a l'entrada estàndard dels processos fills (dup: " "%s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "ha fallat la restauració de l'eixida estàndard en el procés pare\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "ha fallat la restauració de l'entrada estàndard en el procés pare\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "ha fallat la finalització de la canonada (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "«|&» no està suportat" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "no es pot obrir la canonada «%s» (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "no es pot crear el procés fill per a «%s» (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "el fitxer de dades «%s» està buit" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "error en llegir el fitxer d'entrada «%s»: %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "el valor multicaràcter de «RS» és una extensió de gawk" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "l'opción «-m[fr]» és irrellevant en gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "ús de l'opció -m: «-m[fr] nnn»" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: no es reconeix l'opció «-W %s», serà ignorada\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "s'igonarà l'argument buit per a l'opció «--source»" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "la variable d'entorn «POSIXLY_CORRECT» està establerta: usant «--posix»" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "«--posix» solapa a «--traditional»" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "«--posix» i «--traditional» solapen a «--non-decimal-data»" #: main.c:487 #, fuzzy, c-format msgid "running %s setuid root may be a security problem" msgstr "executar %s com a setuid root pot ser un problema de seguretat" #: main.c:528 #, fuzzy, c-format msgid "can't set binary mode on stdin (%s)" msgstr "no es pot establir el mode en l'entrada estàndard (%s)" #: main.c:531 #, fuzzy, c-format msgid "can't set binary mode on stdout (%s)" msgstr "no es pot establir el mode en l'eixida estàndard (%s)" #: main.c:533 #, fuzzy, c-format msgid "can't set binary mode on stderr (%s)" msgstr "no es pot establir el mode en l'eixida d'error estàndard (%s)" #: main.c:572 msgid "no program text at all!" msgstr "no hi ha cap text per al programa!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Ús: %s [opcions d'estil POSIX o GNU] -f fitx_prog [--] fitxer ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Ús: %s [opcions d'estil POSIX o GNU] [--] %cprograma%c fitxer ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "Opcions POSIX:\t\tOpcions llargues GNU:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f fitx_prog\t\t--file=fitx_prog\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs (fs=sep_camp)\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=valor\t\t--assign=var=valor\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] valor\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=fitxer] --dump-variables[=fitxer]\n" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W profile[=fitxer]\t--profile[=fitxer]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=fitxer]\t--profile[=fitxer]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=text_prog\t--source=text_prog\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 #, fuzzy msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "a la secció «Reporting Problems and Bugs» de la versió impresa.\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "Aquest programa és programari lliure; pot redistribuir-se i/o modificar-se\n" "sota els termes de la Llicència Pública General de GNU tal i como està\n" "publicada per la Free Software Foundation; ja siga en la versió 2 de la\n" "Llicència, o (a la vostra elecció) qualsevol versió posterior.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Aquest programa es distribueix amb l'esperança de que serà d'utilitat,\n" "però SENSE CAP GARANTIA; fins i tot sense la garantia implícita de\n" "COMERCIABILITAT o IDONEÏTAT PER A UN PROPÒSIT EN PARTICULAR.\n" "Per a més detalls consulteu la Llicència Pública General de GNU.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Junt amb aquest programa hauríeu d'haber rebut una còpia de la Llicència\n" "Pública General de GNU; si no és així, escriviu a la Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft no permet inicialitzar FS a un tabulador en la versió POSIX de awk" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "" #: main.c:1074 msgid "floating point exception" msgstr "excepció de coma flotant" #: main.c:1081 msgid "fatal error: internal error" msgstr "error fatal: error intern" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "no s'ha pre-obert el descriptor fd per a %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "no es pot pre-obrir /dev/null per al descriptor fd %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "no es poden trobar els grups: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "línia cmd.:" #: msg.c:120 msgid "warning: " msgstr "ADVERTIMENT: " #: msg.c:142 msgid "error: " msgstr "Error: " #: msg.c:178 msgid "fatal: " msgstr "Fatal: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "no es pot convertir la cadena a coma flotant" #: node.c:414 msgid "backslash at end of string" msgstr "barra invertida al final de la cadena" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX no permet seqüències d'escapada «\\x»" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "no hi ha dígits hexadecimals en la seqüència d'escapada «\\x»" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "la seqüència d'escapada «\\%c» és tractada com a una simple «%c»" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s «%s»: no es pot inicialitzar close-on-exec: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "no es pot obrir «%s» per a escriptura: %s" #: profile.c:467 #, fuzzy, c-format msgid "internal error: %s with null vname" msgstr "error intern: Node_var amb vname nul" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# perfil gawk, creat %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# Bloc(s) INICI\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Regla(es)\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# Bloc(s) FINAL\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Funcions, llistades alfabèticament\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "tipus %s inesperat en prec_level" #: regcomp.c:160 msgid "Success" msgstr "Èxit" #: regcomp.c:163 msgid "No match" msgstr "No hi ha concordança" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Expressió regular no vàlida" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Caràcter de comparació no vàlid" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Nom de classe de caràcters no vàlid" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Barra invertida extra al final" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Referència cap enradera no vàlida" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "[ o [^ desemparellats" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "( o \\( desemparellats" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "\\{ desemparellat" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Contingut no vàlid de \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Final de rang no vàlid" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Memòria exhaurida" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Expressió regular precedent no vàlida" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Fí prematura de l'expressió regular" #: regcomp.c:205 msgid "Regular expression too big" msgstr "L'expressió regular és massa gran" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr ") o \\) desemparellats" #: regcomp.c:688 msgid "No previous regular expression" msgstr "No hi ha una expressió regular prèvia" #~ msgid "function %s called\n" #~ msgstr "s'ha cridat a la funció %s\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "el camp %d en FIELDWIDTHS, hauria de ser > 0" #, fuzzy #~ msgid "or used as a variable or an array" #~ msgstr "no es pot usar el nom de la funció «%s» com a variable o matriu" #, fuzzy #~ msgid "substr: length %g is < 0" #~ msgstr "substr: la longitud %g és <= 0" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: ús il·legal de la variable «%s» com a una matriu" #, fuzzy #~ msgid "%s: gvar_ref to %s\n" #~ msgstr "%s: ref_matriu a %s\n" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: el primer argument no és una matriu" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: el segon argument no és una matriu" #, fuzzy #~ msgid "" #~ "attempt to use array parameter `%s' that was passed from global scalar `%" #~ "s'" #~ msgstr "s'ha intentat usar un paràmetre escalar «%s» com a una matriu" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "error intern: Node_var_array amb vname nul" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "Per a informar d'errors, consulteu el node «Bugs» en «gawk.info», que " #~ "està\n" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "sintaxi no vàlida en el nom «%s» per a l'asignació de la variable" #~ msgid "or used in other expression context" #~ msgstr "o s'ha emprat en un altre context de l'expressió" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "«%s» és una funció, l'assignació no és permesa" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "Els blocs INICI han de tindre una part d'acció" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "«nextfile» és usat dintre de l'acció BEGIN o END" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "«getline» no redirigit sense definir dintre de l'acció BEGIN o END" #~ msgid "fptr %x not in tokentab\n" #~ msgstr "fptr %x no està en la taula de referència\n" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "gsub: el tercer argument no és un objecte intercanviable" #~ msgid "Unfinished \\ escape" #~ msgstr "seqüència d'escapada \\ sense finalitzar" #~ msgid "unfinished repeat count" #~ msgstr "repetició del comptador sense finalitzar" #~ msgid "malformed repeat count" #~ msgstr "repetició del comptador malformada" #~ msgid "Unbalanced [" #~ msgstr "[ sense aparellar" #~ msgid "Unbalanced (" #~ msgstr "( sense aparellar" #~ msgid "No regexp syntax bits specified" #~ msgstr "No s'especifiquen els bits de sintaxi de l'expressió regular" #~ msgid "Unbalanced )" #~ msgstr ") sense aparellar" #~ msgid "out of memory" #~ msgstr "memòria esgotada" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "error intern: fitxer «%s», línia %d\n" EOF echo - 'da.po' cat << 'EOF' > 'da.po' # Danish translation of gawk # Copyright (C) 2001 Free Software Foundation, Inc. # Keld Simonsen , 2002. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.31\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2002-11-09 10:09+0100\n" "Last-Translator: Keld Simonsen \n" "Language-Team: Danish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, fuzzy, c-format msgid "attempt to use function `%s' as an array" msgstr "forsøg på at bruge funktionen \"%s\" som vektor" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "forsøg på at bruge skalarparameteren \"%s\" som en vektor" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "forsøg på at bruge skalaren \"%s\" som vektor" #: array.c:156 #, fuzzy, c-format msgid "from %s" msgstr "%s (fra %s)" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "reference til ikke-initieret element \"%s[\"%s\"]\"" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "indeks i vektoren \"%s\" er en tom streng" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: indeks \"%s\" findes ikke i vektoren \"%s\"" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: tom (nil)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: tom (nul)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: tabelstørrelse = %d, vektorstørrelse = %d\n" #: array.c:829 #, fuzzy, c-format msgid "%s: is parameter\n" msgstr "%s: er en parameter\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: vektorreference til %s\n" #: awkgram.y:208 #, fuzzy, c-format msgid "%s blocks must have an action part" msgstr "END-blok skal have en handlingsdel" #: awkgram.y:211 #, fuzzy msgid "each rule must have a pattern or an action part" msgstr "END-blok skal have en handlingsdel" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "\"%s\" er en indbygget funktion, den kan ikke omdefineres" #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "regexp-konstanten \"/%s/\" ser ud som en C-kommentar, men er det ikke" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "regexp-konstanten \"/%s/\" ser ud som en C-kommentar, men er det ikke" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "kommandoen har måske ikke nogen effekt" #: awkgram.y:440 awkgram.y:460 #, fuzzy, c-format msgid "`%s' used in %s action" msgstr "\"next\" brugt i BEGIN- eller END-handling" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "\"nextfile\" er en gawk-udvidelse" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "\"return\" brugt uden for funktion" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "alenestående \"print\" i BEGIN eller END-regel bør muligvis være 'print \"\"'" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "\"delete array\" er en gawk-udvidelse" #: awkgram.y:540 awkgram.y:547 #, fuzzy msgid "`delete(array)' is a non-portable tawk extension" msgstr "\"delete array\" er en gawk-udvidelse" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "flertrins dobbeltrettede datakanaler fungerer ikke" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "regulært udtryk i højreleddet af en tildeling" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "regulært udtryk på venstre side af en \"~\"- eller \"!~\"-operator" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "regulært udtryk i højreleddet af en sammenligning" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "ikke-omdirigeret \"getline\" udefineret inde i END-handling" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "kald af \"length\" uden parenteser er ikke portabelt" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "kald af \"length\" uden parenteser er forældet ifølge POSIX" #: awkgram.y:962 msgid "use of non-array as array" msgstr "" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "ugyldig indeksudtryk" #: awkgram.y:1171 #, fuzzy msgid "unexpected newline or end of string" msgstr "uventet nylinjetegn" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "tom programtekst på kommandolinjen" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "kan ikke åbne kildefilen \"%s\" for læsning (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "kan ikke læse kildefilen \"%s\" (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "kildefilen \"%s\" er tom" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "kildefilen slutter ikke med en ny linje" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "uafsluttet regulært udtryk slutter med \"\\\" i slutningen af filen" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "uafsluttet regulært udtryk" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "uafsluttet regulært udtryk i slutningen af filen" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "Brug af \"\\ #...\" for linjefortsættelse er ikke portabelt" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "sidste tegn på linjen er ikke en omvendt skråstreg" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX tillader ikke operatoren \"**=\"" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "gamle awk understøtter ikke operatoren \"**=\"" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX tillader ikke operatoren \"**\"" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "gamle awk understøtter ikke operatoren \"**\"" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "operatoren \"^=\" understøttes ikke i gamle awk" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "operatoren \"^\" understøttes ikke i gamle awk" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "uafsluttet streng" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "ugyldigt tegn \"%c\" i udtryk" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "\"%s\" er en gawk-udvidelse" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "\"%s\" er en Bell Labs-udvidelse" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX tillader ikke \"%s\"" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "\"%s\" understøttes ikke i gamle awk" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "\"goto\" anses for skadlig!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d er et ugyldigt antal argumenter for %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: tredje argument er en gawk-udvidelse" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: bogstavelig streng som sidste argument til erstatning har ingen effekt" #: awkgram.y:2339 #, fuzzy, c-format msgid "%s third parameter is not a changeable object" msgstr "sub: tredje argument er ikke et ændringsbart objekt" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: andet argument er en gawk-udvidelse" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "brug af dcgettext(_\"...\") er fejlagtigt: fjern det indledende " "understregningstegn" #: awkgram.y:2394 #, fuzzy msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "brug af dcgettext(_\"...\") er fejlagtigt: fjern det indledende " "understregningstegn" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "funktionen \"%s\": parameter %d, \"%s\", er samme som parameter %d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funktionen \"%s\": parameteren \"%s\" overskygger en global variabel" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "kunne ikke åbne \"%s\" for skrivning (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "sender profilen til standard fejl" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: mislykkedes at lukke (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() kaldt to gange!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funktionen \"%s\": kan ikke bruge funktionsnavn som parameternavn" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "funktionsnavnet \"%s\" er allerede defineret" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "funktionen \"%s\" kaldt, men aldrig defineret" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "funktionen \"%s\" defineret, men aldrig kaldt" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "konstant regulært udtryk for parameter %d giver en boolesk værdi" #: awkgram.y:3105 #, fuzzy, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "funktionen \"%s\" kaldt med blanktegn mellem navnet og \"(\",\n" "%s" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s til \"%s\" mislykkedes (%s)" #: builtin.c:146 msgid "standard output" msgstr "standard ud" #: builtin.c:147 msgid "reason unknown" msgstr "ukendt årsag" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: fik et ikke-numerisk argument" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argumentet %g er uden for tilladt område" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: kan ikke spole: datakanalen \"%s\" åbnet for læsning, ikke skrivning" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "fflush: kan ikke spole: filen \"%s\" åbnet for læsning, ikke skrivning" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: \"%s\" er ikke en åben fil, datakanal eller ko proces" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "indeks: første argument er ikke en streng" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "indeks: andet argument er ikke en streng" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: fik et ikke-numerisk argument" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "\"delete array\" er en gawk-udvidelse" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: fik et argument som ikke er en streng" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: fik et ikke-numerisk argument" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: fik et negativt argument %g" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "\"$\" tillades ikke i awkformat" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "argumentantallet med \"$\" skal være > 0" #: builtin.c:786 #, fuzzy, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "argumentantallet %d er større end antal givne argumenter" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "\"$\" tillades ikke efter et punktum i formatet" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "intet \"$\" angivet for positionsangivet feltbredde eller præcision" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "\"l\" er meningsløst i awk-formater, ignoreret" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "\"l\" tillades ikke i POSIX awk-formater" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "\"L\" er meningsløst i awk-formater, ignoreret" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "\"L\" tillades ikke i POSIX awk-formater" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "\"h\" er meningsløst i awk-formater, ignoreret" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "\"h\" tillades ikke i POSIX awk-formater" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "for få argumenter til formatstrengen" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ sluttede her" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: formatspecifiereren har intet kommandobogstav" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "for mange argumenter til formatstrengen" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: ingen argumenter" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: fik ikke-numerisk argument" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: kaldt med negativt argument %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: startindeks %g er ugyldigt, bruger 1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: startindeks %g som ikke er et heltal bliver trunkeret" #: builtin.c:1353 #, fuzzy, c-format msgid "substr: length %g is not >= 1" msgstr "substr: længden %g er <= 0" #: builtin.c:1355 #, fuzzy, c-format msgid "substr: length %g is not >= 0" msgstr "substr: længden %g er <= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: længden %g som ikke er et heltal bliver trunkeret" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: kildestrengen er tom" #: builtin.c:1395 #, fuzzy, c-format msgid "substr: start index %g is past end of string" msgstr "substr: startindeks %d er forbi slutningen på strengen" #: builtin.c:1403 #, fuzzy, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: længden %d ved startindeks %d overskrider længden af første argument " "(%d)" #: builtin.c:1478 #, fuzzy msgid "strftime: received non-string first argument" msgstr "strftime: fik et første argument som ikke er en streng" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: fik en tom formatstreng" #: builtin.c:1493 #, fuzzy msgid "strftime: received non-numeric second argument" msgstr "strftime: fik et ikke-numerisk andet argument" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: fik et argument som ikke er en streng" #: builtin.c:1601 #, fuzzy msgid "system: received non-string argument" msgstr "system: fik et argument som ikke er en streng" #: builtin.c:1722 eval.c:2039 #, fuzzy, c-format msgid "reference to uninitialized field `$%d'" msgstr "reference til ikke-initieret variabel \"%s\"" #: builtin.c:1827 #, fuzzy msgid "tolower: received non-string argument" msgstr "tolower: fik et argument som ikke er en streng" #: builtin.c:1857 #, fuzzy msgid "toupper: received non-string argument" msgstr "toupper: fik et argument som ikke er en streng" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: fik et ikke-numerisk første argument" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: fik et ikke-numerisk andet argument" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: fik et ikke-numerisk argument" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: fik et ikke-numerisk argument" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: fik et ikke-numerisk argument" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: tredje argument er ikke en vektor" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: Nullet i tredje argument behandlet som et ét-tal" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: fik et ikke-numerisk første argument" #: builtin.c:2717 #, fuzzy msgid "lshift: received non-numeric second argument" msgstr "strftime: fik et ikke-numerisk andet argument" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): negative værdier vil give mærkelige resultater" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): flydendetalsværdier vil blive trunkeret" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): for store skifteværdier vil give mærkelige resultater" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: fik et ikke-numerisk første argument" #: builtin.c:2755 #, fuzzy msgid "rshift: received non-numeric second argument" msgstr "strftime: fik et ikke-numerisk andet argument" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): negative værdier vil give mærkelige resultater" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): flydendetalsværdier vil blive trunkeret" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): for store skifteværdier vil give mærkelige resultater" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: fik et ikke-numerisk første argument" #: builtin.c:2793 #, fuzzy msgid "and: received non-numeric second argument" msgstr "atan2: fik et ikke-numerisk andet argument" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): negative værdier vil give mærkelige resultater" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): flydendetalsværdier vil blive trunkeret" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: fik et ikke-numerisk første argument" #: builtin.c:2829 #, fuzzy msgid "or: received non-numeric second argument" msgstr "atan2: fik et ikke-numerisk andet argument" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): negative værdier vil give mærkelige resultater" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): flydendetalsværdier vil blive trunkeret" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: fik et ikke-numerisk første argument" #: builtin.c:2865 #, fuzzy msgid "xor: received non-numeric second argument" msgstr "atan2: fik et ikke-numerisk andet argument" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): negative værdier vil give mærkelige resultater" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): flydendetalsværdier vil blive trunkeret" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: fik et ikke-numerisk argument" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): negative værdier vil give mærkelige resultater" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): flydendetalsværdier vil blive trunkeret" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: \"%s\" er ikke en gyldig lokalekategori" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "ukendt nodetype %d" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "bufferoverløb i genflags2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "forsøg på at bruge vektoren \"%s\" i skalarsammenhæng" #: eval.c:733 #, fuzzy, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "for-løkke: vektoren \"%s\" ændrede størrelse fra %d til %d under løkke-" "udførelsen" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "\"break\" uden for en løkke er ikke portabelt" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "\"break\" uden for en løkke er ikke tilladt" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "\"continue\" uden for en løkke er ikke portabelt" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "\"continue\" uden for en løkke er ikke tilladt" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "\"next\" kan ikke kaldes fra en BEGIN-regel" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "\"next\" kan ikke kaldes fra en END-regel" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "\"nextfile\" kan ikke kaldes fra en BEGIN-regel" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "\"nextfile\" kan ikke kaldes fra en END-regel" #: eval.c:875 msgid "statement has no effect" msgstr "kommandoen har ingen effekt" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "kan ikke bruge funktionsnavnet \"%s\" som variabel eller vektor" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "reference til ikke-initieret argument \"%s\"" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "reference til ikke-initieret variabel \"%s\"" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenation: sideeffekter i et udtryk har ændret længden af et andet!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "tildeling brugt i sammenligningsammenhæng" #: eval.c:1278 msgid "division by zero attempted" msgstr "forsøgte at dividere med nul" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "forsøgte at dividere med nul i \"%%\"" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "ikke tilladt type (%s) i tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "forsøgte at dividere med nul i \"/=\"" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "forsøgte at dividere med nul i \"%%=\"" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "funktionen \"%s\" kaldt med flere argumenter end deklareret" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "funktionen \"%s\" er ikke defineret" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Funktionskaldsstak:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- main --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "forsøg på at feltreferere fra ikke-numerisk værdi" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "forsøg på at referere fra tom streng" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "forsøg på at få adgang til felt nummer %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "tildeling er ikke tilladt til resultatet fra en indbygget funktion" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "\"IGNORECASE\" er en gawk-udvidelse" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "\"BINMODE\" er en gawk-udvidelse" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "fejlagtig \"%sFMT\"-specifikation \"%s\"" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "deaktiverer \"--lint\" på grund af en tildeling til \"LINT\"" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "\"extension\" er en gawk-udvidelse" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: kan ikke åbne \"%s\" (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: bibliotek \"%s\": kan ikke kalde funktionen \"%s\" (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "" #: ext.c:107 #, fuzzy, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: bibliotek \"%s\": kan ikke kalde funktionen \"%s\" (%s)\n" #: ext.c:113 #, fuzzy, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: kan ikke åbne \"%s\" (%s)\n" #: ext.c:117 #, fuzzy, c-format msgid "extension: function `%s' already defined" msgstr "funktionen \"%s\" er ikke defineret" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" #: ext.c:124 #, fuzzy, c-format msgid "extension: function name `%s' previously defined" msgstr "funktionsnavnet \"%s\" er allerede defineret" #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funktionen \"%s\" defineret, men aldrig kaldt" #: ext.c:204 #, fuzzy, c-format msgid "function `%s': missing argument #%d" msgstr "funktionen \"%s\" er ikke defineret" #: ext.c:214 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "forsøg på at bruge skalaren \"%s\" som vektor" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" #: ext.c:243 msgid "Operation Not Supported" msgstr "Operationen understøttes ikke" #: field.c:326 msgid "NF set to negative value" msgstr "NF sat til en negativ værdi" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: andet argument er ikke en vektor" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: tom streng som tredje argument er en gawk-udvidelse" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "\"FIELDWIDTHS\" er en gawk-udvidelse" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "tom streng som \"FS\" er en gawk-udvidelse" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: flaget \"%s\" er flertydigt\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: flaget \"--%s\" tillader ikke noget argument\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: flaget \"%c%s\" tillader ikke noget argument\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: flaget \"%s\" kræver et argument\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: ukendt flag \"--%s\"\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: ukendt flag \"%c%s\"\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: ikke tilladt flag -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ugyldig flag -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: flaget kræver et argument -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: flaget \"-W %s\" er flertydigt\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: flaget \"-W %s\" tillader ikke noget argument\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "kan ikke åbne filen \"%s\" for læsning (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "lukning af fd %d (\"%s\") mislykkedes (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "ugyldig trætype %s i redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "udtrykket i \"%s\"-omdirigering har kun numerisk værdi" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "udtrykket for \"%s\"-omdirigering har en tom streng som værdi" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "filnavnet \"%s\" for \"%s\"-omdirigering kan være resultatet af et logisk " "udtryk" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "unødig blanding af \">\" og \">>\" for filen \"%.*s\"" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "kan ikke åbne røret \"%s\" for udskrivning (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "kan ikke åbne røret \"%s\" for indtastning (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "kan ikke åbne tovejssoklen \"%s\" for ind-/uddata (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "kan ikke åbne tovejsrøret \"%s\" for ind-/uddata (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "kan ikke omdirigere fra \"%s\" (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "kan ikke omdirigere til \"%s\" (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "nåede systembegrænsningen for åbne filer: begynder at multiplekse " "fildeskriptorer" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "lukning af \"%s\" mislykkedes (%s)" #: io.c:811 msgid "too many pipes or input files open" msgstr "for mange rør eller inddatafiler åbne" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: andet argument skal være \"to\" eller \"from\"" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: \"%.*s\" er ikke en åben fil, datakanal eller ko-proces" #: io.c:852 msgid "close of redirection that was never opened" msgstr "lukning af omdirigering som aldrig åbnedes" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: omdirigeringen \"%s\" åbnedes ikke med \"|&\", andet argument " "ignoreret" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "fejlstatus (%d) fra rørlukning af \"%s\" (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "fejlstatus (%d) fra fillukning af \"%s\" (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "ingen eksplicit lukning af soklen \"%s\" angivet" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "ingen eksplicit lukning af ko-processen \"%s\" angivet" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "ingen eksplicit lukning af røret \"%s\" angivet" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "ingen eksplicit lukning af filen \"%s\" angivet" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "fejl ved skrivning til standard ud (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "fejl ved skrivning til standard fejl (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "rørspuling af \"%s\" mislykkedes (%s)" #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "ko-processpuling af røret til \"%s\" mislykkedes (%s)" #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "filspuling af \"%s\" mislykkedes (%s)" #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "/inet/raw-klient er desværre ikke klar endnu" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "kun root kan bruge \"/inet/raw\"." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "/inet/raw-server er desværre ikke klar endnu" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "ingen (kendt) protokol opgivet i special-filnavn \"%s\"" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "special-filnavn \"%s\" er ufuldstændigt" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "lokal port ugyldig i \"%s\"" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "skal angive et fjernmaskinenavn til \"/inet\"" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "skal angive en fjernport til \"/inet\"" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "fjernporten ugyldig i \"%s\"" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "TCP/IP-kommunikation understøttes ikke" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "filen \"%s\" er et katalog" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "brug \"PROCINFO[\"%s\"]\" i stedet for \"%s\"" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "brug \"PROCINFO[...]\" i stedet for \"dev/user\"" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "kunne ikke åbne \"%s\", tilstand \"%s\"" #: io.c:1814 #, fuzzy, c-format msgid "close of master pty failed (%s)" msgstr "lukning af røret mislykkedes (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "lukning af standard ud i barnet mislykkedes (%s)" #: io.c:1819 #, fuzzy, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "flytning af rør til standard ud i barnet mislykkedes (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "lukning af standard ind i barnet mislykkedes (%s)" #: io.c:1824 #, fuzzy, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "flytning af rør til standard ind i barnet mislykkedes (dup: %s)" #: io.c:1826 io.c:1845 #, fuzzy, c-format msgid "close of slave pty failed (%s)" msgstr "lukning af røret mislykkedes (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "flytning af rør til standard ud i barnet mislykkedes (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "flytning af rør til standard ind i barnet mislykkedes (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "genskabelse af standard ud i forælderprocessen mislykkedes\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "genskabelse af standard ind i forælderprocessen mislykkedes\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "lukning af røret mislykkedes (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "\"|&\" understøttes ikke" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "kan ikke åbne røret \"%s\" (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "kan ikke oprette barneproces for \"%s\" (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "datafilen \"%s\" er tom" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "fejl ved læsning af inddatafilen \"%s\": %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "flertegnsværdien af \"RS\" er en gawk-udvidelse" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "\"-m[fr]\"-flaget er irrelevant i gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m-flagets brug: \"-m[fr] nnn\"" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: flaget \"-W %s\" ukendt, ignoreret\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "tomt argument til \"--source\" ignoreret" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "miljøvariablen \"POSIXLY_CORRECT\" sat: aktiverer \"--posix\"" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "\"--posix\" tilsidesætter \"--traditional\"" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "\"--posix\"/\"--traditional\" tilsidesætter \"--non-decimal-data\"" #: main.c:487 #, fuzzy, c-format msgid "running %s setuid root may be a security problem" msgstr "at køre %s setuid root kan være et sikkerhedsproblem" #: main.c:528 #, fuzzy, c-format msgid "can't set binary mode on stdin (%s)" msgstr "kan ikke sætte tilstand på standard ind (%s)" #: main.c:531 #, fuzzy, c-format msgid "can't set binary mode on stdout (%s)" msgstr "kan ikke sætte tilstand på standard ud (%s)" #: main.c:533 #, fuzzy, c-format msgid "can't set binary mode on stderr (%s)" msgstr "kan ikke sætte tilstand på standard fejl (%s)" #: main.c:572 msgid "no program text at all!" msgstr "ingen programtekst overhovedet!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Brug: %s [POSIX- eller GNU-stilflag] -f progfil [--] fil ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Brug: %s [POSIX- eller GNU-stilflag] %cprogram%c fil ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "POSIX-flag:\t\tGNU lange flag:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f progfil\t\t--file=progfil\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=værdi\t\t--assign=var=værdi\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] værdi\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=fil]\t--dump-variables[=fil]\n" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W profile[=fil]\t--profile[=fil]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=fil]\t--profile[=fil]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=programtekst\t--source=programtekst\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 #, fuzzy msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "sektionen \"Reporting Problems and Bugs\" i den trykte version.\n" "Rapportér synpunkter på oversættelsen til .\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright © 1989, 1991-%d Free Software Foundation.\n" "\n" "Dette program er frit programmel. Du kan distribuere det og/eller\n" "ændre det under betingelserne i GNU General Public License, offentliggjort\n" "af Free Software Foundation, enten version 2 eller (hvis du vil)\n" "enhver senere version.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Dette program distribueres i håb om at det vil være nyttigt,\n" "men UDEN NOGEN SOM HELST GARANTI, også uden underforstået garanti\n" "om SALGBARHED eller EGNETHED FOR NOGET SPECIELT FORMÅL. Se GNU\n" "General Public License for yderligere information.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Du bør have fået en kopi af GNU General Public License sammen\n" "med dette program. Hvis ikke, så skriv til Free Software Foundation,\n" "Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft sætter ikke FS til tab i POSIX-awk" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "" #: main.c:1074 msgid "floating point exception" msgstr "flydendetalsundtagelse" #: main.c:1081 msgid "fatal error: internal error" msgstr "fatal fejl: intern fejl" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "ingen for-åbnet fd %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "kunne ikke for-åbne /dev/null for fd %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "kunne ikke finde grupper: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "kommandolinje:" #: msg.c:120 msgid "warning: " msgstr "advarsel: " #: msg.c:142 msgid "error: " msgstr "fejl: " #: msg.c:178 msgid "fatal: " msgstr "fatal: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "kan ikke konvertere en streng til flydende tal" #: node.c:414 msgid "backslash at end of string" msgstr "omvendt skråstreg i slutningen af strengen" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX tillader ikke \"\\x\"-kontrolsekvenser" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "ingen heksadecimale cifre i \"\\x\"-kontrolsekvenser" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "kontrolsekvensen \"\\%c\" behandlet som kun \"%c\"" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s \"%s\": kunne ikke sætte luk-ved-exec (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "kunne ikke åbne \"%s\" for skrivning: %s" #: profile.c:467 #, fuzzy, c-format msgid "internal error: %s with null vname" msgstr "intern fejl: Node_var med null vname" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawkprofil, oprettet %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# BEGIN-blok\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Regel/regler\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# END-blok\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Funktioner, listede alfabetisk\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "uventet type %s i prec_level" #: regcomp.c:160 msgid "Success" msgstr "Lykkedes" #: regcomp.c:163 msgid "No match" msgstr "Mislykkedes" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Ugyldigt regulært udtryk" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Ugyldigt kollationeringstegn" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Ugyldigt tegnklassenavn" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Efterfølgende omvendt skråstreg" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Ugyldig bagudreference" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "Ubalanceret [ eller [^" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "Ubalanceret ( eller \\(" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "Ubalanceret \\{" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Ugyldigt indhold i \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Ugyldig intervalslutning" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Hukommelsen opbrugt" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Ugyldigt foregående regulært udtryk" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "For tidligt slut på regulært udtryk" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Regulært udtryk for stort" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr "Ubalanceret ) eller \\)" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Intet foregående regulært udtryk" #~ msgid "function %s called\n" #~ msgstr "funktionen %s kaldt\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "felt %d i FIELDWIDTHS skal være > 0" #, fuzzy #~ msgid "or used as a variable or an array" #~ msgstr "kan ikke bruge funktionsnavnet \"%s\" som variabel eller vektor" #, fuzzy #~ msgid "substr: length %g is < 0" #~ msgstr "substr: længden %g er <= 0" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: ikke tilladt brug af variablen \"%s\" som vektor" #, fuzzy #~ msgid "%s: gvar_ref to %s\n" #~ msgstr "%s: vektorreference til %s\n" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: første argument er ikke en vektor" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: andet argument er ikke en vektor" #, fuzzy #~ msgid "" #~ "attempt to use array parameter `%s' that was passed from global scalar `%" #~ "s'" #~ msgstr "forsøg på at bruge skalarparameteren \"%s\" som en vektor" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "intern fejl: Node_var_vektor med null vname" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "BEGIN-blok skal have en handlingsdel" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "\"nextfile\" brugt i BEGIN- eller END-handling" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "gsub: tredje argument er ikke et ændringsbart objekt" #~ msgid "or used in other expression context" #~ msgstr "eller brugt i andre udtrykssammenhænge" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "\"%s\" er en funktion, tildeling er ikke tilladt" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "intern fejl: filen \"%s\", linje %d\n" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "For at rapportere fejl, se knuden \"Bugs\" i \"gawk.info\" som findes i\n" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "ugyldig syntaks i navnet \"%s\" for variabeltildeling" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "ikke-omdirigeret \"getline\" udefineret inde i BEGIN- eller END-handling" #~ msgid "fptr %x not in tokentab\n" #~ msgstr "fptr %x er ikke i tokentab\n" #~ msgid "Unfinished \\ escape" #~ msgstr "Uafsluttet \\-kontrolsekvens" #~ msgid "unfinished repeat count" #~ msgstr "uafsluttet gentagelsesantal" #~ msgid "malformed repeat count" #~ msgstr "fejlagtigt udformet gentagelsesantal" #~ msgid "Unbalanced [" #~ msgstr "Ubalanceret [" #~ msgid "Unbalanced (" #~ msgstr "Ubalanceret (" #~ msgid "No regexp syntax bits specified" #~ msgstr "Ingen syntaksbit for regulære udtryk angivet" #~ msgid "Unbalanced )" #~ msgstr "Ubalanceret )" #~ msgid "out of memory" #~ msgstr "slut på hukommelsen" EOF echo - 'de.po' cat << 'EOF' > 'de.po' # GNU awk message strings # Copyright (C) 2000 Free Software Foundation, Inc. # Unknown Author, , 2000 # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.0\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2002-04-03 18:55+02:00\n" "Last-Translator: Christian Kirsch \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, fuzzy, c-format msgid "attempt to use function `%s' as an array" msgstr "Versuch, die Funktion '%s' als Array zu verwenden." #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "Versuch den skalaren Parameter '%s' als Array zu benutzen." #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "Versuch, Skalar '%s' als Array zu verwenden." #: array.c:156 #, fuzzy, c-format msgid "from %s" msgstr "%s (von %s)" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "Bezug auf nicht-initialisiertes Element »%s[\"%s\"]«" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "Index in Array »%s« ist Nullstring." #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: Index »%s« nicht in Feld »%s« vorhanden." #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: leer (Null)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: leer (0)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: Table_size = %d, array_size = %d\n" #: array.c:829 #, fuzzy, c-format msgid "%s: is parameter\n" msgstr "%s: ist ein Parameter\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: Array-Referenz auf %s\n" #: awkgram.y:208 #, fuzzy, c-format msgid "%s blocks must have an action part" msgstr "END-Blöcke müssen einen Aktionsteil haben." #: awkgram.y:211 #, fuzzy msgid "each rule must have a pattern or an action part" msgstr "END-Blöcke müssen einen Aktionsteil haben." #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "'%s' ist eine eingebaute Funktion und kann nicht umdefiniert werden." #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "Konstanter Regulärer Ausdruck '/%s' sieht wie ein C-Kommentar aus, ist aber " "keiner." #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "Konstanter Regulärer Ausdruck '/%s' sieht wie ein C-Kommentar aus, ist aber " "keiner." #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "Statement möglicherweise ohne Effekt." #: awkgram.y:440 awkgram.y:460 #, fuzzy, c-format msgid "`%s' used in %s action" msgstr "'next' in BEGIN- oder END-Aktion benutzt." #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "'nextfile' ist eine gawk-Erweiterung." #: awkgram.y:470 msgid "`return' used outside function context" msgstr "'return' außerhalb einer Funktion benutzt." #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "Einfaches 'print' in BEGIN- oder END-Regel soll vermutlich 'print \"\"' sein." #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "'delete array' ist eine gawk-Erweiterung." #: awkgram.y:540 awkgram.y:547 #, fuzzy msgid "`delete(array)' is a non-portable tawk extension" msgstr "'delete array' ist eine gawk-Erweiterung." #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "'multistage' Zweiwege-Pipes funktionieren nicht." #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "Regulärer Ausdruck auf der rechten Seite einer Zuweisung." #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "Regulärer Ausdruck links vom '~'- oder '!~'-Operator." #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "Regulärer Ausdruck rechts von einem Vergleich." #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "" "Nicht-umgelenktes 'getline' ist innerhalb der END-Aktion nicht definiert." #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "Aufruf von 'length' ohne Klammern ist nicht portabel." #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "Aufruf von 'length' ohne Klammern ist in POSIX-Mode veraltet." #: awkgram.y:962 msgid "use of non-array as array" msgstr "" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "Ungültiger Index-Ausdruck." #: awkgram.y:1171 #, fuzzy msgid "unexpected newline or end of string" msgstr "Unerwartetes Zeilenende" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "Kein Programmtext auf der Kommandozeile." #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "Kann Quelldatei '%s' nicht zum Lesen öffnen (%s)." #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "Kann Quelldatei '%s' nicht lesen (%s)." #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "Quelldatei '%s' ist leer." #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "Quelldatei hört nicht mit Zeilenende auf." #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" "Nicht-beendeter Regulärer Ausdruck (hört mit '\\' auf) am Ende der Datei." #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "Nicht-beendeter Regulärer Ausdruck" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "Nicht-beendeter Regulärer Ausdruck am Dateiende." #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "" "Die Verwendung von '\\#...' zur Fortsetzung von Zeilen ist nicht portabel." #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "Backslash ist nicht letztes Zeichen auf der Zeile." #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX erlaubt den Operator '**=' nicht." #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "Das alte awk erlaubt den Operator '**=' nicht." #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX erlaubt den Operator '**' nicht." #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "Das alte awk erlaubt den Operator '**' nicht." #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "Das alte awk kennt den Operator '^=' nicht." #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "Das alte awk kennt den Operator '^' nicht." #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "Nicht-beendeter String" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "Ungültiges Zeichen '%c' in einem Ausdruck." #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "'%s' ist eine gawk-Erweiterung" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "'%s' ist eine Erweiterung der Bell Labs." #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX gestattet '%s' nicht." #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "Das alte awk gestattet '%s' nicht." #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "'goto' gilt als schlechter Stil!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "Unzulässige Argumentzahl %d für %s." #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: Das dritte Argument ist eine gawk-Erweiterung." #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: Ein String als letztes Argument von substitute hat keinen Effekt." #: awkgram.y:2339 #, fuzzy, c-format msgid "%s third parameter is not a changeable object" msgstr "Der dritte Parameter von sub ist ein unveränderliches Objekt." #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: Das zweite Argument ist eine gawk-Erweiterung." #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "Fehlerhafte Verwendung von dcgettext(_\"...\"): \n" "Entfernen Sie den führenden Unterstrich." #: awkgram.y:2394 #, fuzzy msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "Fehlerhafte Verwendung von dcgettext(_\"...\"): \n" "Entfernen Sie den führenden Unterstrich." #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "Funktion '%s': Parameter #%d, '%s' wiederholt Parameter #%d." #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "Funktion '%s': Parameter '%s' verdeckt eine globale Variable." #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "Kann '%s' nicht zum Schreiben öffnen (%s)." #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "Schicke Profile auf Stadard-Fehlerausgabe." #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: close gescheitert (%s)." #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() zweimal aufgerufen!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "Funktion '%s': Kann Funktionsnamen nicht als Parameternamen benutzen." #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "Funktion '%s' ist bereits definiert." #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "Aufgerufene funktion '%s' ist nirgends definiert." #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "Funktion '%s' wird nirgends aufgerufen." #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "Konstanter Regulärer Ausdruck für Parameter #%d ergibt einen logischen Wert." #: awkgram.y:3105 #, fuzzy, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "Funktion '%s' mit Leerzeichen zwischen Name und '(' aufgerufen, \n" "%s" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s to \"%s\" fehlgeschlagen (%s)" #: builtin.c:146 msgid "standard output" msgstr "Standardausgabe" #: builtin.c:147 msgid "reason unknown" msgstr "Unbekannte Ursache" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: Argument ist keine Zahl." #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: Argument %g außerhalb des gültigen Zahlenbereichs." #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: Leeren der Puffer nicht möglich, Pipe »%s« ist nur zum Lesen " "geöffnet." #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: Leeren der Puffer nicht möglich, Datei »%s« ist nur zum Lesen " "geöffnet." #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: »%s« ist keine geöffnete Datei, Pipe oder Prozess." #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: Erstes Argument ist kein String." #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: Zweites Argument ist kein string." #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "Argument ist keine Zahl." #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "'delete array' ist eine gawk-Erweiterung." #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: Argument ist kein String." #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: Argument ist keine Zahl." #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: Negatives Argument %g." #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "»$« ist in awk-Formaten nicht zulässig." #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "Argumentnummer bei »$« muss > 0 sein." #: builtin.c:786 #, fuzzy, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "Argumentnummer %d ist größer als Anzahl angegebener Argumente." #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "»$« nach Punkt in Formatangabe nicht zulässig." #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "»$« fehlt in positionsabhängiger Feldbreite oder Genauigkeit." # #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "»l« ist in awk-Formaten bedeutungslos, ignoriert." #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "»l« in POSIX-awk-Formaten nicht zulässig." #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "»L« ist in awk-Formaten bedeutungslos, ignoriert." #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "»L« in POSIX-awk-Formaten nicht zulässig." #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "»h« ist in awk-Formaten bedeutungslos, ignoriert." #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "»h« in POSIX-awk-Formaten nicht zulässig.<" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "Nicht genügend Argumente für Formatangabe." #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ ran out for this one" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: Format-Specifier hat keinen Controlcode." #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "Zu viele Argumente für Formatstring." #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: Keine Argumente" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: Argument ist keine Zahl." #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: Argument %g ist negativ." #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: Start-Index %g ist ungültig, 1 wird benutzt." #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: Start-Wert %g wird abgeschnitten." #: builtin.c:1353 #, fuzzy, c-format msgid "substr: length %g is not >= 1" msgstr "substr: Länge %g ist kleiner oder gleich 0." #: builtin.c:1355 #, fuzzy, c-format msgid "substr: length %g is not >= 0" msgstr "substr: Länge %g ist kleiner oder gleich 0." #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: Länge %g wird abgeschnitten." #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: String ist leer." #: builtin.c:1395 #, fuzzy, c-format msgid "substr: start index %g is past end of string" msgstr "substr: Start-Wert %d liegt hinter dem Ende des Strings." #: builtin.c:1403 #, fuzzy, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: Länge %d am Start-Wert %d überschreitet Länge des ersten Arguments (%" "d)." #: builtin.c:1478 #, fuzzy msgid "strftime: received non-string first argument" msgstr "strftime: Erstes Argument ist kein String." #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: Format-String ist leer." #: builtin.c:1493 #, fuzzy msgid "strftime: received non-numeric second argument" msgstr "strftime. Zweites Argument ist keine Zahl." #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: Argument ist kein String." #: builtin.c:1601 #, fuzzy msgid "system: received non-string argument" msgstr "system: Argument ist kein String." #: builtin.c:1722 eval.c:2039 #, fuzzy, c-format msgid "reference to uninitialized field `$%d'" msgstr "Referenz auf die nicht-initialisierte Variable '%s'." #: builtin.c:1827 #, fuzzy msgid "tolower: received non-string argument" msgstr "tolower: Argument ist kein String." #: builtin.c:1857 #, fuzzy msgid "toupper: received non-string argument" msgstr "toupper: Argument ist kein String." #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: Erstes Argument ist keine Zahl." #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: Zweites Argument ist keine Zahl." #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: Argument istk eine Zahl." #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: Argument ist keine Zahl." #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: Argument ist keine Zahl." #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: Drittes Argument ist kein Array." #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: Drittes Argument 0 als 1 interpretiert" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: Erstes Argument ist keine Zahl." #: builtin.c:2717 #, fuzzy msgid "lshift: received non-numeric second argument" msgstr "strftime. Zweites Argument ist keine Zahl." #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "" "lshift(%lf, %lf): Negative Werte werden merkwürdige Ergebnisse liefern." #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): Dezimalteil wird abgeschnitten." #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): Zu große Shift-Werte werden merkwürdige Ergebnisse liefern." #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: Erstes Argument ist keine Zahl." #: builtin.c:2755 #, fuzzy msgid "rshift: received non-numeric second argument" msgstr "strftime. Zweites Argument ist keine Zahl." #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "" "rshift (%lf, %lf): Negative Werte werden merkwürdige Ergebnisse liefern." #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): Dezimalteil wird abgeschnitten." #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): Zu große Shift-Werte werden merkwürdige Ergebnisse liefern." #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: Erstes Argument ist keine Zahl." #: builtin.c:2793 #, fuzzy msgid "and: received non-numeric second argument" msgstr "atan2: Zweites Argument ist keine Zahl." #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): Negative Werte werden merkwürdige Ergebnisse liefern." #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): Dezimalteil wird abgeschnitten." #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: Erstes Argument ist keine Zahl." #: builtin.c:2829 #, fuzzy msgid "or: received non-numeric second argument" msgstr "atan2: Zweites Argument ist keine Zahl." #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): Negative Werte werden merkwürdige Ergebnisse liefern." #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): Dezimalteil wird abgeschnitten." #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: Erstes Argument ist keine Zahl." #: builtin.c:2865 #, fuzzy msgid "xor: received non-numeric second argument" msgstr "atan2: Zweites Argument ist keine Zahl." #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf: Negative Werte werden merkwürdige Ergebnisse liefern." #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): Dezimalteil wird abgeschnitten." #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: Erstes Argument ist keine Zahl." #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): Negativer Wert wird merkwürdige Ergebnisse liefern." #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): Dezimalteil wird abgeschnitten." #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: '%s' ist keine gültige Locale-Kategorie." #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "Unbekannter Knotentyp %d" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "Pufferüberlauf in genflags2str." #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "Versuch, das Array '%s' in Skalarkontext zu verwenden." #: eval.c:733 #, fuzzy, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "for-Schleife: Array '%s' ändert Größse von %d zu %d innerhalb der Schleife." #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "'break' außerhalb einer Schleife ist nicht portabel." #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "'break' außerhalb einer Schleife ist nicht zulässig." #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "'continue' außerhalb einer Schleife ist nicht portabel." #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "'continue' außerhalb einer Schleife ist nicht zulässig." #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "'next' kann nicht in einer BEGIN-Regel benutzt werden." #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "'next' kann nicht in einer END-Regel benutzt werden." #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "'nextfile' kann nicht in einer BEGIN-Regel benutzt werden." #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "'nextfile' kann nicht in einer END-Regel benutzt werden." #: eval.c:875 msgid "statement has no effect" msgstr "Anweisung hat keinen Effekt." #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "Kann Funktion '%s' nicht als Variable oder Array verwenden." #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "Referenz auf nicht-initialisiertes Argument '%s'." #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "Referenz auf die nicht-initialisierte Variable '%s'." #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "Konkatenierung: Seiteneffekte in einem Ausdruck haben die Länge des anderen\n" "geändert!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "Zuweisung in einer Bedingung." #: eval.c:1278 msgid "division by zero attempted" msgstr "Division durch Null versucht." #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "Division durch Null versucht in '%%'." #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "Illegaler Typ (%s) in tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "Division durch Null versucht in '/='." #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "Division durch Null versucht in '%%='." #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "Funktion '%s' mit zu vielen Argumenten aufgerufen." #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "Funktion '%s' ist nicht definiert." #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Funktion Aufruf-Stack\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- main --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "Nicht-numerischer Wert für Feldreferenz verwendet." #: eval.c:2025 msgid "attempt to reference from null string" msgstr "Referenz von einem Null-String" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "Versuch des Zugriffs auf Feld %d." #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "" "Zuweisungen an das Ergebnis einer eingebauten Funktion sind nicht erlaubt." #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "'IGNORECASE' ist eine gawk-Erweiterung" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "'BINMODE' ist eine gawk-Erweiterung." #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "Falsche '%sFMT'-Angabe '%s'" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "'--lint' wird abgeschaltet, da 'LINT' gesetzt ist." #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "'extension' ist eine gawk-Erweiterung." #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: Kann '%s' nicht öffnen (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: Bibliothek '%s': kann Funktion '%s' nicht aufrufen (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "" #: ext.c:107 #, fuzzy, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: Bibliothek '%s': kann Funktion '%s' nicht aufrufen (%s)\n" #: ext.c:113 #, fuzzy, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: Kann '%s' nicht öffnen (%s)\n" #: ext.c:117 #, fuzzy, c-format msgid "extension: function `%s' already defined" msgstr "Funktion '%s' ist nicht definiert." #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" #: ext.c:124 #, fuzzy, c-format msgid "extension: function name `%s' previously defined" msgstr "Funktion '%s' ist bereits definiert." #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "Funktion '%s' wird nirgends aufgerufen." #: ext.c:204 #, fuzzy, c-format msgid "function `%s': missing argument #%d" msgstr "Funktion '%s' ist nicht definiert." #: ext.c:214 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "Versuch, Skalar '%s' als Array zu verwenden." #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" #: ext.c:243 msgid "Operation Not Supported" msgstr "Operation nicht möglich." #: field.c:326 msgid "NF set to negative value" msgstr "" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: Zweites Argument ist kein Array." #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: Null-String als drittes Argument ist eine gawk-Erweiterung." #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "'FIELDWIDTHS' ist eine gawk-Erweiterung." #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "Null-String für 'FS' ist eine gawk-Erweiterung." #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: Option '%s' ist mehrdeutig.\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: Option '--%s' erlaubt kein Argument.\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: Option '%c%s\" erlaubt kein Argument.\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: Option '%s' erfordert ein Argument.\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: Unbekannte Option '--%s'.\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: Unbekannte Option '%c%s'.\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: Illegale Option -- %c.\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: Ungültige Option -- %c.\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s Option erfordert ein Argument -- %c.\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: Option '-W %s' ist mehrdeutig.\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s. Option '-W %s' erlaubt kein Argument.\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "Kann Datei '%s' nicht zum Lesen öffnen (%s)." #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "Schließen von Dateideskriptor %d ('%s') gescheitert (%s)." #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "Ungültiger Tree-Typ %s in redirect()." #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "Ausdruck in '%s' Umlenkung hat nur einen numerischen Wert." #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "Ausdruck für '%s' Umlenkung ist ein leerer String." #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "Dateiname '%s' für '%s' Umlenkung kann Ergebnis eines logischen Ausdrucks " "sein." #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "Unnötige Kombination von '>' und '>>' für Datei '%.*s'." #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "Kann Pipe '%s' nicht für Ausgabe öffnen (%s)." #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "Kann Pipe '%s' nicht für Eingabe öffnen (%s)." #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "Kann bidirektionalen Socket '%s' nicht für Ein-/Ausgabe öffnen (%s)." #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "Kann bidirektionale Pipe '%s' nicht für Ein-/Ausgabe öffnen (%s)." #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "Kann nicht von '%s' umlenken (%s)." #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "Kann nicht auf '%s' umlenken (%s)." #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "Systemgrenze offener Dateien erreicht; beginne mit Multiplexing von " "Dateideskriptoren." #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "Schließen von '%s' gescheitert (%s)." #: io.c:811 msgid "too many pipes or input files open" msgstr "Zu viele Pipes oder Eingabedateien offen." #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: Zweites Argument muss 'to' oder 'from' sein." #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: '%.*s' ist keine offene Datei, Pipe oder Ko-Prozess." #: io.c:852 msgid "close of redirection that was never opened" msgstr "'close' für eine Umlenkung, die nie geöffnet wurde." #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: Umlenkung '%s' nicht mit '[&' geöffnet, zweites Argument wird " "ignoriert." #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "Fehlerstatus (%d) beim Schließen der Pipe '%s' (%s)." #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "Fehlerstatus (%d) beim Schließen de rDatei '%s' (%s)." #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "Das explizite des Sockets '%s' fehlt." #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "Das explizite Schließen des Ko-Prozesses '%s' fehlt." #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "Das explizite Schließen der Pipe '%s' fehlt." #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "Das explizite Schließen der Datei '%s' fehlt." #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "Fehler beim Schreiben auf stdout (%s)." #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "Fehler beim Schreiben auf stderr (%s)." #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "Leeren der Pipe '%s' gescheitert (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "Ko-Prozess: Leeren der Pipe zu '%s' gescheitert (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "Flush der Datei '%s' gescheitert (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "/inet/raw Client noch nicht fertig." #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "Nur root darf '/inet/raw' benutzen" #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "'/inet/raw'-Server noch nicht fertig." #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "Kein bekanntes Protokoll in Dateinamen '%s' angegeben." #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "Dateiname '%s' ist unvollständig." #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "Lokaler Port in '%s' ist ungültig." #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "Sie müssen einen Rechnernamen in '/inet' angeben." #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "Sie müssen einen Port in '/inet' angeben." #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "Port-Angabe in '%s' ist ungültig." #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "TCP/IP-Verbindungen sind nicht möglich." #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "Datei '%s' ist ein Verzeichnis." #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "Benutzen Sie 'PROCINFO[\"%s\"]' statt '%s'" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "Benutzen Sie 'PROCINFO[...] statt '/dev/user'." #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "Konnte '%s' nicht öffnen, Mode '%s'." #: io.c:1814 #, fuzzy, c-format msgid "close of master pty failed (%s)" msgstr "Schließen der Pipe gescheitert (%s)." #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "Schließen von stdout in Kindprozess gescheitert (%s)." #: io.c:1819 #, fuzzy, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "Verschieben der Pipe zu stdout in Kindprozess gescheitert (dup: %s)." #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "Schließen von stdin im Kindprozess gescheitert (%s)." #: io.c:1824 #, fuzzy, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "Verschieben der Pipe zu stdin in Kindprozess gescheitert (dup: %s)." #: io.c:1826 io.c:1845 #, fuzzy, c-format msgid "close of slave pty failed (%s)" msgstr "Schließen der Pipe gescheitert (%s)." #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "Verschieben der Pipe zu stdout in Kindprozess gescheitert (dup: %s)." #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "Verschieben der Pipe zu stdin in Kindprozess gescheitert (dup: %s)." #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "Schließen der Pipe gescheitert (%s)." #: io.c:2024 msgid "`|&' not supported" msgstr "'|&' nicht möglich." #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "Kann Pipe '%s' nicht öffnen (%s)." #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "Kann Kindprozess für '%s' nicht erzeugen (fork: %s)." #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "Datei '%s' ist leer." #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "Fehler beim Lesen der Eingabedatei '%s': %s." #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "Multicharacter-Wert von 'RS' ist eine gawk-Erweiterung." #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "Option '-m[fr]' ist in gawk bedeutungslos." #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "Anwendung der Option -m: '-m[fr] nnn'" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: Option '-W %s' unbekannt, ignoriert.\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "Leeres Argument für '--source' ignoriert." #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "Umgebungsvariable 'POSIXLY_CORRECT' ist gesetzt: '--posix' angeschaltet." #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "'--posix' hat Vorrang vor '--traditional'" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "'--posix' /'--traditional' hat Vorrang vor '--non-decimal-data'." #: main.c:487 #, fuzzy, c-format msgid "running %s setuid root may be a security problem" msgstr "%s als setuid root auszuführen, kann zu Sicherheitsproblemen führen." #: main.c:528 #, fuzzy, c-format msgid "can't set binary mode on stdin (%s)" msgstr "Kann Mode für stdin nicht setzen (%s)." #: main.c:531 #, fuzzy, c-format msgid "can't set binary mode on stdout (%s)" msgstr "Kann Mode für stdout nicht setzen (%s)." #: main.c:533 #, fuzzy, c-format msgid "can't set binary mode on stderr (%s)" msgstr "Kann Mode für stderr nicht setzen (%s)." #: main.c:572 msgid "no program text at all!" msgstr "Kein Programmtext." #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Anwendung: %s [POSIX- oder GNU-Optionen] -f PROGRAM [--] Datei ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Anwendung: %s [POSIX- oder GNU-Optionen] -- %cPROGRAM%c Datei ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "POSIX-Optionen\t\tGNU-Optionen (lang):\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f PROGRAM\t\t--file=PROGRAM\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F Feldtrenner\t\t\t--field-separator=Feldtrenner\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=Wert\t\t--assign=var=Wert\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] Wert\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=Datei]\t--dump-variables[=Datei]\n" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W profile[=Datei]\t--profile[=Datei]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=Datei]\t--profile[=Datei]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=Programmtext\t--source=Programmtext\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 #, fuzzy msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "den Sie im Kapitel 'Reporting Problems and Bugs' in der \n" "gedruckten Version finden.\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" #: main.c:731 #, fuzzy, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-2001 Free Software Foundation.\n" "\n" "Dieses Programm ist Freie Software. Sie können es unter den Bedingungen\n" "der von der Free Software Foundation veröffentlichten GNU \n" "General Public License weitergeben und/oder ändern.\n" "Es gilt Version 2 dieser Lizenz oder (nach Ihrer Wahl) irgendeine\n" "spätere Version.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Sie sollten eine Kopie der GNU General Publice License zusammen mit\n" "diesem Programm erhalten haben. Wenn nicht, schreiben Sie an die Free \n" "Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02111-" "1307, USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft setzt FS im POSIX-awk nicht auf Tab." #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "" #: main.c:1074 msgid "floating point exception" msgstr "Floating point exception" #: main.c:1081 msgid "fatal error: internal error" msgstr "Fataler Fehler: interner Fehler" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "Kein geöffneter Dateideskriptor %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "Konnte /dev/null nicht für Dateideskriptor %d öffnen." #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "Konnte Gruppen nicht finden: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "Kommandozeile:" #: msg.c:120 msgid "warning: " msgstr "Warnung: " #: msg.c:142 msgid "error: " msgstr "Fehler: " #: msg.c:178 msgid "fatal: " msgstr "Fatal: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "Kann String nicht in Gleitkommazahl konvertieren." #: node.c:414 msgid "backslash at end of string" msgstr "Backslash am String-Ende." #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX erlabut keine '\\x'-Escapes." #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "Keine Hex-Ziffern in '\\x'-Escape." #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "Escape-Sequenz '\\%c' als '%c' behandelt." #: posix/gawkmisc.c:172 #, fuzzy, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s '%s': Konnte close-on-exec nicht setzen: %s" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "Konnte '%s' nicht zum Schreiben öffnen: %s" #: profile.c:467 #, fuzzy, c-format msgid "internal error: %s with null vname" msgstr "Interner Fehler: Node_var with null vname." #: profile.c:531 msgid "# treated internally as `delete'" msgstr "" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawk-Profil, erzeugt %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# BEGIN block(s)\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Rule(s)\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# END block(s)\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Functionen, alphabetisch sortiert\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "Unerwarteter Typ %s in prec_level." #: regcomp.c:160 msgid "Success" msgstr "Erfolg" #: regcomp.c:163 msgid "No match" msgstr "Kein Treffer" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Ungültiger Regulärer Ausdruck." #: regcomp.c:169 msgid "Invalid collation character" msgstr "Ungültiges Zeichen." #: regcomp.c:172 msgid "Invalid character class name" msgstr "Ungültier Name für Zeichenklasse." #: regcomp.c:175 msgid "Trailing backslash" msgstr "Angehängter Backslash" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Ungültige Referenze" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "[ oder [^ nicht geschlossen" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "( oder \\( nicht geschlossen" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "\\{ nicht geschlossen" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Ungültiger Inhalt von \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Ungültiges Bereichsende" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Kein Speicher mehr." #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Vorangehender Regulärer Ausdruck ist ungültig." #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Vorzeitiges Ende des Regulären Ausdrucks." #: regcomp.c:205 msgid "Regular expression too big" msgstr "Regulärer Ausdruck zu groß." #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr ") oder \\) nicht geöffnet" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Kein vorangehender Regulärer Ausdruck." #~ msgid "function %s called\n" #~ msgstr "Funktion %s aufgerufen\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "Feld %d in FIELDWIDTHS muss > 0 sein." #, fuzzy #~ msgid "or used as a variable or an array" #~ msgstr "Kann Funktion '%s' nicht als Variable oder Array verwenden." #, fuzzy #~ msgid "substr: length %g is < 0" #~ msgstr "substr: Länge %g ist kleiner oder gleich 0." #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: Benutzung der Variablen »%s« als Array ist nicht zulässig." #, fuzzy #~ msgid "%s: gvar_ref to %s\n" #~ msgstr "%s: Array-Referenz auf %s\n" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: Erstes Argument ist kein Array." #~ msgid "asort: second argument is not an array" #~ msgstr "asort: Zweites Argument ist kein array." #, fuzzy #~ msgid "" #~ "attempt to use array parameter `%s' that was passed from global scalar `%" #~ "s'" #~ msgstr "Versuch den skalaren Parameter '%s' als Array zu benutzen." #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "Interner Fehler: Node_var_array with null vname." #~ msgid "BEGIN blocks must have an action part" #~ msgstr "BEGIN-Blöcke müssen einen Aktionsteil haben." #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "'nextfile' in BEGIN- oder END-Aktion benutzt." #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "Der dritte Parameter von gsub ist ein unveränderliches Objekt." #~ msgid "or used in other expression context" #~ msgstr "or in anderem Kontext benutzt" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "'%s' ist eine Funktion, Zuweisungen sind nicht erlaubt." #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "Interner Fehler: Datei '%s', Zeile %d\n" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "Nicht-umgelenktes 'getline' ist innerhalb der BEGIN- und END-Aktion nicht " #~ "definiert." #~ msgid "fptr %x not in tokentab\n" #~ msgstr "fptr %x nicht in tokentab\n" #~ msgid "Unbalanced [" #~ msgstr "[ wird nicht geschlossen." #~ msgid "Unfinished \\ escape" #~ msgstr "Nicht-beendetes \\\\-Escape." #~ msgid "unfinished repeat count" #~ msgstr "Nicht-beendeter Wiederholungszähler." #~ msgid "malformed repeat count" #~ msgstr "Fehlerhafter Wiederholungszähler." #~ msgid "Unbalanced (" #~ msgstr "( wird nicht geschlossen." #~ msgid "No regexp syntax bits specified" #~ msgstr "Kein Regulärer Ausdruck angegeben." #~ msgid "Unbalanced )" #~ msgstr ") wird nicht geöffnet." #~ msgid "out of memory" #~ msgstr "Kein Speicher mehr." #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "Ungültige Syntax im Namen '%s' für Variablenzuweisung." #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "Um Fehler zu melden, lesen Sie bitte den Abschnitt 'Bugs' in " #~ "'gawk_info',\n" #~ msgid "pipe from `%s': could not set close-on-exec (fcntl: %s)" #~ msgstr "Pipe von '%s': Konnte close-on-exec nicht setzen (fcntl: %s)." #~ msgid "pipe to `%s': could not set close-on-exec (fcntl: %s)" #~ msgstr "Pipe zu '%s': Konnte close-on-exec nicht setzen (fcntl: %s)." EOF echo - 'es.po' cat << 'EOF' > 'es.po' # Mensajes en español para gawk-3.1.4l. # Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. # Cristian Othón Martínez Vera , 2001, 2002, 2003, 2004, 2005. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.4l\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2005-06-27 09:20-0500\n" "Last-Translator: Cristian Othón Martínez Vera \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, c-format msgid "attempt to use function `%s' as an array" msgstr "se intentó usar la función `%s' como una matriz" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "se intentó usar el parámetro escalar `%s como una matriz'" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "se intentó usar el dato escalar `%s' como una matriz" #: array.c:156 #, c-format msgid "from %s" msgstr "desde %s" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "referencia al elemento sin valor inicial `%s[\"%s\"]'" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "el subíndice de la matriz `%s' es la cadena nula" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: el índice `%s' no está en la matriz `%s'" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: vacío (nulo)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: vacío (cero)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: tamaño_tabla = %d, tamaño_matriz = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: es un parámetro\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: array_ref a %s\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "Los bloques %s deben tener una parte de acción" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "cada regla debe tener un patrón o una parte de acción" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s' es una función interna, no se puede redefinir" #: awkgram.y:313 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "la constante de expresión regular `//' parece un comentario de C++, pero no " "lo es" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "la constante de expresión regular `/%s/' parece un comentario de C, pero no " "lo es" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "la sentencia puede no tener efecto" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "se usó `%s' en la acción %s" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' es una extensión de gawk" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "se usó `return' fuera del contexto de la función" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "el `print' simple en la regla BEGIN o END probablemente debe ser `print \"\"'" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "`delete array' es una extensión de gawk" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete(array)' es una extensión de gawk que no es transportable" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "valores case duplicados en el cuerpo de un switch: %s" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "Se detectó un `default' duplicado en el cuerpo de un switch" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "las líneas de trabajo de dos vías multiestado no funcionan" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "expresión regular del lado derecho de una asignación" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "expresión regular a la izquierda del operador `~' o `!~'" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "expresión regular a la derecha de una comparación" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "`getline' no redirigido indefinido dentro de la acción de END" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "la llamada de `length' sin paréntesis no es transportable" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "la llamada de `length' sin paréntesis está obsoleta por POSIX" #: awkgram.y:962 msgid "use of non-array as array" msgstr "uso de una matriz que no es matriz" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "expresión de subíndice inválida" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "nueva línea o fin de la cadena inesperados" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "texto de programa vacío en la linea de comando" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "no se puede abrir el fichero fuente `%s' para lectura (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "no se puede leer el fichero fuente `%s' (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "el fichero fuente `%s' está vacío" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "el fichero fuente no termina con línea nueva" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "expresión regular sin terminar termina con `\\` al final del fichero" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: el modificador de expresión regular `/.../%c` de tawk no funciona en " "gawk" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "el modificador de expresión regular `/.../%c` de tawk no funciona en gawk" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "expresión regular sin terminar" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "expresión regular sin terminar al final del fichero" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "el uso de la continuación de línea `\\ #...' no es transportable" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "la barra invertida no es el último caracter en la línea" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX no permite el operador `**='" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "el awk antiguo no da soporte al operador `**='" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX no permite el operador `**'" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "el awk antiguo no da soporte al operador `**='" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "el operador `^=' no tiene soporte en el awk antiguo" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "el operador `^' no tiene soporte en el awk antiguo" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "cadena sin terminar" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "caracter '%c' inválido en la expresión" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' es una extensión de gawk" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' es una extensión de Bell Labs" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX no permite `%s'" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' no tiene soporte en el awk antiguo" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "¡`goto' se considera dañino!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d es inválido como número de argumentos para %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: el tercer argumento es una extensión de gawk" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: la literal de cadena como último argumento de substitute no tiene efecto" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "el tercer argumento de %s no es un objecto que se puede cambiar" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: el segundo argumento es una extensión de gawk" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "el uso de dcgettext(_\"...\") es incorrecto: quite el subrayado inicial" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "el uso de dcngettext(_\"...\") es incorrecto: quite el subrayado inicial" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "función `%s': parámetro #%d, `%s', duplica el parámetro #%d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "función `%s': parámetro `%s' obscurece la variable global" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "no se puede abrir `%s' para escritura (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "enviando perfil a la salida estándar de error" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: falló close (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "¡shadow_funcs() llamada dos veces!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "hay variables opacadas." #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "" "función `%s': no se puede usar un nombre de función como nombre de parámetro" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "el nombre de función `%s' se definió previamente" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "se llamó a la función `%s' pero nunca se definió" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "la función `%s' está definida pero nunca se llamó" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "la constante de expresión regular para el parámetro #%d da un valor booleano" #: awkgram.y:3105 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "se llamó la función `%s' con espacio entre el nombre y el `(',\n" "o se usó como una variable o una matriz" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "falló %s a \"%s\" (%s)" #: builtin.c:146 msgid "standard output" msgstr "salida estándar" #: builtin.c:147 msgid "reason unknown" msgstr "razón desconocida" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: se recibió un argumento que no es un número" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: el argumento %g está fuera de rango" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: no se puede limpiar: se abrió la tubería `%s' para lectura, no para " "escritura" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: no se puede limpiar: se abrió el fichero `%s' para lectura, no para " "escritura" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' no es un fichero abierto, tubería o co-proceso" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: el primer argumento recibido no es una cadena" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: el segundo argumento recibido no es una cadena" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: se recibió un argumento que no es un número" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "`delete array' es una extensión de gawk" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: se recibió un argumento que no es una cadena" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: se recibió un argumento que no es un número" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: se recibió el argumento negativo %g" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "se debe utilizar `count$' en todos los formatos o en ninguno" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "no se permite `$' en los formatos de awk" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "la cuenta de argumentos con `$' debe ser > 0" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "" "la cuenta de argumentos %ld es mayor que el número total de argumentos " "proporcionados" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "no se permite `$' después de un punto en el formato" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "" "no se proporciona `$' para el ancho o la precisión del campo posicional" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "`l' no tiene significado en los formatos de awk; ignorado" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "no se permite `l' en los formatos POSIX de awk" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "`L' no tiene significado en los formatos de awk; ignorado" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "no se permite `L' en los formatos POSIX de awk" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "`h' no tiene significado en los formatos de awk; ignorado" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "no se permite `h' en los formatos POSIX de awk" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: el valor %g está fuera del rango del formato `%%%c'" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "no hay suficientes argumentos para satisfacer a la cadena de formato" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "se acabó ^ para éste" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: el especificador de formato no tiene letras de control" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "se proporcionaron demasiados argumentos para la cadena de formato" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: sin argumentos" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: se recibió un argumento que no es un número" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: llamado con el argumento negativo %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: el índice de inicio %g es inválido, usando 1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: el índice de inicio no entero %g será truncado" #: builtin.c:1353 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: la longitud %g no es >= 1" #: builtin.c:1355 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: la longitud %g no es >= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: la longitud no entera %g será truncada" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" "substr: la longitud %g es demasiado grande para ser índice de cadena, se " "trunca a %g" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: la cadena de origen es de longitud cero" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: el índice de inicio %g está después del fin de la cadena" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: la cadena %g en el índice de inicio %g excede la longitud del primer " "argumento (%lu)" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftime: el primer argumento recibido no es una cadena" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: se recibió una cadena de formato vacía" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: el segundo argumento recibido no es un número" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: se recibió un argumento que no es una cadena" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: se recibió un argumento que no es una cadena" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "referencia al campo sin inicializar `$%d'" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: se recibió un argumento que no es una cadena" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: se recibió un argumento que no es una cadena" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: el primer argumento recibido no es un número" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: el segundo argumento recibido no es un número" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: se recibió un argumento que no es un número" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: se recibió un argumento que no es un número" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: se recibió un argumento que no es un número" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: el tercer argumento no es una matriz" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: el tercer argumento de 0 se trata como 1" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: el primer argumento recibido no es un número" #: builtin.c:2717 msgid "lshift: received non-numeric second argument" msgstr "lshift: el segundo argumento recibido no es un número" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): los valores negativos darán resultados extraños" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): los valores fraccionarios serán truncados" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): un valor de desplazamiento muy grande dará resultados " "extraños" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: el primer argumento recibido no es un número" #: builtin.c:2755 msgid "rshift: received non-numeric second argument" msgstr "rshift: el segundo argumento recibido no es un número" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): los valores negativos darán resultados extraños" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): los valores fraccionarios serán truncados" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): un valor de desplazamiento muy grande dará resultados " "extraños" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: el primer argumento recibido no es un número" #: builtin.c:2793 msgid "and: received non-numeric second argument" msgstr "and: el segundo argumento recibido no es un número" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): los valores negativos darán resultados extraños" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): los valores fraccionarios serán truncados" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: el primer argumento recibido no es un número" #: builtin.c:2829 msgid "or: received non-numeric second argument" msgstr "or: el segundo argumento recibido no es un número" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): los valores negativos darán resultados extraños" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): los valores fraccionarios serán truncados" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: el primer argumento recibido no es un número" #: builtin.c:2865 msgid "xor: received non-numeric second argument" msgstr "xor: el segundo argumento recibido no es un número" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): los valores negativos darán resultados extraños" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): los valores fraccionarios serán truncados" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: se recibió un argumento que no es un número" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): el valor negativo dará resultados extraños" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): el valor fraccionario será truncado" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' no es una categoría local válida" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "tipo de nodo %d desconocido" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "desbordamiento de almacenamiento temporal en genflags2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "se intentó usar la matriz `%s' en un contexto escalar" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "ciclo for: la matriz `%s' cambió de tamaño de %ld a %ld durante la ejecución " "del ciclo" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "`break' fuera de un ciclo no es transportable" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "no se permite `break' fuera de un ciclo" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "`continue' fuera de un ciclo no es transportable" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "no se permite `continue' fuera de un ciclo" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "`next' no se puede llamar desde una regla BEGIN" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "`next' no se puede llamar desde una regla END" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "`nextfile' no se puede llamar desde una regla BEGIN" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "`nextfile' no se puede llamar desde una regla END" #: eval.c:875 msgid "statement has no effect" msgstr "la sentencia no tiene efecto" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "no se puede usar el nombre de la función `%s' como variable o matriz" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "referencia al argumento sin inicializar `%s'" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "referencia a la variable sin inicializar `%s'" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenación: ¡Los efectos laterales en una expresión han cambiado la " "longitud de otra!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "se usó una asignación en un contexto condicional" #: eval.c:1278 msgid "division by zero attempted" msgstr "se intentó una división por cero" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "se intentó una división por cero en `%%'" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "tipo ilegal (%s) en tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "se intentó una división por cero en `/='" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "se intentó una división por cero en `%%='" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "se llamó a la función `%s' con más argumentos de los declarados" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "la función `%s' no está definida" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Pila de Llamadas de Funciones:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- principal --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "se intentó una referencia de campo desde un valor que no es un número" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "se intentó una referencia desde una cadena nula" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "se intentó accesar al campo %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "no se permite asignación como resultado de una función interna" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' es una extensión de gawk" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' es una extensión de gawk" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "especificación `%sFMT' `%s' errónea" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "desactivando `--lint' debido a una asignación a `LINT'" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "`extension' es una extensión de gawk" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: no se puede abrir `%s' (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "extension: biblioteca `%s': no se puede llamar a la función `%s' (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "extension: falta el nombre de la función" #: ext.c:107 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: carácter ilegal `%c' en el nombre de la función `%s'" #: ext.c:113 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: no se puede redefinir la función `%s'" #: ext.c:117 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: la función `%s' ya está definida" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "extension: no se puede utilizar la orden interna de gawk `%s' como nombre de " "función" #: ext.c:124 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: el nombre de función `%s' se definió previamente" #: ext.c:201 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "la función `%s' está definida para tomar no más de %d argumento(s)" #: ext.c:204 #, c-format msgid "function `%s': missing argument #%d" msgstr "función `%s': falta el argumento #%d" #: ext.c:214 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "" "función `%s': argumento #%d: se intentó usar un escalar como una matriz" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" "función `%s': argumento #%d: se intentó usar una matriz como un escalar" #: ext.c:243 msgid "Operation Not Supported" msgstr "No Se Da Soporte A La Operación" #: field.c:326 msgid "NF set to negative value" msgstr "NF con un valor negativo" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: el segundo argumento no es una matriz" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "" "split: la cadena nula para el tercer argumento es una extensión de gawk" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' es una extensión gawk" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "valor de FIELDWIDTHS inválido, cerca de `%s'" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "la cadena nula para `FS' es una extensión de gawk" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: la opción `%s' es ambigua\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: la opción `--%s' no admite ningún argumento\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: la opción `%c%s' no admite ningún argumento\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: la opción `%s' requiere un argumento\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: no se reconoce la opción `--%s'\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: no se reconoce la opción `%c%s'\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: opción ilegal -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: opción inválida -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: la opción requiere un argumento -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: la opción `-W %s' es ambigua\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: la opción `-W %s' no admite ningún argumento\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "no se puede abrir el fichero `%s' para lectura (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "falló al cerrar el df %d (`%s') (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "tipo de árbol %s inválido en redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "la expresión en la redirección `%s' sólo tiene un valor numérico" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "la expresión para la redirección `%s' tiene un valor de cadena nula" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "el fichero `%s' para la redirección `%s' puede ser resultado de una " "expresión lógica" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "mezcla innecesaria de `>' y `>>' para el fichero `%.*s'" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "no se puede abrir la tubería `%s' para la salida (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "no se puede abrir la tubería `%s' para la entrada (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "" "no se puede abrir el `socket' de dos vías `%s' para entrada/salida (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "no se puede abrir la tubería de dos vías `%s' para entrada/salida (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "no se puede redirigir desde `%s' (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "no se puede redirigir a `%s' (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "se alcanzó el límite del sistema para ficheros abiertos: comenzando a " "multiplexar los descriptores de fichero" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "falló al cerrar `%s' (%s)." #: io.c:811 msgid "too many pipes or input files open" msgstr "demasiadas tuberías o ficheros de entrada abiertos" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: el segundo argumento debe ser `to' o `from'" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: `%.*s' no es un fichero abierto, tubería o co-proceso" #: io.c:852 msgid "close of redirection that was never opened" msgstr "cerrado de una redirección que nunca fue abierta" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: la redirección `%s' no se abre con `|&', se ignoró el segundo " "argumento" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "estado de fallo (%d) al cerrar la tubería de `%s' (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "estado de fallo (%d) al cerrar el fichero de `%s' (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "no se provee el cerrado explícito del `socket' `%s'" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "no se provee el cerrado explícito del co-proceso `%s'" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "no se provee el cerrado explícito del la tubería `%s'" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "no se provee el cerrado explícito del fichero `%s'" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "error al escribir en la salida estándar (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "error al escribir en la salida estándar de error (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "falló la limpieza de la tubería de `%s' (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "falló la limpieza del co-proceso de la tubería a `%s' (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "falló la limpieza del fichero de `%s' (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "el cliente /inet/raw no está listo aún, perdón" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "sólo root puede utilizar `/inet/raw'." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "el servidor /inet/raw no está listo aún, perdón" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" "no se proporciona algún protocolo (conocido) en el nombre de fichero " "especial `%s'" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "el nombre de fichero especial `%s' está incompleto" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "puerto local inválido en `%s'" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "se debe proporcionar a `/inet' un nombre de anfitrión remoto" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "se debe proporcionar a `/inet' un puerto remoto" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "puerto remoto inválido en `%s'" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "No tienen soporte las comunicaciones TCP/IP" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "el fichero `%s' es un directorio" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "use `PROCINFO[\"%s\"]' en lugar de `%s'" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "use `PROCINFO[...]' en lugar de `/dev/user'" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "no se puede abrir `%s', modo `%s'" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "falló al cerrar el pty maestro (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "falló al cerrar la salida estándar en el hijo (%s)" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "falló el movimiento del pty esclavo a la salida estándar en el hijo (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "falló al cerrar la entrada estándar en el hijo (%s)" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "falló el movimiento del pty esclavo a la entrada estándar en el hijo (dup: %" "s)" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "falló al cerrar el pty esclavo (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "falló el movimiento a la salida estándar en el hijo (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "falló el movimiento de la tubería a la entrada estándar en el hijo (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "falló la restauración de la salida estándar en el proceso padre\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "falló la restauración de la entrada estándar en el proceso padre\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "falló al cerrar la tubería (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "`|&' no tiene soporte" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "no se puede abrir la tubería `%s' (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "no se puede crear el proceso hijo para `%s' (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "el fichero de datos `%s' está vacío" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "no se puede reservar más memoria de entrada" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "error al leer el fichero de entrada `%s': %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "el valor multicaracter de `RS' es una extensión de gawk" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "la opción -m[fr] es irrelevante en gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "uso de la opción -m: `-m[fr]' nnn" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: no se reconoce la opción `-W %s', se ignora\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "se ignora el argumento vacío para `--source'" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "la variable de ambiente `POSIXLY_CORRECT' está establecida: activando `--" "posix'" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "`--posix' se impone a `--traditional'" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--posix'/`--traditional' se imponen a `--non-decimal-data'" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "ejecutar %s como setuid root puede ser un problema de seguridad" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "no se puede establecer el modo binario en la entrada estándar (%s)" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "no se puede establecer el modo binario en la salida estándar (%s)" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "" "no se puede establecer el modo binario en la salida estándar de error (%s)" #: main.c:572 msgid "no program text at all!" msgstr "¡No hay ningún programa de texto!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Modo de empleo: %s [opciones estilo POSIX o GNU] -f fichprog [--] " "fichero ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Modo de empleo: %s [opciones estilo POSIX o GNU] [--] %cprograma%c " "fichero ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "Opciones POSIX:\t\tOpciones largas GNU:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f fichprog\t\t--file=fichprog\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F sc\t\t\t--field-separator=sc\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=valor\t\t--assign=var=valor\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] valor\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=fichero]\t--dump-variables[=fichero]\n" #: main.c:681 msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W exec=fichero\t\t--exec=fichero\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=fichero]\t--profile[=fichero]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" # Esta es la línea más larga de la lista de argumentos. # Probar con gawk para revisar tabuladores. cfuga #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=texto-prog\t--source=texto-prog\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "Para reportar bichos, consulte el nodo `Bugs' en `gawk.info', el cual\n" "corresponde a la sección `Reporting Problems and Bugs' en la versión " "impresa.\n" "\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk es un lenguaje de reconocimiento y procesamiento de patrones.\n" "Por omisión lee la entrada estándar y escribe en la salida estándar.\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "Ejemplos:\n" "\tgawk '{ sum += $1 }; END { print sum }' fichero\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "Este programa es software libre; puede redistribuirse y/o ser modificado\n" "bajo los términos de la Licencia Pública General de GNU tal como es " "publicada\n" "por la Free Software Foundation; ya sea por la versión 2 de la Licencia, o\n" "(a su elección) cualquier versión posterior.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Este programa se distribuye con la esperanza que será útil,\n" "pero SIN NINGUNA GARANTÍA; aún sin la garantía implícita de\n" "COMERCIABILIDAD o IDONEIDAD PARA UN FIN DETERMINADO. Vea la\n" "Licencia Pública General de GNU para más detalles.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Debió haber recibido una copia de la Licencia Pública General de GNU\n" "junto con este programa; si no es así, escriba a la Free Software\n" "Foundation, Inc., 51 Franklin Street, Quinto Piso, Boston, MA 02110-1301, " "USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft no establece FS a tabulador en el awk de POSIX" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" "%s: el argumento `%s' para `-v' no es de la forma `var=valor'\n" "\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' no es un nombre de variable legal" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s' no es un nombre de variable, se busca el fichero `%s=%s'" #: main.c:1074 msgid "floating point exception" msgstr "excepción de coma flotante" #: main.c:1081 msgid "fatal error: internal error" msgstr "error fatal: error interno" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "no existe el df %d abierto previamente" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "no se puede abrir previamente /dev/null para el df %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "no se pueden encontrar los grupos: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "línea ord.:" #: msg.c:120 msgid "warning: " msgstr "aviso: " #: msg.c:142 msgid "error: " msgstr "error: " #: msg.c:178 msgid "fatal: " msgstr "fatal: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "no se puede convertir una cadena a coma flotante" #: node.c:414 msgid "backslash at end of string" msgstr "barra invertida al final de la cadena" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX no permite escapes `\\x'" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "no hay dígitos hexadecimales en la secuencia de escape `\\x'" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "la secuencia de escape `\\%c' tratada como una simple `%c'" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s `%s': no se puede establecer close-on-exec: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "no se puede abrir `%s' para escritura: %s" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "error interno: %s con vname nulo" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# se trata internamente como `delete'" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "# esta es una función de extensión cargada dinámicamente" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# perfil de gawk, creado %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# bloque(s) BEGIN\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Regla(s)\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# bloque(s) END\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Funciones, enumeradas alfabéticamente\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "tipo %s inesperado en prec_level" #: regcomp.c:160 msgid "Success" msgstr "Éxito" #: regcomp.c:163 msgid "No match" msgstr "No hay coincidencia" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Expresión regular inválida" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Caracter de ordenación inválido" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Nombre de clase de caracter inválido" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Barra invertida extra al final" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Referencia hacia atrás inválida" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "[ o [^ desemparejados" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "( o \\( desemparejados" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "\\{ desemparejado" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Contenido inválido de \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Final de rango inválido" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Memoria agotada" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Expresión regular precedente inválida" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Fin prematuro de la expresión regular" #: regcomp.c:205 msgid "Regular expression too big" msgstr "La expresión regular es demasiado grande" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr ") o \\) desemparejados" #: regcomp.c:688 msgid "No previous regular expression" msgstr "No hay una expresión regular previa" #~ msgid "function %s called\n" #~ msgstr "se llamó a la función %s\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "el campo %d en FIELDWIDTHS, debe ser > 0" #~ msgid "or used as a variable or an array" #~ msgstr "o se usó como una variable o una matriz" #~ msgid "substr: length %g is < 0" #~ msgstr "substr: la longitud %g es < 0" #~ msgid "regex match failed, not enough memory to match string \"%.*s%s\"" #~ msgstr "" #~ "falló la coincidencia de la expresión regular, no hay suficiente memoria " #~ "para que coincida la cadena \"%.*s%s\"" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: uso ilegal de la variable `%s' como una matriz" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: el primer argumento no es una matriz" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: el segundo argumento no es una matriz" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "error interno: Node_var_array con vname nulo" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "sintaxis inválida en el nombre `%s' para la asignación de variable" #~ msgid "or used in other expression context" #~ msgstr "se usó or en otro contexto de la expresión" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "`%s' es una función, no se permite asignación" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "Los bloques BEGIN deben tener una parte de acción" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "`nextfile' es usado en la acción de BEGIN o END" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "`getline' no redirigido indefinido dentro de la acción de BEGIN o END" # tokentab? cfuga #~ msgid "fptr %x not in tokentab\n" #~ msgstr "fptr %x no está en tokentab\n" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "el tercer argumento de gsub no es un objecto que se puede cambiar" #~ msgid "Unbalanced [" #~ msgstr "[ desbalanceado" #~ msgid "Unfinished \\ escape" #~ msgstr "Escape \\ sin terminar" #~ msgid "unfinished repeat count" #~ msgstr "cuenta de repetición sin terminar" #~ msgid "malformed repeat count" #~ msgstr "cuenta de repetición malformada" #~ msgid "Unbalanced (" #~ msgstr "( desbalanceado" #~ msgid "No regexp syntax bits specified" #~ msgstr "No se especifican los bits de sintaxis de la expresión regular" #~ msgid "Unbalanced )" #~ msgstr ") desbalanceado" #~ msgid "out of memory" #~ msgstr "memoria agotada" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "error interno: fichero `%s', línea %d\n" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "Para reportar `bugs', vea el nodo `Bugs' en gawk.info, que es\n" #~ msgid "pipe from `%s': could not set close-on-exec (fcntl: %s)" #~ msgstr "tubería de `%s': no se puede establecer close-on-exec (fcntl: %s)" #~ msgid "pipe to `%s': could not set close-on-exec (fcntl: %s)" #~ msgstr "tubería a `%s': no se puede establecer close-on-exec (fcntl: %s)" EOF echo - 'fr.po' cat << 'EOF' > 'fr.po' # Messages français pour gawk. # Copyright © 2004 Free Software Foundation, Inc. # Michel Robitaille , 1996. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.4l\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2005-06-29 08:00-0500\n" "Last-Translator: Michel Robitaille \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: array.c:112 #, c-format msgid "attempt to use function `%s' as an array" msgstr "tentative d'utilisation de la fonction « %s » comme un tableau" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "" "tentative d'utilisation d'un paramètre scalaire « %s » comme un tableau" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "tentative d'utilisation du scalaire « %s » comme un tableau" #: array.c:156 #, c-format msgid "from %s" msgstr "à partir de %s" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "référence à un élément non initialisé « %s[\"%s\"] »" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "sous-description du tableau « %s » contient une chaîne nulle" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "destruction: index « %s » n'est pas dans le tableau « %s »" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: vide (null)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: vide (zéro)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: table_size = %d, array_size = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: est un paramètre\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: array_ref de %s\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "Les blocs %s doivent avoir une partie action" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "chaqque règle doit avoir un patron ou une partie action" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "« %s » est une fonction interne, elle ne peut être redéfinie" #: awkgram.y:313 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "la constante d'expression régulière « // » ressemble à un commentaire en C, " "mais ne l'est pas" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "la constante d'expression régulière « /%s/ » ressemble à un commentaire en " "C, mais ne l'est pas" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "la déclaration peut n'avoir aucun effet" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "« %s » utilisé dans l'action %s" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "« nextfile » est une extension de gawk" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "« return » utilisé en dehors du contexte d'une fonction" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "utilisation de « print » dans une règle BEGIN ou END doit être probablement " "« print \"\" »" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "« delete array » est une extension de gawk" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "« delete(array) » est une extension de tawk qui n'est pas portable" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "duplicata de valeur de case dans le corps du switch: %s" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "duplicata de « default » détecté dans le corps du switch" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "pipelines bidirectionnel à multi-étapes ne fonctionnent pas" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "expression régulière à la droite de l'affectation" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "expression régulière sur la gauche de l'opérateur « ~ » ou « !~ »" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "expression régulière sur la droite de la comparaison" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "« getline » non redirigé indéfini à l'intérieur de l'action END" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "l'appel de « length » sans les parenthèses n'est pas portable" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "l'appel de « length » sans les parenthèses est déprécié par POSIX" #: awkgram.y:962 msgid "use of non-array as array" msgstr "utilisation d'une entité qui n'est pas un tableau comme tableau" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "sous-expression invalide" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "nouvelle ligne inattendue ou fin de la chaîne" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "texte du programme sur la ligne de commande est vide" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "ne peut ouvrir le fichier source « %s » pour lecture (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "ne peut lire le fichier source « %s » (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "fichier source « %s » est vide" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "fichier source ne se termine pas par un retour de chariot" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" "expression régulière non termineé se terminant par « \\ » à la fin du fichier" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: modificateur d'exp. rég. tawk `/.../%c' ne peut opérer dans gawk" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "modificateur d'exp. rég. tawk `/.../%c' ne peut opérer dans gawk" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "expression régulière non terminée" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "expression régulière non terminée à la fin du fichier" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "" "utilisation de « \\ #... » comme continuation de ligne n'est pas portable" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "la barre oblique inverse n'est pas le dernier caractère sur la ligne" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX ne permet un opérateur « **= »" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "l'ancien awk ne supporte pas l'opérateur « **= »" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX ne permet pas l'opérateur « ** »" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "l'ancien awk ne supporte pas l'opérateur « ** »" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "l'opérateur « ^= » n'est pas supporté dans l'ancien awk" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "l'opérateur « ^ » n'est pas supporté dans l'ancien awk" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "chaîne non complétée" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "caractère invalide « %c » dans l'expression" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "« %s » est une extension de gawk" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "« %s » est une extension de Bell Labs" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX ne permet pas « %s »" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "« %s » n'est pas supporté dans l'ancien awk" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "« goto » considéré néfaste!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d est invalide comme nombre d'arguments pour %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: 3e argument est une extension de gawk" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: la chaîne litérale comme dernier arguement d'une substitution n'a aucun " "effet" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "3e paramètre %s n'est pas un objet interchangeable" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: 2e argument est une extension de gawk" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "utilisation de dcgettext(_\"...\") est incorrect: enlever les soulignés en " "en-tête" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "utilisation de dcngettext(_\"...\") est incorrect: enlever les soulignés en " "en-tête" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "fonction « %s »: paramètre #%d, « %s » est un double du paramètre #%d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "fonction « %s »: paramètre « %s » porte ombrage à la variable globale" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "ne peut ourvrir « %s » en écriture (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "redirection du profile vers stderr" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: échec de fermeture (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadows_funcs() appelé deux fois!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "il y avait des variables ombragées" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "fonction « %s »: ne peut utilise le nom de la fonction comme paramètre" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "nom de la fonction « %s » définie précédemment" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "fonction « %s » appelé mais jamais définie" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "fonction « %s » définie mais jamais utilisée" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "expression régulière constante pour le paramètre #%d conduit à une valeur " "booléenne" #: awkgram.y:3105 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "fonction « %s » appelée avec un espace entre le nom et « ( »,\n" "ou utilisé comme variable ou comme un tableau" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s vers « %s » échec (%s)" #: builtin.c:146 msgid "standard output" msgstr "sortie standard" #: builtin.c:147 msgid "reason unknown" msgstr "raison inconnue" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: argument n'est pas numérique" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argument %g est hors limite" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: ne peut vider: le pipe « %s » est oouvert en lecture, pas en écriture" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: ne peut vider: fichier « %s » ouvert en lecture, pas en écriture" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "" "fflush: « %s » n'est pas ni un fichier ouvert, un pipe ou un co-processus" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: premier argument n'est pas une chaîne" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: second argument n'est pas une chaîne" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: argument n'est pas numérique" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "« delete array » est une extension de gawk" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: argument n'est pas une chaîne" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: argument n'est pas numérique" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: argument négatif %g" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "doit utiliser « count$ » sur tous les formats ou aucun" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "« $ » n'est pas permis dans les formats awk" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "décompte d'arguments avec « $ » doit être > 0" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "compteur d'arguments %ld est > que le nombre total d'arguments fournis" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "« $ » n'est pas permis après le point" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "aucun « $ » fourni dans le champ positionnel (longueur ou précision)" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "« l » n'a aucun sens dans les formats de awk; ignoré" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "« l » n'est pas permis dans les format POSIX de awk" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "« L » n'a aucun sens dans les formats s de awk; ignoré" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "« L » n'est pas permis dans les formats POSIX de awk" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "« h » n'a aucun send dans les formats de awk; ignoré" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "« h » n'est pas permis dans les formats POSIX de awk" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: valeur %g est hors limite pour le format « %%%c »" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "pas assez d'arguments pour satisfaire le format d'une chaîne" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ débordement pour celle-ci" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "" "[s]printf: spécificateur de format ne contient pas de lettre de contrôle" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "trop d'arguments pour la chaîne de format" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: aucun argument" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: argument n'est pas numérique" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: appelé avec un argument négatif %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: début de l'index %g est invalide, utilise 1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: début avec un nombre non entier %g sera tronqué" #: builtin.c:1353 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: longueur %g n'est pas >= 1" #: builtin.c:1355 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: longueur %g n'est pas >= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: longueur avec un nombre non entier %g sera tronqué" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" "substr: longueur %g trop grande pour l'indexation de chaînes, truncation à %g" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: chaîne de départ est de longueur zéro" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: début de l'index %g dépasse la fin de la chaîne" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: longueur %g début avec l'index %g déborde la longueur du 1er " "arguement (%lu)" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftim: premier argument reçu n'est pas une chaîne" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: chaîne de format vide" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: second argument reçu n'est pas numérique" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: argument n'est pas une chaîne" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: argument reçu n'est pas une chaîne" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "référence à un champ non initialisé « $%d »" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: argument reçu n'est pas une chaîne" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: argument reçu n'est pas une chaîne" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: premier argument n'est pas numérique" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: second argument n'est pas numérique" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: argument n'est pas numérique" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: argument n'est pas numérique" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: argument n'est pas numérique" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: le 3e argument n'est pas un tableau" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: le 3e argument de 0 traité comme un 1" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: premier argument n'est pas numérique" #: builtin.c:2717 msgid "lshift: received non-numeric second argument" msgstr "lshift: second argument reçu n'est pas numérique" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): valeurs négatives donneront d'étranges résultats" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): valeurs fractionnaires seront tronquées" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): trop grand déplacement donnera d'étranges résultats" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: premier argument n'est pas numérique" #: builtin.c:2755 msgid "rshift: received non-numeric second argument" msgstr "rshift: second argument reçu n'est pas numérique" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): valeurs négatives donneront d'étranges résultats" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): valeurs fractionnaires seront tronquées" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): trop grand déplacement donnera d'étranges résultats" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: premier argument n'est pas numérique" #: builtin.c:2793 msgid "and: received non-numeric second argument" msgstr "and: second argument reçu n'est pas numérique" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): valeurs négatives donneront d'étranges résultats" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): valeurs fractionnaires seront tronquées" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: premier argument n'est pas numérique" #: builtin.c:2829 msgid "or: received non-numeric second argument" msgstr "or: second argument reçu n'est pas numérique" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): valeurs négatives donneront d'étranges résultats" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): valeurs fractionnaires seront tronquées" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: premier argument n'est pas numérique" #: builtin.c:2865 msgid "xor: received non-numeric second argument" msgstr "xor: second argument reçu n'est pas numérique" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): valeurs négatives donneront d'étranges résultats" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): valeurs fractionnaires seront tronquées" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: argument n'est pas numérique" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): valeurs négatives donneront d'étranges résultats" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): valeurs fractionnaires seront tronquées" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: « %s » n'est pas dans un catégorie de localisation valide" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "type de noeud inconnu %d" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "débordement de tampo dans genflag2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "tentative d'utilisation du tableau « %s » dans un contexte scalaire" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "for loop: tableau « %s » a changé de taille de %ld à %ld durant l'exécution " "de la boucle" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "« break » en dehors de la boucle n'est pas portable" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "« break » en dehors de la boucle n'est pas permis" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "« continue » en dehors de la boucle n'est pas portable" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "« continue » en dehors de la boucle n'est pas permis" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "« next » ne peut être appelé depuis une règle BEGIN" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "« next » ne peut être appelé depuis une règle END" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "« nextfile » ne peut être appelé depuis une règle BEGIN" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "« nextfile » ne peut être appelé depuis une règle END" #: eval.c:875 msgid "statement has no effect" msgstr "la déclaration n'a aucun effet" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "" "ne peut utiliser le nom de la fonction « %s » comme variable ou tableau" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "référence à un argument non initialisé « %s »" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "référence à une variable non initialisée « %s »" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concaténation: effects de bord dans une expression a modifié la longueur " "d'une autre!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "affectation utilisé dans un contexte conditionnel" #: eval.c:1278 msgid "division by zero attempted" msgstr "tentative de division par zéro" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "tentative de division par zéro dans « %% »" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "type illégal (%s) dans tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "tentative de division par zéro dans « /= »" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "tentative de division par zéro dans « %%= »" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "fonction « %s » appelée avec plus d'arguments que déclarées" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "fonction « %s » non définie" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Appel d'une fonction sur la pile:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "#t# -- main --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "tentative de référence un champ à partir d'une valeur non numérique" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "tentative de référence à partir d'une chaîne nulle" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "tentative d'accès du champ %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "" "l'affectation n'est pas permise pour obtenir un résultat d'une fonction " "interne" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "« IGNORECASE » est une extension de gawk" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "« BINMODE » est une extension de gawk" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "« %sFMT » spécification erronée « %s »" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "désactivation « --lint » en raison d'une affectation à « LINT »" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "« extension » est une extension de gawk" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: ne peut ouvrir « %s » (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: librairie « %s »: ne peut appeler la fonction « %s » (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "extension: nom de fonction manquant" #: ext.c:107 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: caractère illégal « %c » dans le nom de la fonction « %s »" #: ext.c:113 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: ne peut redéfinir la fonction « %s »" #: ext.c:117 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: fonction « %s » est déjà définie" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "extension: ne peut utilisé la fonction interne gawk « %s » comme nom de " "fonction" #: ext.c:124 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: nom de la fonction « %s » définie précédemment" #: ext.c:201 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "" "fonction « %s » est définie pour ne prendre pas plus de « %d » argument(s)" #: ext.c:204 #, c-format msgid "function `%s': missing argument #%d" msgstr "fonction « %s »: argument #%d manquant" #: ext.c:214 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "" "fonction « %s »: argument #%d: tentative d'utilisation du scalaire comme un " "tableau" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" "fonction « %s »: argument #%d: tentative d'utiliser un tableau comme un " "scalaire" #: ext.c:243 msgid "Operation Not Supported" msgstr "Opération non supportée" #: field.c:326 msgid "NF set to negative value" msgstr "NF initialisé avec une valeur négative" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: 2e argument n'est pas un tableau" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: chaîne vide pour le 3e argument est une extension de gawk" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "« FIELDWIDTHS » est une extension de gawk" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "valeur de FIELDWIDTHS invalide, près de `%s'" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "chaîne vide pour « FS » est une extension de gawk" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: option « %s » est ambiguë\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: option « --%s » n'admet pas d'arguement\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: l'option « %c%s » ne requiert pas d'arguement\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: l'option « %s » requiert un argument\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: option non reconnue « --%s »\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: option non reconnue « %c%s »\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: option illégale -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: option invalide -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: l'option requiert un arguement -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: l'option « -W %s » est ambiguë\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: l'option « -W %s » ne requiert pas d'arguement\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "ne peut ouvrir le fichier « %s » en lecture (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "fermeture de fd %d (« %s ») en échec (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "type d'arbre invalide %s dans redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "" "l'expression de la redirection de « %s » a seulement une valeur numérique" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "" "l'expression de la redirection de « %s » a une valeur nulle pour la chaîne" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "nom de fichier « %s » pour le redirection « %s » peut être le résultat d'une " "expression logique" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "mélange non nécessaire de « > » et de « >> » pour le fichier « %.*s »" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "ne peut ouvrir un pipe « %s » en sortie (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "ne peut ouvrir un pipe « %s » en entrée (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "" "ne peut ouvrir un socket bidirectionnel « %s » pour les entrées/sorties (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "" "ne peut ouvrir un pipe bidirectionnel « %s » pour les entrées/sorties (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "ne peut rediriger de « %s » (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "ne peut rediriger vers « %s » (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "limite système atteinte pour l'ouverture des fichiers: début du multiplexage " "des descripteurs de fichiers" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "fermeture de « %s » en échec (%s)" #: io.c:811 msgid "too many pipes or input files open" msgstr "trop de pipes ou de fichiers en lecture ouverts" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: 2e argument doit être « to » ou « from »" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: « %.*s » n'est pas ni un fichier ouvert, pipe ou co-processus" #: io.c:852 msgid "close of redirection that was never opened" msgstr "fermeture de la redirection qui n'a jamais été ouverte" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: redirection « %s » n'a pas été ouverte ave « |& » 2e argument ignoré" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "constat d'échec (%d) lors de la fermeture du pipe « %s » (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "constat d'échec (%d) lors de la fermeture du fichier « %s » (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "aucune fermeture explicite du socket « %s » fournie" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "aucune fermeture explicite du co-processus « %s » fournie" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "aucune fermeture explicite du pipe « %s » fournie" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "aucune fermeture explicite du fichier « %s » fournie" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "erreur lors de l'écriture vers stdout (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "erreur lors de l'écriture vers stderr (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "vidange du pipie de « %s » en échec (%s)" #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "vidange du pipe par le co-processus vers « %s » en échec (%s)" #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "vidange du fichier « %s » en échec (%s)" #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "le client /inet/raw n'est pas encore prêt, désolé" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "seul root peut utiliser « /inet/raw »" #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "le serveur /inet/raw n'est pas encore prêt, désolé" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "aucun protocole (connu) fourni dans le nom de fichier spécial « %s »" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "nom spécial de fichier « %s » est incomplet" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "port local invalide dans « %s »" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "un nom de hôte distant doit être fourni à « /inet »" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "un port distant doit être fournis à « /inet »" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "port distant invalide dans « %s »" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "les communications TCP/IP ne sont pas supportées" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "le fichier « %s » est un répertoire" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "utliser « PROCINFO[\"%s\"] » au lieu de « %s »" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "utliser « PROCINFO[\"%s\"] » au lieu de « /dev/user »" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "ne peut ouvrir « %s », mode « %s »" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "échec de la fermeture du pty maître (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "échec de fermeture de stdout du processus fils (%s)" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "échec de redirection de pty esclave vers stdout du processus fils (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "échec de fermeture de stdin du processus fils (%s)" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "échec de redirection du pty esclave vers stdin du processus fils (dup: %s)" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "échec de la fermeture du pty esclave (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "échec de redirection du pipe vers stdout du processus fils (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "échec de redirection du pipe vers stdin du processus fils (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "restauration de stdout par le processus parent a échoué\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "restauration de stdin par le processus parent a échoué\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "échec de la fermeture du pipe (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "« |& » non supporté" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "ne ouvrir un pipe « %s » (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "ne créer le processus fils pour « %s » (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "le fichier de données « %s » est vide" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "ne peut allouer plus de mémoire pour l'entrée" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "erreur lors de la lecture du fichier source « %s »: %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "valeur de « RS » avec multiple caractères est une extension gawk" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "« -m[fr] » est une option non pertinente en gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m usage de l'option: « -m[fr] nnn »" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: l'option « -W %s » n'est pas reconnue, ignorée\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "argument vide à l'option « --source », ignorée" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "variable d'environnement « POSIXLY__CORRECT » initialisée: utilisation de « " "--posix »" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "« --posix » écrase « --traditional »" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "« --posix »/« --traditional » écrase « --non-decimal-data »" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "" "exécution de %s en mode setuid root peut causer un problème de sécurité" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "ne peut initialiser le mode binaire sur stdin (%s)" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "ne peut initialiser le mode binaire sur stdout (%s)" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "ne peut initialiser le mode binaire sur stderr (%s)" #: main.c:572 msgid "no program text at all!" msgstr "aucun programme!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Usage: %s [style des options POSIX ou GNU] -f fichierprog [--] fichier ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Usage: %s [style des options POSIX ou GNU] [--] %cprogram%c fichier ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "Options POSIX:\t\toptions de long format GNU:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f fichierprog\t\t--file=fichierprog\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "#t-F fs\t\t\t--field-separator=fs\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "#t-v var=valeur\t\t--assign=var=valeur\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] valeur\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=fichier]\t--dump-variables[=fichier]\n" #: main.c:681 msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W exec=fichier\t\t--exec=fichier\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=fichier]\t--profile[=fichier]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=program-text\t--source=program-text\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "Pour rapporter une anomalies, voir la section « Bugs » dans « gawk.info » de " "la section\n" "« Problems and Bugs » dans la version imprimée.\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk est un langage de gtraitement et de scrutation de patrons de chaînes.\n" "Par défaut, il lit de l'entrée standard et écrit sur la sortie standard.\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "Exemples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright © 1998, 1991-%d Free Software Foundation, Inc.\n" "\n" "Ce programme est un logiciel libre; vous pouvez le redistribuer ou le\n" "modifier selon les termes de la License Publique Générale de GNU, publiée\n" "par la Free Software Foundation; soit la version 2 de la Licence ou,\n" "soit (selon vos préférences) toute version ultérieure.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Ce logiciel est distribué en espérant qu'il soit utile,\n" "mais sans AUCUNE garantie; sans la garantie liée à des raisons\n" "COMMERCIALES ou pour RÉPONDRE À UN BESOIN PARTICULIER.\n" "selon les termes de la « GNU General Public License ».\n" "Pour plus d'informations à ce sujet, consulter la « GNU General Public " "License ».\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Vous devriez avoir reçu copie de la Licence Publique Générale de GNU\n" "avec ce programme; sinon, sinon écrire à la Free Software Foundation, Inc.,\n" "51 Franklin Street, FIth Floor, Boston, MA 02110-1301, USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "" "-Ft ne permet pas d'initialiser FS à un tabulateur dans la version POSIX de " "awk" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" "%s: « %s » argument pour « -v » n'utilise pas la formulation « var=valeur »\n" "\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "« %s » n'est pas un nom légal de variable" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "« %s » n'est pas un nom de variable, recherche du fichier « %s=%s »" #: main.c:1074 msgid "floating point exception" msgstr "exception de la virgule flottante" #: main.c:1081 msgid "fatal error: internal error" msgstr "erreur fatale: erreur interne" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "aucun fd pré-ouvert pour %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "ne peut pré-ouvrir /dev/null pour le descripteud fd %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "n'a pu trouvé les groupes: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "cmd. ligne:" #: msg.c:120 msgid "warning: " msgstr "AVERTISSEMENT:" #: msg.c:142 msgid "error: " msgstr "Erreur: " #: msg.c:178 msgid "fatal: " msgstr "Fatal: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "ne peut convertir la chaîne en nombre flottant" #: node.c:414 msgid "backslash at end of string" msgstr "barre oblique inverse à la fin de la chaîne" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX ne permet pas de séquence d'échappement « \\x »" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "aucun chiffre hexadécimal dans la séquence d'échappement « \\x » " #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "séquence d'échappement « \\%c » traitée simplement comme « %c »" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s « %s »: ne peut initialiser close-on-exec: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "ne peut ouvrir « %s » en écriture: %s" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "erreur interne: %s avec un vname nul" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# traité de manière interne comme « delete »" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "# cela est un extension d'une fonction chargée dynamiquement" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# profile gawk, créé %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "#t# DÉBUT de bloc(s)\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Règle(s)\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# FIN de bloc(s)\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Liste alphabétique des fonctions\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "type %s inattendu dans prec_level" #: regcomp.c:160 msgid "Success" msgstr "Succès" #: regcomp.c:163 msgid "No match" msgstr "Aucune concordance" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Expression régulière invalide" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Caractère de collation invalide" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Nom de classe de caractères invalide" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Barre oblique inverse de terminaison" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Mauvaise référence arrière" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "Non appariement de [ ou [^" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "Non appariement de ( ou \\(" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "Non appariement de \\{" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Contenu invalide de \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Borne finale invalide" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Mémoire épuisée" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Expression régulière précédente invalide" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Fin prématurée de l'expression régulière" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Expression régulière trop grande" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr "Non appariement de ) ou \\)" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Aucune expression régulière antérieure" #~ msgid "function %s called\n" #~ msgstr "fonction %s appelée\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "champ %d dans FIELDWIDTHS, doit être > 0" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "" #~ "destruction: utilisation illégale d'une variable « %s » comme tableau" #~ msgid "asort: first argument is not an array" #~ msgstr "asort(): le premier argument n'est pas dans le tableau" #~ msgid "asort: second argument is not an array" #~ msgstr "asort(): le scond argument n'est pas dans le tableau" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "Pour rapporter une anomalie, voir « Bugs » dans « gawk.info », dans la\n" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "syntaxe invalide dans le nom « %s » pour l'affectation de variable" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "erreur interne: Node_var_array avec un vname nul" #~ msgid "or used in other expression context" #~ msgstr "ou utilisée dans un autre contexte d'expression" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "« %s » est une fonction, l'affectation n'est pas permise" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "Les blocs de DÉBUT doitvent avoir une partie action" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "« nextfile » utilisé dans l'action BEGIN ou END" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "« getline » non redirigé indéfini à l'intérieur de l'action BEGIN ou END" #~ msgid "fptr %x not in tokentab\n" #~ msgstr "fptr %x n'est pas dans la table des jetons\n" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "gsub: 3e paramètre n'est pas un objet interchangeable" #~ msgid "Unfinished \\ escape" #~ msgstr "séquence d'échappement \\ non terminée" #~ msgid "unfinished repeat count" #~ msgstr "répétition de compteur non terminé" #~ msgid "malformed repeat count" #~ msgstr "compteur de répétition mal composé" #~ msgid "Unbalanced [" #~ msgstr "Non appariement de [" #~ msgid "Unbalanced (" #~ msgstr "Non appariement de (" #~ msgid "No regexp syntax bits specified" #~ msgstr "Aucune syntaxe d'expression régulière des bits fournie" #~ msgid "Unbalanced )" #~ msgstr "Non appariement de )" #~ msgid "out of memory" #~ msgstr "Mémoire épuisée" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "erreur interne: fichier « %s », ligne %d\n" #~ msgid "pipe from `%s': could not set close-on-exec (fcntl: %s)" #~ msgstr "pipe de `%s': ne peut initialiser close-on-exec (fcntl: %s)" #~ msgid "pipe to `%s': could not set close-on-exec (fcntl: %s)" #~ msgstr "pipe vers «%s»: ne peut initialiser close-on-exec (fcntl: %s)" EOF echo - 'ga.po' cat << 'EOF' > 'ga.po' # Irish translations for gawk. # Copyright (C) 2004 Free Software Foundation, Inc. # Kevin Patrick Scannell , 2004. # Peadar Ó Guilín , 2005. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.31\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2005-01-03 13:47-0500\n" "Last-Translator: Peadar Ó Guilín \n" "Language-Team: Irish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, fuzzy, c-format msgid "attempt to use function `%s' as an array" msgstr "iarracht feidhm `%s' a úsáid mar eagar" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "iarracht paraiméadar scálach `%s' a úsáid mar eagar" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "iarracht scálach '%s' a úsáid mar eagar" #: array.c:156 #, fuzzy, c-format msgid "from %s" msgstr "%s ( ó %s)" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "tagairt do eilimint gan túsú `%s[\"%s\"]'" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "is teaghrán folamh é foscript an eagair `%s'" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: níl innéacs `%s' san eagar `%s'" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: folamh (neamhní)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: folamh (nialas)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: méid_tábla = %d, méid_eagair = %d\n" #: array.c:829 #, fuzzy, c-format msgid "%s: is parameter\n" msgstr "%s: is paraiméadar é\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: tagairt_eagair do %s\n" #: awkgram.y:208 #, fuzzy, c-format msgid "%s blocks must have an action part" msgstr "tá gá le páirt gníomhach ag blocanna CRÍOCH" #: awkgram.y:211 #, fuzzy msgid "each rule must have a pattern or an action part" msgstr "tá gá le páirt gníomhach ag blocanna CRÍOCH" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "is feidhm insuite í `%s', ní féidir í a shainmhíneadh" #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "tá cuma nóta tráchta C ar an dtairiseach `/%s/', ach ní nóta tráchta é" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "tá cuma nóta tráchta C ar an dtairiseach `/%s/', ach ní nóta tráchta é" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "seans nach mbeidh éifeacht ag an ráiteas" #: awkgram.y:440 awkgram.y:460 #, fuzzy, c-format msgid "`%s' used in %s action" msgstr "`next' á úsáid ag an gníomh TÚS nó CRÍOCH" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "is feabhsúchán gawk é `nextfile'" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "`return' á úsáid lasmuigh den comhthéacs feidhmach" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "is dóigh gur chóir go mbeadh an gnáth `print' sa riail TÚS nó CRÍOCH " "scríobhtha mar `print \"\"'" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "is feabhsúchán gawk é `delete array'" #: awkgram.y:540 awkgram.y:547 #, fuzzy msgid "`delete(array)' is a non-portable tawk extension" msgstr "is feabhsúchán gawk é `delete array'" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "ní oibríonn pílínte déthreo ilchéimeacha" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "slonn ionadaíochta ar dhéis an sannacháin" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "slonn ionadaíochta ar chlé an oibreoirí `~' nó `!~'" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "slonn ionadaíochta ar dhéis na comparáide" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "ní shannadh `getline' neamhatreoraithe lasmuigh den ghníomh CRÍOCH" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "tá glao `length' gan lúibíní doiompairtha" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "lochtaíonn POSIX glao `length' gan lúibíní" #: awkgram.y:962 msgid "use of non-array as array" msgstr "" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "slonn foscripte neamhbhailí" #: awkgram.y:1171 #, fuzzy msgid "unexpected newline or end of string" msgstr "líne nua gan súil" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "téacs feidhmchlár folamh ar líne na n-orduithe" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "ní féidir an comhad foinseach `%s' a oscailt chun léamh (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "ní féidir an comhad foinseach `%s' a léamh (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "comhad foinseach `%s' folamh" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "ní chríochnaíonn an comhad foinseach le líne nua" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "críochnaíonn regexp gan chríochnú le `\\' ag an gcomhadchríoch" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "slonn ionadaíochta gan críochnú" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "slonn ionadaíochta gan críochnú ag an gcomhadchríoch" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "níl úsáid `\\ #...' mar leanúint líne doiompartha" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "ní cúlslais é carachtar deireanach an líne" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "ní cheadaíonn POSIX an t-oibreoir `**='" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "ní cheadaíonn sean awk an t-oibreoir `**='" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "ní cheadaíonn POSIX an t-oibreoir `**='" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "ní cheadaíonn sean awk an t-oibreoir `**='" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "tá an t-oibreoir `^=' gan tacaíocht sa shean awk" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "tá an t-oibreoir `^' gan tacaíocht sa shean awk" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "teaghrán gan chríochnú" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "carachtar neamhbhailí '%c' sa slonn" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "is feabhsúchán gawk é `%s'" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "is feabhsúchán Bell Labs é `%s'" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "ní cheadaíonn POSIX `%s'" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "tá `%s' gan tacaíocht sa shean awk" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "deirtear go bfhuil `goto' dochrach!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d oiread argóintí neamhbhailí le haghaidh %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "meaitseáil: is feabhsúchán gawk é an tríú argóint" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: ní bhíonn aon éifeacht ag teaghrán litriúil mar arg deireanach an ionadaí" #: awkgram.y:2339 #, fuzzy, c-format msgid "%s third parameter is not a changeable object" msgstr "ní oibiacht athraitheach é an tríú paraiméadar ionadaíoch" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: is feabhsúchán gawk é an dara hargóint" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "tá úsáid dcgettext(_\"...\") mí-cheart: bain amach an chéad fhostríoc" #: awkgram.y:2394 #, fuzzy msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "tá úsáid dcgettext(_\"...\") mí-cheart: bain amach an chéad fhostríoc" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "feidhm `%s': is cóip é paraiméadar #%d, `%s', den paraiméadar #%d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "feidhm `%s': leanann paraiméadar `%s' an athróg domhanda" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "níorbh fhéidir `%s' a oscailt chun scríobh (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "ag seoladh cuntas go earráid chaighdeánach" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: theip ar an dún (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "glaodh dhá uair ar shadow_funcs()!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "feidhm `%s': níl cead ainm feidhme a úsáid mar ainm paraiméadar" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "ainm feidhme `%s' sainmhínithe chéana" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "glaodh ar an bhfeidhm `%s' nach bhfuil sainithe" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "tá sainiú ag an bhfeidhm `%s' ach ní ghlaodh é" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "tagann luach Boole de bharr ón dtairiseach regexp don paraiméadar #%d" #: awkgram.y:3105 #, fuzzy, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "glaodh feidhm `%s' le spás idir ainm agus `(',\n" "%s" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "theip ar %s go \"%s\" (%s)" #: builtin.c:146 msgid "standard output" msgstr "aschur caighdeánach" #: builtin.c:147 msgid "reason unknown" msgstr "níl fhios an fáth" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: fuarthas argóint neamhuimhriúil" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argóint %g as raon" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "fflush: ní dhúisófear: píopa `%s' oscailte do léamh, ní do scríobh" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "fflush: ní dhúisófear: comhad `%s' oscailte do léamh, ní do scríobh" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: ní comhad, píopa nó comhphróiseas oscailte é `%s'" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: ní teaghrán é an chéad argóint" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: ní teaghrán é an dara hargóint" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: fuarthas argóint neamhuimhriúil" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "is feabhsúchán gawk é `delete array'" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: fuarthas argóint nach teaghrán é" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: fuarthas argóint neamhuimhriúil" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: fuarthas argóint diúltach %g" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "Níl `$' ceadaithe i bhformáidí awk" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "caithfidh áireamh na harg. le `$' bheith > 0" #: builtin.c:786 #, fuzzy, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "áireamh na harg. %d níos mó ná na hargóintí faighte" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "níl `$' ceadaithe i bhformáid théis punc" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "níor thugadh `$' do leithead nó beachtas an réimse ionaid" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "níl ciall ag `l' i bhformáidí awk; neamhairdithe" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "ní cheadaítear `l' i bhformáidí awk POSIX" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "níl ciall ag `L' i bhformáidí awk; neamhairdithe" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "ní cheadaítear `L' i bhformáidí awk POSIX" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "níl ciall ag `h' i bhformáidí awk; neamhairdithe" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "ní cheadaítear `h' i bhformáidí awk POSIX" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "ní leor argóintí le haghaidh an teaghráin formáide" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ imithe thar bráid don cheann seo" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: níl litir rialúcháin ag an sonraitheoir formáide" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "fuarthas an iomarca argóintí don teaghrán formáide" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: níl aon argóint" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: fuarthas argóint neamhuimhriúil" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: glaodh le argóint diúltach %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: tá tús innéacs %g neamhbhailí, ag úsáid a 1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: teascófar tús neamhuimhriúil an innéacs %g" #: builtin.c:1353 #, fuzzy, c-format msgid "substr: length %g is not >= 1" msgstr "substr: tá fad %g <= 0" #: builtin.c:1355 #, fuzzy, c-format msgid "substr: length %g is not >= 0" msgstr "substr: tá fad %g <= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "ubstr: teascófar an fad neamhuimhriúil %g" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: tá an teaghrán foinse folamh" #: builtin.c:1395 #, fuzzy, c-format msgid "substr: start index %g is past end of string" msgstr "substr: tosaíonn innéacs %d théis deireadh an teaghráin" #: builtin.c:1403 #, fuzzy, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "substr: fad %d ag tús innéacs %d ró-fhada don chéad argóint (%d)" #: builtin.c:1478 #, fuzzy msgid "strftime: received non-string first argument" msgstr "strftime: ní teaghrán é an chéad argóint" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: fuarthas teaghrán formáide folamh" #: builtin.c:1493 #, fuzzy msgid "strftime: received non-numeric second argument" msgstr "strftime: fuarthas dara hargóint neamhuimhriúil" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: ní teaghrán é an argóint" #: builtin.c:1601 #, fuzzy msgid "system: received non-string argument" msgstr "system: ní teaghrán é an argóint" #: builtin.c:1722 eval.c:2039 #, fuzzy, c-format msgid "reference to uninitialized field `$%d'" msgstr "tagairt do athróg nach bhfuil túsaithe `%s'" #: builtin.c:1827 #, fuzzy msgid "tolower: received non-string argument" msgstr "tolower: ní teaghrán é an argóint" #: builtin.c:1857 #, fuzzy msgid "toupper: received non-string argument" msgstr "toupper: ní teaghrán é an argóint" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: ní huimhir é an chéad argóint" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: ní huimhir é an dara hargóint" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: fuarthas argóint neamhuimhriúil" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: fuarthas argóint neamhuimhriúil" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: fuarthas argóint neamhuimhriúil" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: ní eagar é an tríú argóint" #: builtin.c:2555 #, fuzzy msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: 3ú argóint as 0 úsáidte mar 1" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: ní huimhir é an chéad argóint" #: builtin.c:2717 #, fuzzy msgid "lshift: received non-numeric second argument" msgstr "atan2: ní huimhir é an dara hargóint" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): tiocfaidh torthaí aisteacha as luachanna diúltacha" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): teascófar luachanna codánacha" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): gheobhfar torthaí aisteacha le luach iomlaoidach ró-mhór" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: ní huimhir é an chéad argóint" #: builtin.c:2755 #, fuzzy msgid "rshift: received non-numeric second argument" msgstr "atan2: ní huimhir é an dara hargóint" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): gheobhfar torthaí aisteacha le luachanna diútlacha" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): teascófar luachanna codánacha" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): gheobhfar torthaí aisteacha le luach iomlaoidach ró-mhór" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: ní huimhir é an chéad argóint" #: builtin.c:2793 #, fuzzy msgid "and: received non-numeric second argument" msgstr "atan2: ní huimhir é an dara hargóint" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): gheobhfar torthaí aisteacha le luachanna diútlacha" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): teascófar luachanna codánacha" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: ní huimhir é an chéad argóint" #: builtin.c:2829 #, fuzzy msgid "or: received non-numeric second argument" msgstr "atan2: ní huimhir é an dara hargóint" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): gheobhfar torthaí aisteacha le luachanna diútlacha" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): teascófar luachanna codánacha" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: ní huimhir é an chéad argóint" #: builtin.c:2865 #, fuzzy msgid "xor: received non-numeric second argument" msgstr "atan2: ní huimhir é an dara hargóint" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): gheobhfar torthaí aisteacha le luachanna diútlacha" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): teascófar luachanna codánacha" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: fuarthas argóint neamhuimhriúil" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): gheobhfar torthaí aisteacha le luachanna diútlacha" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): teascófar luachanna codánacha" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: ní catagóir logánach ceart é `%s'" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr " cineál anaithnid nóid %d" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "maolán thar maoil i genflags2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "iarracht eagar `%s' a úsáid i gcomhthéacs scálach" #: eval.c:733 #, fuzzy, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "lúb for: d'athraigh méid an eagair `%s' ó %d go %d i lár na lúibe" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "níl `break' lasmuigh den lúb iniompartha" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "níl `break' lasmuigh den lúb ceadaithe" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "níl `continue' lasmuigh den lúb iniompartha" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "níl `continue' lasmuigh den lúb ceadaithe" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "ní féidir glaoigh ar `next' ó riail TÚS" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "ní féidir glaoigh ar `next' ó riail CRÍOCH" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "ní féidir glaoigh ar `nextfile' ó riail TÚS" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "ní féidir glaoigh ar `nextfile' ó riail CRÍOCH" #: eval.c:875 msgid "statement has no effect" msgstr "níl aon éifeacht ag an ráiteas" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "ní féidir ainm feidhme `%s' a úsáid mar athróg nó eagar" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "tagairt do argóint nach bhfuil túsaithe `%s'" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "tagairt do athróg nach bhfuil túsaithe `%s'" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "comhchaitéiniú: d'athraigh éifeachtaí sloinn amháin fad ceann eile!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "sannadh úsáidte i gcomhthéacs coinníollach" #: eval.c:1278 msgid "division by zero attempted" msgstr "iarracht roinnt le nialas a dhéanamh" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "iarracht roinnt le nialas a dhéanamh i `%%'" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "cineál neamhcheadaithe (%s) i tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "iarracht roinnt le nialas a dhéanamh i `/='" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "iarracht roinnt le nialas a dhéanamh i `%%='" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "glaodh ar fheidhm `%s' le níos mó argóintí nó mar a bhí fógartha" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "feidhm `%s' gan sainmhíniú" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Cruach an Glaoigh ar an bhFeidhm:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- príomh --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "iarracht tagairt a fháil ó luach neamhuimhriúil" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "iarracht tagairt a fháil ó theaghrán neamhnitheach" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "iarracht rochtain a dhéanamh ar réimse %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "ní féidir sannachán a dhéanamh le toradh ó feidhm insuite" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "is feabhsúchán gawk é `IGNORECASE'" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "is feabhsúchán gawk é `BINMODE'" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "droch sonraíocht`%sFMT' `%s'" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "ag múchadh `--lint' de bharr sannachán go `LINT'" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "is feabhsúchán gawk é `extension'" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: ní féidir oscailt `%s' (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: leabharlann `%s': ní féidir glaoigh ar fheidhm `%s' (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "" #: ext.c:107 #, fuzzy, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: leabharlann `%s': ní féidir glaoigh ar fheidhm `%s' (%s)\n" #: ext.c:113 #, fuzzy, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: ní féidir oscailt `%s' (%s)\n" #: ext.c:117 #, fuzzy, c-format msgid "extension: function `%s' already defined" msgstr "feidhm `%s' gan sainmhíniú" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" #: ext.c:124 #, fuzzy, c-format msgid "extension: function name `%s' previously defined" msgstr "ainm feidhme `%s' sainmhínithe chéana" #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "tá sainiú ag an bhfeidhm `%s' ach ní ghlaodh é" #: ext.c:204 #, fuzzy, c-format msgid "function `%s': missing argument #%d" msgstr "feidhm `%s' gan sainmhíniú" #: ext.c:214 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "iarracht scálach '%s' a úsáid mar eagar" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" #: ext.c:243 msgid "Operation Not Supported" msgstr "Oibríocht Gan Tacaíocht" #: field.c:326 msgid "NF set to negative value" msgstr "NF socraithe go luach diúltach" #: field.c:819 msgid "split: second argument is not an array" msgstr "scoilt: ní eagar é an dara hargóint" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "scoilt: is feabhsúchán gawk é an teaghrán neamhnitheach don tríú arg" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "is feabhsúchán gawk é `FIELDWIDTHS'" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "is feabhsúchán gawk é an teaghrán neamhnitheach do `FS'" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: tá an rogha `%s' débhríoch\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: ní cheadaítear argóint i ndiaidh an rogha `--%s'\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: ní cheadaítear argóint i ndiaidh an rogha `%c%s'\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: ní foláir argóint don rogha `%s'\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: rogha anaithnid `--%s'\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: rogha anaithnid `%c%s'\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: rogha neamhcheadaithe -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: rogha neamhbhailí -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: ní foláir argóint don rogha -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: Tá an rogha `-W %s' débhríoch\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: ní cheadaítear argóint i ndiaidh an rogha `-W %s'\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "ní féidir `%s' a oscailt chun é a léamh (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "dúnadh fd %d (`%s') teipthe (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "cineál crainn %s neamhbhailí san atreorú()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "níl ach luach uimhriúil ag an slonn in atreorú `%s'" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "tá luach teaghráin neamhnitheach ag an slonn in atreorú `%s'" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "seans gur toradh sloinn loighciúil é an comhadainm `%s' don atreorú `%s'" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "meascán neamhriachtanach de `>' agus `>>' do chomhad `%.*s'" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "ní féidir píopa `%s' a oscailt do aschur (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "ní féidir píopa `%s' a oscailt do ionchur (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "ní féidir an soicéad déthreo `%s' a oscailt do ionchur/aschur (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "ní féidir an píopa déthreo `%s' a oscailt do ionchur/aschur (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "ní féidir atreorú ó `%s' (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "ní féidir atreorú go `%s' (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "tagtha chuig teorainn córais do chomhadlanna oscailte: ag tosnú " "tuairisceoirí na gcomhadlann a ilphléacsadh" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "dúnadh `%s' teipthe (%s)." #: io.c:811 msgid "too many pipes or input files open" msgstr "tá an iomarca píopaí nó comhadlanna ionchuir oscailte" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: tá `to' nó `from' de dhíth mar dara hargóint" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: ní comhad oscailte, píopa nó comhphróiséas é `%.*s'" #: io.c:852 msgid "close of redirection that was never opened" msgstr "dúnadh atreoraithe nach n-osclóadh ariamh" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: níl atreorú `%s' oscailte le `|&', rinneadh neamhaird ar an dara " "hargóint" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "stádas teipfhulangach (%d) ar dúnadh an phíopa `%s' (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "stádas teipfhulangach (%d) ar dúnadh an chomhaid `%s' (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "ní fhuarthas dúnadh léir an tsoicéid `%s'" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "ní fhuarthas dúnadh léir an chomhphróiseis `%s'" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "ní fhuarthas dúnadh léir an phíopa `%s'" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "ní fhuarthas dúnadh léir an chomhaid `%s'" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "earráid agus ag scríobh go haschur caighdeánach (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "earráid agus ag scríobh go hearráid caighdeánach (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "sruthladh píopa `%s' teipthe (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "sruthladh comhphróseis an phíopa go `%s' teipthe (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "sruthladh comhaid `%s' teipthe (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "tá brón orm, níl an cliant /inet/raw réidh go fóill" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "`/inet/raw' ceadaithe do root amháin." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "tá brón orm, níl an freastalaí /inet/raw ré go fóill" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "ní fhuarthas fíor phrótacal sa chomhadainm speisialta `%s'" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "níl an comhadainm speisialta `%s' iomlán" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "port logánta neamhbhailí i `%s'" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "tá ainm cianóstaigh de dhíth ag `/inet'" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "tá cianphort de dhíth ag `/inet'" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "cianphort neamhbhailí i `%s'" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "cumarsáid TCP/IP gan tacaíocht" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "ní comhadlann é an comhad `%s'" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "úsáid `PROCINFO[\"%s\"]' in ionad `%s'" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "úsáid `PROCINFO[...]' in ionad `/dev/user'" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "níorbh fhéidir `%s' a oscailt, mód `%s'" #: io.c:1814 #, fuzzy, c-format msgid "close of master pty failed (%s)" msgstr "theip ar dúnadh phíopa (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "theip ar dúnadh aschuir caighdeánach i mac teipthe (%s)" #: io.c:1819 #, fuzzy, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "ag bogadh píopa go haschur caighdeánach i mac teipthe (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "theip ar dúnadh ionchuir caighdeánach i mac teipthe (%s)" #: io.c:1824 #, fuzzy, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "ag bogadh píopa go ionchur caighdeánach i mac teipthe (dup: %s)" #: io.c:1826 io.c:1845 #, fuzzy, c-format msgid "close of slave pty failed (%s)" msgstr "theip ar dúnadh phíopa (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "ag bogadh píopa go haschur caighdeánach i mac teipthe (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "ag bogadh píopa go ionchur caighdeánach i mac teipthe (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "theip ar dul ar ais go haschur caighdeánach i máthair teipthe\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "theip ar dul ar ais go ionchur caighdeánach i máthair teipthe\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "theip ar dúnadh phíopa (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "`|&' gan tacaíocht" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "ní féidir píopa `%s' a oscailt (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "ní féidir mac a dhéanamh do `%s' (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "tá comhad sonraí `%s' folamh" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "earráid ag léamh comhad aschuir `%s': %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "is feabhsúchán gawk é an luach ilcharachtar 'RS'" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "`-m[fr]' rogha neamhábhartha i ngawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "úsáid rogha -m: `-m[fr] nnn'" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: rogha `-W %s' anaithnid, rinneadh neamhshuim air\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "rinneadh neamhshuim ar argóint folamh go `--source'" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "athróg thimpeallachta `POSIXLY_CORRECT' socraithe: ag lasadh `--posix'" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "sáraíonn `--posix' `--traditional'" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "sáraíonn `--posix'/`--traditional' `--non-decimal-data'" #: main.c:487 #, fuzzy, c-format msgid "running %s setuid root may be a security problem" msgstr "seans gur neamhdhaingean é ag rith %s setuid root" #: main.c:528 #, fuzzy, c-format msgid "can't set binary mode on stdin (%s)" msgstr "ní féidir mód a shocrú ar stdin (%s)" #: main.c:531 #, fuzzy, c-format msgid "can't set binary mode on stdout (%s)" msgstr "ní féidir mód a shocrú ar stdout (%s)" #: main.c:533 #, fuzzy, c-format msgid "can't set binary mode on stderr (%s)" msgstr "ní féidir mód a shocrú ar stderr (%s)" #: main.c:572 msgid "no program text at all!" msgstr "níl aon téacs sa ríomhchlár!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Úsáid: %s [roghanna cineál POSIX nó GNU] -f clárchomhad [--] comhad ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Úsáid: %s [roghanna cineál POSIX nó GNU] [--] %críomhchlár%c comhad ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "roghanna POSIX:\t\tGNU roghanna fada:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f comhad\t\t--file=progfile\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v athróg=luach\t\t--assign=athróg=luach\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] luach\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=comhad]\t--dump-variables[=comhad]\n" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W profile[=comhad]\t--profile[=comhad]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=comhad]\t--profile[=comhad]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=program-text\t--source=program-text\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 #, fuzzy msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "sa rannán `Reporting Problems and Bugs' sa leagan faoi chló.\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "Is saorbhogearra an ríomhchlár seo; is féidir leat é a scaipeadh agus/nó\n" "a athrú de réir na gcoinníollacha den GNU General Public License mar atá\n" "foilsithe ag an Free Software Foundation; faoi leagan 2 den cheadúnas,\n" "nó (más mian leat) aon leagan níos déanaí.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Scaiptear an ríomhchlár seo le súil go mbeidh sé áisiúil,\n" "ach GAN AON BARÁNTA; go fiú gan an barántas intuigthe de\n" "INDÍOLTACHT nó FEILIÚNACHT DO FHEIDHM AR LEITH. Féach ar an\n" "GNU General Public License chun níos mó sonraí a fháil.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Ba chomhair go mbeifeá tar éis cóip den GNU General Public License a fháil\n" "in éineacht leis an ríomhchlár seo; mura bhfuair, scríobh chuig an\n" "Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,\n" "Boston, MA 02110-1301, USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "ní athraíonn -Ft FS go táb san awk POSIX" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "" #: main.c:1074 msgid "floating point exception" msgstr "eisceacht snámhphointe" #: main.c:1081 msgid "fatal error: internal error" msgstr "earráid marfach: earráid inmheánach" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "níl aon fd %d réamhoscailte" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "níorbh fhéidir /dev/null a réamhoscailt do fd %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "ní féidir na grúpaí a aimsiú: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "líne na n-orduithe:" #: msg.c:120 msgid "warning: " msgstr "rabhadh: " #: msg.c:142 msgid "error: " msgstr "earráid: " #: msg.c:178 msgid "fatal: " msgstr "marfach: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "ní féidir teaghrán a thiontú go snámhphointe" #: node.c:414 msgid "backslash at end of string" msgstr "cúlslais ag deireadh an teaghráin" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "ní cheadaíonn POSIX éalaithe `\\x'" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "níl digití heicsidheachúlach sa seicheamh éalaithe `\\x'" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "seicheamh éalaithe `\\%c' úsáidte mar ghnáth `%c'" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s `%s': níorbh fhéidir close-on-exec a shannadh: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "Níorbh fhéidir `%s' a oscailt chun scríoch ann: %s" #: profile.c:467 #, fuzzy, c-format msgid "internal error: %s with null vname" msgstr "earráid inmheánach: Node_var le vname nialasacha" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# cuntas gawk, cruthaíodh %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# TÚS bloc(anna)\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Riail(eacha)\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# CRÍOCH bloc(anna)\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Feidhmeanna, i liosta aibítreach\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "cineál gan súil %s i prec_level" #: regcomp.c:160 msgid "Success" msgstr "Bua!" #: regcomp.c:163 msgid "No match" msgstr "Níl a leithéid ann" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Slonn ionadaíochta neamhbhailí" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Carachtar neamhbhailí cóimheasa" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Aicme neamhbhailí charachtair" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Cúlslais ag deireadh" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Cúltagairt neamhbhailí" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "[ nó [^ corr" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "( nó \\( corr" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "\\{ corr" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Inneachar neamhbhailí idir \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Deireadh raoin neamhbhailí" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Cuimhne ídithe" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Is neamhbhailí an slonn ionadaíochta roimhe seo" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Deireadh le slonn ionadaíochta gan choinne" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Slonn ionadaíochta rómhór" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr ") nó \\) corr" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Níl aon slonn ionadaíochta roimhe seo" #~ msgid "function %s called\n" #~ msgstr "glaodh ar fheidhm %s\n" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: úsáid neamhdhleathach na hathróige `%s' mar eagar" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: ní eagar é an chéad argóint" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: ní eagar é an dara hargóint" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "Chun tuairiscí fabhtanna a sheoladh, féach ar `Bugs' sa `gawk.info', atá\n" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "comhréir mícheart san ainm `%s' chun athróga a shannadh" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "earráid inmheánach: Node_var_array le vname nialasacha" #~ msgid "or used in other expression context" #~ msgstr "nó úsaidte i gcomhthéacs sloinn eile" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "is feidhm í `%s', ní féidir sannachán a dhéanamh" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "tá gá le páirt gníomhach ag blocanna TÚS" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "`nextfile' á úsáid ag an gníomh TÚS nó CRÍOCH" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "ní shannadh `getline' neamhatreoraithe lasmuigh den ghníomh TÚS nó CRÍOCH" #~ msgid "fptr %x not in tokentab\n" #~ msgstr "níl fptr %x ar fáil sa tháb ceadchomharthaí\n" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "ní oibiacht athraitheach é an tríú paraiméadar ionadaíoch gsub" # FARF - KPS #~ msgid "Unfinished \\ escape" #~ msgstr "Seicheamh éalúcháin \\ gan chríochnú" #~ msgid "unfinished repeat count" #~ msgstr "Tá líon na hathráite neamhiomlán" # more precisely, "the string indicating the repeat count" is malformed -- KPS #~ msgid "malformed repeat count" #~ msgstr "Tá líon na hathráite míchumtha" #~ msgid "Unbalanced [" #~ msgstr "[ corr" #~ msgid "Unbalanced (" #~ msgstr "( corr" #~ msgid "No regexp syntax bits specified" #~ msgstr "Níl bearta comhréire regexp sainithe" #~ msgid "Unbalanced )" #~ msgstr ") corr" #~ msgid "out of memory" #~ msgstr "cuimhne ídithe" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "caithfidh go bhfuil réimse %d i FIELDWIDTHS > 0" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "earráid inmheánach: comhad `%s', líne %d\n" EOF echo - 'he.po' cat << 'EOF' > 'he.po' # Hebrew messages for GNU Awk -*- coding: hebrew-iso-8bit -*- # Copyright (C) 2001 Free Software Foundation, Inc. # Eli Zaretskii , 2001, 2002. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.1a\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2002-04-28 21:46+0300\n" "Last-Translator: Eli Zaretskii \n" "Language-Team: Hebrew \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-8\n" "Content-Transfer-Encoding: 8-bit\n" #: array.c:112 #, fuzzy, c-format msgid "attempt to use function `%s' as an array" msgstr "êøòîë `%s' äéö÷ðåôá ùåîéù ïåéñð" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "êøòî äéä åìéàë `%s' éøì÷ñ øèîøôá ùåîéù ïåéñð" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "êøòîë `%s' øàì÷ñá éåâù ùåîéù" # This is not translated because it cannot be reworded in Hebrew # without looking awkward. #: array.c:156 #, fuzzy, c-format msgid "from %s" msgstr "%s (from %s)" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "ìçåúî åðéàù `%s[\"%s\"]' èðîìàì äééðô" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "`%s' êøòî ïééöîë ä÷éø úæåøçîá ùåîéù" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "`%s' ïééöî ìéëî åðéà `%s' êøòî :delete" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: (ñôåàî) ÷éø\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: (ä÷éø hash úìáè) ÷éø\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: table_size = %d, array_size = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "øèîøô åðéä %s\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: %s-ì (array_ref) äéðôä\n" #: awkgram.y:208 #, fuzzy, c-format msgid "%s blocks must have an action part" msgstr "äìåòô úøãâä ìåìëì áééç END ÷åìá" #: awkgram.y:211 #, fuzzy msgid "each rule must have a pattern or an action part" msgstr "äìåòô úøãâä ìåìëì áééç END ÷åìá" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "äúøãâä úà úåðùì ïéà ,úéðáåî äéö÷ðåô äðéä `%s'" #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "äøòä åðéà êà ,C úôùá äøòä åîë äàøð `/%s/' éøìåâø éåèéá" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "äøòä åðéà êà ,C úôùá äøòä åîë äàøð `/%s/' éøìåâø éåèéá" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "úéìëú íåù äéäú àì äæ éåèéáìù ïëúé" #: awkgram.y:440 awkgram.y:460 #, fuzzy, c-format msgid "`%s' used in %s action" msgstr "END åà BEGIN ìù äìåòô úøãâäá `next'-á ùåîéù" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä åðéä `nextfile'" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "äéö÷ðåô ìù èñ÷èðå÷á àìù `return'-á ùåîéù" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "`print \"\"' úåéäì íúñä ïî êéøö END åà BEGIN éììëá èåùô `print'" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä åðéä `delete array'" #: awkgram.y:540 awkgram.y:547 #, fuzzy msgid "`delete(array)' is a non-portable tawk extension" msgstr "gawk-ì úéôéöôñ äáçøä åðéä `delete array'" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "íéãáåò íðéà íéáìù éáåøî íééðååéë-åã íé÷éôà" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "êøò úîùä úàøåä ìù ïéîé ãöá éøìåâø éåèéá" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "`!~' åà `~' øåèøôåàì ìàîùî éøìåâø éåèéá" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "äàååùä ìù ïéîé ãöá éøìåâø éåèéá" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "END úìåòô êåúá øãâåî åðéà äééðôä àìì `getline'" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "úéìéáèøåô äðéà íééøâåñ àìì `length'-ì äàéø÷" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "POSIX ï÷úì ãåâéðá äðéä íééøâåñ àìì `length'-ì äàéø÷" #: awkgram.y:962 msgid "use of non-array as array" msgstr "" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "êøòî ïééöîá éåâù øéáçú ìòá éåèéá" #: awkgram.y:1171 #, fuzzy msgid "unexpected newline or end of string" msgstr "éåôö-éúìá íå÷îá äøåù óåñ" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "äãå÷ôä úøåùî äìá÷úä ä÷éø úéðëú" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "åúàéø÷ íùì `%s' øå÷î õáå÷ úçéúôá (%s) äì÷ú" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "`%s' øå÷î õáå÷î äàéø÷á (%s) äì÷ú" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "÷éø åðéä `%s' øå÷î õáå÷" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "äøåù-óåñ åúá íééúñî åðéà øå÷îä õáå÷" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "õáå÷ä óñá `\\'-á íééúñî øåîâ-éúìá éøìåâø éåèéá" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "øåîâ-éúìá éøìåâø éåèéá" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "õáå÷ä óåñá øåîâ-éúìá éøìåâø éåèéá" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "éìéáèøåô åðéà äøåù êùîäì ïîéñë `\\ #...'-á ùåîéù" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "äøåùá ïåøçà åú åðéàù êåôä ïñëåì" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "`**=' øåèøôåà äùøî åðéà POSIX" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "`**=' øåèøôåàá êîåú åðéà ïùé awk" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "`**' øåèøôåà äùøî åðéà POSIX" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "`**' øåèøôåàá êîåú åðéà ïùé awk" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "ïùé awk-á êîúð åðéà `^=' øåèøôåà" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "ïùé awk-á êîúð åðéà `^' øåèøôåà" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "äøåîâ-éúìá úæåøçî" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "éåèéáá '%c' éåâù åú" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä äðéä `%s'" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "Bell úåãáòî úñøâá awk-ì úéôéöôñ äáçøä åðéä `%s'" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "`%s' äùøî åðéà POSIX" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "ïùé awk-á êîúð åðéà `%s'" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "!òø-òâô áùçð `goto'\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "íéèðîåâøà øôñîë %d ìá÷ì ìåëé åðéà %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä åðéä `match' ìù éùéìù èðîåâøà" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "úéìëú íåù äì ïéà `%s' ìù ïåøçà èðîåâøàë äòåá÷ úæåøçî" #: awkgram.y:2339 #, fuzzy, c-format msgid "%s third parameter is not a changeable object" msgstr "éåðéù-øá è÷ééáåà åðéà `sub' ìù éùéìù èðîåâøà" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä åðéä `close' ìù éðù èðîåâøà" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "èðîåâøà úîã÷áù ïåúçú-ó÷î ÷ìñì ùé :dcgettext(_\"...\")-á éåâù ùåîéù" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "èðîåâøà úîã÷áù ïåúçú-ó÷î ÷ìñì ùé :dncgettext(_\"...\")-á éåâù ùåîéù" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "`%s' äéö÷ðåôá %d 'ñî øèîøôì ääæ ,`%s' ,%d 'ñî øèîøô ìù åîù" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "éìáåìâ äðúùî ìò ìéôàî `%s' äéö÷ðåôá `%s' øèîøô" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "äáéúë íùì `%s' úçéúôá (%s) äì÷ú" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "éð÷ú úåàéâù õåøòì çìùð òåöéá ìéôåøô" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "`%s' úøéâñ úòá (%s) äì÷ú" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "!íééîòô äàø÷ð shadow_funcs()" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "øèîøô íùë ùîùì ìåëé åðéà äéö÷ðåô íù :`%s' äéö÷ðåôá" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "úøãâåî øáë `%s' íùá äéö÷ðåô" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "úøãâåî äðéàù `%s' äéö÷ðåôì äàéø÷" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "úàø÷ð àì êà ,äøãâåä `%s' äéö÷ðåô" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "éðàéìåá êøò áéðî %d 'ñî øèîøôë òåá÷ éøìåâø éåèéá" #: awkgram.y:3105 #, fuzzy, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" ",`(' ïéáì äîù ïéá íéçååø íò `%s' äéö÷ðåôì äàéø÷\n" "%s" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s é\"ò \"%s\"-ì äáéúëá (%s) äì÷ú" #: builtin.c:146 msgid "standard output" msgstr "úéèøãðèñ èìô úãéçé" #: builtin.c:147 msgid "reason unknown" msgstr "äòåãé-éúìá äáéñî" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "øôñî åðéà èðîåâøà :exp" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "øúåîä íåçúá åðéà %g èðîåâøà :exp" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "äáéúëì àì ,äàéø÷ì çåúô `%s' ÷éôà :õöåçä ï÷åøì ïúéð àì :fflush" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "äáéúëì àì ,äàéø÷ì çåúô `%s' õáå÷ :õöåçä ï÷åøì ïúéð àì :fflush" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "ìéá÷î êéìäú åà çåúô ÷éôà ,çåúô õáå÷ åðéà `%s' :fflush" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "úæåøçî åðéà ïåùàø èðîåâøà :index" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "úæåøçî åðéà éðù èðîåâøà :index" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "øôñî åðéà èðîåâøà :int" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä åðéä `delete array'" #: builtin.c:481 msgid "length: received non-string argument" msgstr "úæåøçî åðéà èðîåâøà :length" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "øôñî åðéà èðîåâøà :log" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "%g éìéìù èðîåâøà íò àø÷ð :log" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "ãçà óàá åà íéèîøåôä ìëá åà øúåî `count$'-á ùåîéù" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "awk ìù íéèîøåôá ùåîéùì øåñà `$'" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "0-î ìåãâ úåéäì áééç `$' ãéì èðîåâøàä äðåî" #: builtin.c:786 #, fuzzy, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "íéèðîåâøàä ìù ììåëä íøôñîî ìåãâ %d èðîåâøàä äðåî" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "èîøåôá äãå÷ðä éøçà òéôåäì ìåëé åðéà `$'" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "å÷åéã åà äãù áçåø ïééöîá èðîåâøàä äðåî øåáò `$' àöîð àì" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "çðæåä ;awk ìù èîøåôá úåòîùî øñç åðéä `l'" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "POSIX éô-ìò awk ìù èîøåôá òéôåäì ìåëé åðéà `l'" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "çðæåä ;awk ìù èîøåôá úåòîùî øñç åðéä `L'" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "POSIX éô-ìò awk ìù èîøåôá òéôåäì ìåëé åðéà `L'" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "çðæåä ;awk ìù èîøåôá úåòîùî øñç åðéä `h'" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "POSIX éô-ìò awk ìù èîøåôá òéôåäì ìåëé åðéà `h'" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "èîøåôä øåáò íéèðîåâøà ÷éôñî ïéà" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ íéèðîåâøàä éì åøîâð ïàë" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "äøîää úø÷á úåà ìéëî åðéà èîøåôä :[s]printf" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "èîøåôä øåáò íéèðîåâøà éãî øúåé" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "èðîåâøà óà ïéà :printf" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "øôñî åðéà èðîåâøà :sqrt" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "%g éìéìù èðîåâøà íò àø÷ð :sqrt" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "1-á óìçåä ,éåâù åðéä %g äìçúä ïééöî :substr" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "õöå÷é ,íìù øôñî åðéàù, %g äìçúä ïééöî ìù åëøò :substr" #: builtin.c:1353 #, fuzzy, c-format msgid "substr: length %g is not >= 1" msgstr "0-î ìåãâ øôñî åððéà %g êøåà :substr" #: builtin.c:1355 #, fuzzy, c-format msgid "substr: length %g is not >= 0" msgstr "0-î ìåãâ øôñî åððéà %g êøåà :substr" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "õöå÷é ,íìù øôñî åðéàù ,%g êøåà :substr" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "ñôà êøåàá äðéä øå÷îä úæåøçî :substr" #: builtin.c:1395 #, fuzzy, c-format msgid "substr: start index %g is past end of string" msgstr "úæåøçîä óåñì øáòî åðéä %d äìçúä ïééöî :substr" #: builtin.c:1403 #, fuzzy, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "%d äëøåàå %d ïééöîá äúìéçúù úæåøçî-úúì ÷éôñî åðéà (%d) úæåøçî êøåà :substr" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "úæåøçî åðéà ïåùàø èðîåâøà :strftime" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "ä÷éø èîøåô úæåøçî :strftime" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "øôñî åðéà éðù èðîåâøà :strftime" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "úæåøçî åðéà èðîåâøà :mktime" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "úæåøçî åðéà èðîåâøà :system" #: builtin.c:1722 eval.c:2039 #, fuzzy, c-format msgid "reference to uninitialized field `$%d'" msgstr "`%s' ìçåúî-éúìá äðúùîì äéðôä" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "úæåøçî åðéà èðîåâøà :tolower" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "úæåøçî åðéà èðîåâøà :toupper" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "øôñî åðéà ïåùàø èðîåâøà :atan2" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "øôñî åðéà éðù èðîåâøà :atan2" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "øôñî åðéà èðîåâøà :sin" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "øôñî åðéà èðîåâøà :cos" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "øôñî åðéà èðîåâøà :srand" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "êøòî åðéà éùéìù èðîåâøà :match" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "1-á óìçåä 0 åëøòù éùéìù èðîåâøà :gensub" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "øôñî åðéà ïåùàø èðîåâøà :lshift" #: builtin.c:2717 #, fuzzy msgid "lshift: received non-numeric second argument" msgstr "øôñî åðéà éðù èðîåâøà :strftime" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :lshift(%lf, %lf)" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "åööå÷é íéøåáù íéëøò :lshift(%lf, %lf)" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "úåéåôö-éúìá úåàöåú áéðé éãî ìåãâ äææä øåòéù :lshift(%lf, %lf)" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "øôñî åðéà ïåùàø èðîåâøà :rshift" #: builtin.c:2755 #, fuzzy msgid "rshift: received non-numeric second argument" msgstr "øôñî åðéà éðù èðîåâøà :strftime" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :rshift(%lf, %lf)" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "åööå÷é íéøåáù íéëøò :rshift(%lf, %lf)" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "úåéåôö-éúìá úåàöåú áéðé éãî ìåãâ äææä øåòéù :rshift(%lf, %lf)" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "øôñî åðéà ïåùàø èðîåâøà :and" #: builtin.c:2793 #, fuzzy msgid "and: received non-numeric second argument" msgstr "øôñî åðéà éðù èðîåâøà :atan2" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :and(%lf, %lf)" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "åööå÷é íéøåáù íéëøò :and(%lf, %lf)" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "øôñî åðéà ïåùàø èðîåâøà :or" #: builtin.c:2829 #, fuzzy msgid "or: received non-numeric second argument" msgstr "øôñî åðéà éðù èðîåâøà :atan2" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :or(%lf, %lf)" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "åööå÷é íéøåáù íéëøò :or(%lf, %lf)" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "øôñî åðéà ïåùàø èðîåâøà :xor" #: builtin.c:2865 #, fuzzy msgid "xor: received non-numeric second argument" msgstr "øôñî åðéà éðù èðîåâøà :atan2" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :xor(%lf, %lf)" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "åööå÷é íéøåáù íéëøò :xor(%lf, %lf)" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "øôñî åðéà èðîåâøà :compl" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "úåéåôö-éúìá úåàöåú áéðé éìéìù êøò :compl(%lf)" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "õöå÷é øåáù êøò :compl(%lf)" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "äðé÷ú íå÷éî úééøåâè÷ åðéà `%s' :dcgettext" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "%d ääåæî-éúìá âåñ ìòá node" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "genflags2str-á õöåç úùéìâ" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "øàì÷ñ ùøåãä èñ÷èðå÷á `%s' êøòîá ùåîéù ïåéñð" #: eval.c:733 #, fuzzy, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "(`%s' êøòî) äàìåìä òåöéá êìäîá %d-î %d-ì äðåù êøòî ìù åìãåâ :for úàìåì" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "éìéáèøåô åðéà äàìåìì õåçî `break'" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "äàìåìì õåçî `break'-á ùîúùäì ïéà" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "éìéáèøåô åðéà äàìåìì õåçî `continue'" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "äàìåìì õåçî `continue'-á ùîúùäì ïéà" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "BEGIN éììë êåúî `next'-ì àåø÷ì ïéà" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "END éììë êåúî `next'-ì àåø÷ì ïéà" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "BEGIN éììë êåúî `nextfile'-ì àåø÷ì ïéà" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "END éììë êåúî `nextfile'-ì àåø÷ì ïéà" #: eval.c:875 msgid "statement has no effect" msgstr "úéìëú-úìåèð äàøåä" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "êøòî åà äðúùîë `%s' äéö÷ðåô íùá ùîúùäì ïéà" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "`%s' ìçåúî-éúìá èðîåâøàì äéðôä" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "`%s' ìçåúî-éúìá äðúùîì äéðôä" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "!øçà éåèéá ìù åëøåà éåðéùì åîøâ ãçà éåèéá áåùéç ìù éàåì-úåòôåú :concatenation" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "éàðú ìù èñ÷èðå÷á äîùäá ùåîéù" #: eval.c:1278 msgid "division by zero attempted" msgstr "ñôàá ä÷åìç ïåéñð" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "`%%'-á ñôàá ä÷åìç ïåéñð" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "tree_eval-á (%s) éåâù âåñ" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "`/='-á ñôàá ä÷åìç ïåéñð" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "`%%='-á ñôàá ä÷åìç ïåéñð" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "äúæøëäá øùàî íéèðîåâøà øúåé íò `%s' äéö÷ðåôì äàéø÷" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "úøãâåî äðéà `%s' äéö÷ðåô" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# :úåéö÷ðåôì úåàéø÷ä úéðñçî\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- main --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "øôñî åðéàù êøò úåòöîàá äãùì äéðôä ïåéñð" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "ä÷éø úæåøçî úåòöîàá äãùì äéðôä ïåéñð" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "%d 'ñî äãùì äùéâ ïåéñð" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "úéðáåî äéö÷ðåô ìù äàöåúá êøò áéöäì ïéà" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä åðéä `IGNORECASE'" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä åðéä `BINMODE'" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "äðé÷ú `%sFMT' úøãâä åðéà `%s'" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "`LINT'-ì êøò úîùä á÷ò `--lint' ìèáî" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä äðéä `extension'" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "`%s' úçéúô úòá (%s) äì÷ú äòøéà :extension\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "`%s' äéøôñî `%s' äéö÷ðåôì äàéø÷á (%s) äì÷ú äòøéà :extension\n" #: ext.c:102 msgid "extension: missing function name" msgstr "" #: ext.c:107 #, fuzzy, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "`%s' äéøôñî `%s' äéö÷ðåôì äàéø÷á (%s) äì÷ú äòøéà :extension\n" #: ext.c:113 #, fuzzy, c-format msgid "extension: can't redefine function `%s'" msgstr "`%s' úçéúô úòá (%s) äì÷ú äòøéà :extension\n" #: ext.c:117 #, fuzzy, c-format msgid "extension: function `%s' already defined" msgstr "úøãâåî äðéà `%s' äéö÷ðåô" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" #: ext.c:124 #, fuzzy, c-format msgid "extension: function name `%s' previously defined" msgstr "úøãâåî øáë `%s' íùá äéö÷ðåô" #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "úàø÷ð àì êà ,äøãâåä `%s' äéö÷ðåô" #: ext.c:204 #, fuzzy, c-format msgid "function `%s': missing argument #%d" msgstr "úøãâåî äðéà `%s' äéö÷ðåô" #: ext.c:214 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "êøòîë `%s' øàì÷ñá éåâù ùåîéù" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" #: ext.c:243 msgid "Operation Not Supported" msgstr "úëîúð äðéà åæ äìåòô" #: field.c:326 msgid "NF set to negative value" msgstr "éìéìù êøò ìáé÷ NF" #: field.c:819 msgid "split: second argument is not an array" msgstr "êøòî åðéà `split' ìù éðùä èðîåâøàä" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä äðéä `split'-ì éùéìù èðåîâøàë úñôåàî úæåøçî" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä åðéä `FIELDWIDTHS'" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä äðéä `FS'-ë úñôåàî úæåøçî" # The way the leading "%s:" is translated is a terrible kludge, # but what can I do? FIXME. #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s úéðëú øåáò éòîùî-ãç åðéà `%s' ïééôàî\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `--%s' ïééôàî\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `%c%s' ïééôàî\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s úéðëú øåáò èðîåâøà áééçî `%s' ïééôàî\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s úéðëú øåáò `--%s' ääåæî-éúìá ïééôàî\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s úéðëú øåáò `%c%s' ääåæî-éúìá ïééôàî\n" # "Illegal" is against GNU coding standards, but since Posix requires # it (see the comment below), let's say that in Hebrew as well... #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: é÷åç-éúìá ïééôàî -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s úéðëú øåáò éåâù ïééôàî -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: èðîåâøà áééçî ïééôàî -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s úéðëú øåáò éòîùî-ãç åðéà `-W %s' ïééôàî\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `-W %s' ïééôàî\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "åúàéø÷ íùì `%s' õáå÷ úçéúôá (%s) äì÷ú" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "(%d èìô/èì÷ õåøò) `%s' úøéâñá (%s) äì÷ú" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "redirect() äéö÷ðåôá %s éåâù õò âåñ" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "ãáìá éøîåð êøò áéðî `%s' èìô/èì÷ úééðôäá éåèéá" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "ä÷éø úæåøçî áéðî `%s' èìô/èì÷ úééðôäá éåèéá" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "éâåì éåèéá ìù äàöåú úåéäì ìåìò `%s' õáå÷ íù `%s' èìô/èì÷ úééðôäá" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "`%.*s' õáå÷ øåáò `>>'-á ïäå `>'-á ïä øúåéî ùåîéù" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "èìô êøåöì `%s' ÷éôà úçéúôá (%s) äì÷ú" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "èì÷ êøåöì `%s' ÷éôà úçéúôá (%s) äì÷ú" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "èìô/èì÷ êøåöì éðååéë-åã (socket) ò÷ùë `%s' úçéúôá (%s) äì÷ú" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "èìô/èì÷ êøåöì éðååéë-åã (pipe) ÷éôàë `%s' úçéúôá (%s) äì÷ú" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "`%s'-î äééðôäá (%s) äì÷ú" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "`%s' ìà äééðôäá (%s) äì÷ú" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "èìô/èì÷ éöåøò áåáéø úìéçú ;íéçåúô íéöá÷ øôñî ìù úëøòî úìáâîì äòâä" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "`%s' úøéâñá (%s) äì÷ú" #: io.c:811 msgid "too many pipes or input files open" msgstr "úéðîæ-åá íéçåúô èì÷ éöá÷ åà (pipes) íé÷éôà éãî øúåé" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "`from' åà `to' úåéäì áééç `close' ìù éðùä èðîåâøàä" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "ìéá÷î êéìäú åà çåúô ÷éôà ,çåúô õáå÷ åðéà `%.*s' :close" #: io.c:852 msgid "close of redirection that was never opened" msgstr "íìåòî äçúôð àìù äééðôä úøéâñ" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "çðæåä éðùä èðîåâøàä ,`|&' é\"ò äçúôð àì `%s' äééðôä" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "(%d äì÷ú ãå÷) `%s'-ì ÷éôà úøéâñá (%s) äì÷ú" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "(%d äì÷ú ãå÷) `%s' õáå÷ úøéâñá (%s) äì÷ú" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "ùøåôîá øâñð àì (socket) `%s' ò÷ù" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "ùøåôîá øâñð àì (co-process) `%s' ìéá÷î êéìäú" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "ùøåôîá øâñð àì (pipe) `%s' ÷éôà" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "ùøåôîá øâñð àì `%s' õáå÷" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "éð÷ú èìô õåøòì äáéúëá (%s) äì÷ú" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "éð÷ú úåàéâù õåøòì äáéúëá (%s) äì÷ú" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "`%s'-ì ÷éôà ìù õöåç ïå÷éøá (%s) äì÷ú" #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "`%s'-ì ìéá÷î êéìäú ÷éôà ìù õöåç ïå÷éøá (%s) äì÷ú" #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "`%s' ìù õáå÷ éðåúð õöåç ïå÷éøá (%s) äì÷ú" #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "ïëåî íøè /inet/raw çå÷ì ,íéøòèöî" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "ãáìá root ùîúùîì øúåî `inet/raw'-á ùåîéù" #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "ïëåî íøè /inet/raw úøù ,íéøòèöî" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "`%s' ãçåéî õáå÷ íùá ääåæî-éúìá åà øñç ìå÷åèåøô" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "íìù åðéà `%s' ãçåéî õáå÷" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "`%s'-á äéåâù úéîå÷î äàéöé" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "`/inet' øåáò ÷çåøî çøàî-áùçî íù øéãâäì äáåç" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "`/inet' øåáò ú÷çåøî äàéöé øéãâäì äáåç" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "`%s'-á äéåâù ú÷çåøî äàéöé" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "TCP/IP úøåù÷úá äëéîú ïéà" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "äé÷éú åðéä `%s' õáå÷" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "`PROCINFO[\"%s\"]'-á ùîúùäì óéãò `%s' íå÷îá" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "`/dev/user' éðô-ìò óéãò `PROCINFO[...]'-á ùåîéù" # This probably sounds nonsensical in Hebrew, but what can I do, # given the original message text? #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "`%s' øåáò `%s' äìåòô ïôåà úçéúôá ïåìùë" #: io.c:1814 #, fuzzy, c-format msgid "close of master pty failed (%s)" msgstr "÷éôà úøéâñá (%s) äì÷ú" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "úá-úéðëúá stdout úøéâñá (%s) äì÷ú" #: io.c:1819 #, fuzzy, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "úá-úéðëúá stdout-ì ÷éôà ìåôëùá (dup: %s) äì÷ú" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "úá-úéðëúá stdin úøéâñá (%s) äì÷ú" #: io.c:1824 #, fuzzy, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "úá-úéðëúá stdin-ì ÷éôà ìåôëùá (dup: %s) äì÷ú" #: io.c:1826 io.c:1845 #, fuzzy, c-format msgid "close of slave pty failed (%s)" msgstr "÷éôà úøéâñá (%s) äì÷ú" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "úá-úéðëúá stdout-ì ÷éôà ìåôëùá (dup: %s) äì÷ú" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "úá-úéðëúá stdin-ì ÷éôà ìåôëùá (dup: %s) äì÷ú" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "áà-úéðëúá stdout ÷éôà øåæçùá äì÷ú\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "áà-úéðëúá stdin ÷éôà øåæçùá äì÷ú\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "÷éôà úøéâñá (%s) äì÷ú" #: io.c:2024 msgid "`|&' not supported" msgstr "`|&'-á äëéîú ïéà" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "`%s' ÷éôà úçéúôá (%s) äì÷ú" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "`%s' úá-úéðëúì êéìäú úøéöéá (fork: %s) äì÷ú" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "÷éø åðéä `%s' íéðåúð õáå÷" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "`%s' õáå÷ úàéø÷á (%s) äì÷ú" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "gawk-ì úéôéöôñ äáçøä äðéä `RS' ìù êøòá íéåú øôñîá äëéîú" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "gawk øåáò éèðååìø åðéà `-m[fr]' ïééôàî" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "`-m[fr] nnn' :-m ïééôàîá ùåîéù ïôåà" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "çðæåä ,%s úéðëú øåáò øëåî åðéà `-W %s' ïééôàî\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "çðæåä `--source'-ì ÷éø èðîåâøà" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "`--posix' ìéòôî :øãâåî `POSIXLY_CORRECT' äáéáñ äðúùî" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "`--traditional' ìò øáåâ `--posix'" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--non-decimal-data' ìò øáåâ `--posix'/`--traditional'" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "òãéî úçèáàá òåâôì äìåìò setuid root-ë %s úöøä" #: main.c:528 #, fuzzy, c-format msgid "can't set binary mode on stdin (%s)" msgstr "stdin úìåòô ïôåà úòéá÷á (%s) äì÷ú" #: main.c:531 #, fuzzy, c-format msgid "can't set binary mode on stdout (%s)" msgstr "stdout úìåòô ïôåà úòéá÷á (%s) äì÷ú" #: main.c:533 #, fuzzy, c-format msgid "can't set binary mode on stderr (%s)" msgstr "stderr úìåòô ïôåà úòéá÷á (%s) äì÷ú" #: main.c:572 msgid "no program text at all!" msgstr "!ììë àöîðá äéä àì úéðëú ìù èñ÷è" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "%s [GNU åà POSIX ïåðâñá íéðééôàî] -f úéðëú-íù [--] õáå÷-íù ... :ùåîéù ïôåà\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "%s [GNU åà POSIX ïåðâñá íéðééôàî] [--] %cúéðëú%c õáå÷-íù ... :ùåîéù ïôåà\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr ":POSIX éðééôàî\t\t:íéëåøà GNU éðééôàî\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f úéðëú-õáå÷\t\t--file=úéðëú-õáå÷\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F úåãù-ãéøôî\t\t--field-separator=úåãù-ãéøôî\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v äðúùî=êøò\t\t--assign=äðúùî=êøò\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] êøò\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=õáå÷-íù]\t--dump-variables[=õáå÷-íù]\n" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W profile[=õáå÷-íù]\t--profile[=õáå÷-íù]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=õáå÷-íù]\t--profile[=õáå÷-íù]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=úéðëú-èñ÷è\t--source=úéðëú-èñ÷è\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "àåäù ,`gawk.info' õáå÷á `Bugs' úîåö äàø ,úåì÷ú ìò çååéãì\n" " .ñôãåîä êéøãîá `Reporting Problems and Bugs' ä÷ñô\n" "\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" ".èñ÷è úåéðáú ìù ãåáéòå äé÷øñì äôù åðéä gawk\n" ".éð÷ú èìôì áúåëå éð÷ú èì÷ õåøò àøå÷ àåä ìãçî úøéøáë\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" " :úåàîâåã\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "óåôëá äúåðùì åà/å äöéôäì íëúåëæ ;úéùôç äðëú äðéä åæ úéðëú\n" " é\"ò øåàì àöåéä ,GNU General Public License ïåéùøä éàðúì\n" " íàå ,ïåéùøä ìù 2 àñøâá íà ;Free Software Foundation\n" " .øúåé úøçåàî àñøâ ìëá (íëì äøåîùä äéöôåàë)\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" ",úìòåú àéáú àéäù äåå÷ú êåúî úöôåî åæ úéðëú\n" "òîúùîá-úåéøçà àì åìéôà ;úåéøçà áúë ìë àìì íìåà\n" ",íéèøôì .úîéåñî úéìëú åæéàì äîàúä åà úåøéçñ ìù\n" " .GNU General Public License-á åðééò àðà\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" ";GNU General Public License ìù ÷úåòá äååìî úåéäì äøåîà åæ úéðëú\n" "Free Software Foundation, Inc.-ì åáúë àðà ,åúåà íúìáé÷ àì íà\n" ".51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "awk ìù POSIX úñøâá TAB úåéäì FS-ì íøåâ åðéà -Ft" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "" #: main.c:1074 msgid "floating point exception" msgstr "äôö äãå÷ð éáåùéçá äâéøç" #: main.c:1081 msgid "fatal error: internal error" msgstr "úéîéðô äðëú úàéâù :äøåîç äì÷ú" # FIXME: I wonder how many people will understand what "fd 2" means. #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "ùàøî çåúô åðéà %d èìô/èì÷ õåøò" # FIXME: /dev/null might not be known to all. #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "/dev/null-ì %d èìô/èì÷ õåøò çåúôì ïúéð àì" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "%s :úëøòîá íéùîúùî úåöåá÷ ìò òãéî ïéà" # The next 4 strings are untranslated because msg.c prints the actual # message after "warning:", "error:", etc., which will look terribly # wrong if both these headings and the message text after them is in # Hebrew, due to changed directionality. #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "cmd. line:" #: msg.c:120 msgid "warning: " msgstr "warning: " #: msg.c:142 msgid "error: " msgstr "error: " #: msg.c:178 msgid "fatal: " msgstr "fatal: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "øôñîì äøîäì úðúéð äðéà úæåøçî" #: node.c:414 msgid "backslash at end of string" msgstr "úæåøçî óåñá êåôä ïñëåì" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "`\\x' âåñî äø÷á úåøãñ äùøî åðéà POSIX ï÷ú" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "`\\x' äø÷á úøãñá úåéìîéöãñ÷ä úåøôñá ùîúùäì ïéà" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "éìåìéî åúë ìôåè `\\%c' äø÷á úøãñá `%c' åú" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s `%s' øåáò close-on-exec ïééôàî úìòôäá (fcntl: %s) äì÷ú" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "äáéúë êøåöì `%s' úçéúô úòá (%s) äì÷ú" #: profile.c:467 #, fuzzy, c-format msgid "internal error: %s with null vname" msgstr "ñôåàî åìù vname-äù Node_var :úéîéðô äðëú úàéâù" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# %s êéøàúî gawk ìù ìéôåøô\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# BEGIN ÷åìá\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# (íé)ììë\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# END ÷åìá\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# úéá-óìà øãñá ,úåéö÷ðåô\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "prec_level-á %s éåâù âåñ" #: regcomp.c:160 msgid "Success" msgstr "äçìöä" #: regcomp.c:163 msgid "No match" msgstr "äîéàúî úæåøçî äàöîð àì" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "éåâù éøìåâø éåèéá" #: regcomp.c:169 msgid "Invalid collation character" msgstr "øãâåî-éúìá øåãéñ åú" #: regcomp.c:172 msgid "Invalid character class name" msgstr "íéåú úöåá÷ ìù øãâåî-éúìá íù" #: regcomp.c:175 msgid "Trailing backslash" msgstr "`\\' éøåçà ïñëåìá íééúñî éøìåâø éåèéá" #: regcomp.c:178 msgid "Invalid back reference" msgstr "íãå÷ éåèéá-úúì äéåâù äééðôä" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "âåæ-ïá åì ïéàù [^ åà [" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "âåæ-ïá åì ïéàù \\( åà (" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "âåæ-ïá åì ïéàù \\{" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "\\{\\} êåúá éåâù äðáî" #: regcomp.c:193 msgid "Invalid range end" msgstr "íéåú íåçú ìù äéåâù äøãâä" #: regcomp.c:196 msgid "Memory exhausted" msgstr "ïåøëæä øîâð" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "íéé÷ åðéà åà éåâù íãå÷ éøìåâø éåèéá" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "éãî íã÷åî íééúñî éøìåâø éåèéá" #: regcomp.c:205 msgid "Regular expression too big" msgstr "éãî áëøåî åà ìåãâ éøìåâø éåèéá" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr "âåæ-ïá åì ïéàù \\) åà )" #: regcomp.c:688 msgid "No previous regular expression" msgstr "íãå÷ éøìåâø éåèéá ïéà" #~ msgid "function %s called\n" #~ msgstr "`%s' äéö÷ðåôì äàéø÷\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "0-î ìåãâ úåéäì áééç FIELDWIDTHS-á %d 'ñî äãù" #, fuzzy #~ msgid "or used as a variable or an array" #~ msgstr "êøòî åà äðúùîë `%s' äéö÷ðåô íùá ùîúùäì ïéà" #~ msgid "regex match failed, not enough memory to match string \"%.*s%s\"" #~ msgstr "" #~ "\"%.*s%s\" úæåøçî úîàúäì ïåøëæ éã ïéà ,ìùëð éøìåâø éåèéáì äîàúä ùåôéç" #, fuzzy #~ msgid "substr: length %g is < 0" #~ msgstr "0-î ìåãâ øôñî åððéà %g êøåà :substr" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "êøòîë `%s' äðúùîá éåâù ùåîéù :delete" #, fuzzy #~ msgid "%s: gvar_ref to %s\n" #~ msgstr "%s: %s-ì (array_ref) äéðôä\n" #~ msgid "asort: first argument is not an array" #~ msgstr "êøòî åðéà ïåùàø èðîåâøà :asort" #~ msgid "asort: second argument is not an array" #~ msgstr "êøòî åðéà éðù èðîåâøà :asort" #, fuzzy #~ msgid "" #~ "attempt to use array parameter `%s' that was passed from global scalar `%" #~ "s'" #~ msgstr "êøòî äéä åìéàë `%s' éøì÷ñ øèîøôá ùåîéù ïåéñð" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "ñôåàî åìù vname-äù Node_var_array :úéîéðô äðëú úàéâù" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "äìåòô úøãâä ìåìëì áééç BEGIN ÷åìá" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "END åà BEGIN ìù äìåòô úøãâäá `nextfile'-á ùåîéù" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "éåðéù-øá è÷ééáåà åðéà `gsub' ìù éùéìù èðîåâøà" #~ msgid "or used in other expression context" #~ msgstr "øçà éåèéá ìù èñ÷èðå÷á äá ùåîéù åà" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "äøåñà äá êøò úîùä ,äéö÷ðåô àéä `%s'" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "`%s' õáå÷ ìù %d äøåùá úéîéðô äðëú äàéâù\n" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "END åà BEGIN úìåòô êåúá øãâåî åðéà äééðôä àìì `getline'" #~ msgid "fptr %x not in tokentab\n" #~ msgstr "tokentab-á àöîð àì fptr %x\n" #~ msgid "Unbalanced [" #~ msgstr "âåæ-ïá åì ïéàù [" #~ msgid "Unfinished \\ escape" #~ msgstr "äøåîâ-éúìá \\ äø÷á úøãñ" #~ msgid "unfinished repeat count" #~ msgstr "äøåîâ-éúìá úåðùéä äðåî úøãâä" #~ msgid "malformed repeat count" #~ msgstr "úåðùéä äðåî úøãâäá éåâù øéáçú" #~ msgid "Unbalanced (" #~ msgstr "âåæ-ïá åì ïéàù (" #~ msgid "No regexp syntax bits specified" #~ msgstr "íééøìåâø íééåèéá ìù øéáçú úøãâä ïéà" #~ msgid "Unbalanced )" #~ msgstr "âåæ-ïá åì ïéàù )" #~ msgid "out of memory" #~ msgstr "ïåøëæä øîâð" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "êøò úîùäá `%s' äðúùî íù ìù éåâù øéáçú" EOF echo - 'it.po' cat << 'EOF' > 'it.po' # Italian messages for GNU Awk # Copyright (C) 2002-2005 Free Software Foundation, Inc. # Antonio Colombo . # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.35\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2005-06-22 14:00+0100\n" "Last-Translator: Antonio Colombo \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" #: array.c:112 #, c-format msgid "attempt to use function `%s' as an array" msgstr "tentativo di usare funzione '%s' come vettore" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "tentativo di unare il parametro scalare `%s' come un vettore" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "tentativo di usare scalare '%s' come vettore" #: array.c:156 #, c-format msgid "from %s" msgstr "da %s" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "referenza a elemento non inizializzato `%s[\"%s\"]'" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "l'indice del vettore '%s' è una stringa nulla" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: indice `%s' non presente nel vettore `%s'" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: vuoto (nullo)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: vuoto (zero)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: dimensione_tabella = %d, dimensione_vettore = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: è parametro\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: referenza_vettoriale a %s\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "blocchi %s richiedono una 'azione'" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "ogni regola deve avere una parte 'espressione' o una parte 'azione'" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s' è una funzione interna, non si può ridefinire" #: awkgram.y:313 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "espressione regolare costante `//' sembra un commento C, ma non lo è" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "espressione regolare costante `/%s/' sembra un commento C, ma non lo è" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "istruzione che può non aver alcun effetto" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "`%s' usato in 'azione' %s" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' è un'estensione gawk" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "`return' usato fuori da una funzione" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "`print' da solo in BEGIN o END dovrebbe forse essere `print \"\"'" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "`delete array' è un'estensione gawk" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete(array)' è un'estensione tawk non-portabile" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "valori di 'case' doppi all'interno di uno 'switch': %s" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "Valori per difetto doppi all'interno di uno 'switch'" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "'pipelines' multistadio bidirezionali non funzionano" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "espressione regolare usata per assegnare un valore" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "espressione regolare prima di operatore `~' o `!~'" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "espressione regolare a destra in un confronto" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "`getline' non re-diretta indefinita dentro 'azione' END" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "chiamata a `length' senza parentesi non portabile" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "chiamata a `length' senza parentesi sconsigliata da POSIX" #: awkgram.y:962 msgid "use of non-array as array" msgstr "uso di non-vettore come vettore" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "espressione indice invalida" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "carattere 'a capo' o fine stringa inaspettati" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "programma nullo sulla linea comandi" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "non riesco ad aprire file sorgente `%s' in lettura (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "non riesco a leggere file sorgente `%s' (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "file sorgente `%s' vuoto" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "file sorgente non termina con carattere 'a capo'" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "espressione regolare non completata termina con `\\' a fine file" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: modificatore di espressione regolare tawk `/.../%c' non valido in " "gawk" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "modificatore di espressione regolare tawk `/.../%c' non valido in gawk" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "espressione regolare non completata" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "espressione regolare non completata a fine file" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "uso di `\\ #...' continuazione linea non portabile" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "'\\' non è l'ultimo carattere della linea" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX non permette l'operatore `**='" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "il vecchio awk non supporta l'operatore `**='" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX non permette l'operatore `**'" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "il vecchio awk non supporta l'operatore `**'" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "l'operatore `^=' non è supportato nel vecchio awk" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "l'operatore `^' non è supportato nel vecchio awk" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "stringa non terminata" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "carattere '%c' invalido in un'espressione" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' è un'estensione gawk" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' è un'estensione Bell Labs" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX non permette `%s'" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' non è supportato nel vecchio awk" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "`goto' considerato pericoloso!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d invalido come numero di argomenti per %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: il terzo argomento è un'estensione gawk" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: una stringa come ultimo argomento di 'substitute' non ha effetto" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "il terzo parametro di '%s' non è un oggetto modificabile" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: il secondo argomento è un'estensione gawk" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "uso scorretto di dcgettext(_\"...\"): togliere il carattere '_' iniziale" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "uso scorretto di dcngettext(_\"...\"): togliere il carattere '_' iniziale" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "funzione `%s': parametro #%d, `%s', duplica parametro #%d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funzione `%s': parametro `%s' nasconde variabile globale" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "non riesco ad aprire `%s' in scrittura (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "mando profilo a 'standard error'" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: 'close' fallita (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() chiamata due volte!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "c'erano variabili nascoste." #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funzione `%s': non posso usare nome della funzione come nome parametro" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "funzione di nome `%s' definita in precedenza" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "funzione `%s' chiamata ma mai definita" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "funzione `%s' definita ma mai chiamata" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "espressione regolare di valore costante per parametro #%d genera valore " "booleano" #: awkgram.y:3105 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "funzione `%s' chiamata con spazio tra il nome e `(',\n" "o usata come variabile o vettore" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s a \"%s\" fallita (%s)" #: builtin.c:146 msgid "standard output" msgstr "standard output" #: builtin.c:147 msgid "reason unknown" msgstr "ragione indeterminata" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: argomento non numerico" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argomento %g non accettabile" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: non posso scaricare: 'pipe' `%s' aperta in lettura, non in scrittura" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: non posso scaricare: file `%s' aperto in lettura, non in scrittura" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' non è un file aperto, una 'pipe' o un co-processo" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: il primo argomento non è una stringa" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: il secondo argomento non è una stringa" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: argomento non numerico" #: builtin.c:472 msgid "`length(array)' is a gawk extension" msgstr "`length(array)' è un'estensione gawk" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: l'argomento non è una stringa" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: argomento non numerico" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: argomento negativo %g" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "'count$' va usato per tutti i formati o per nessuno" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "`$' non permesso nei 'format' awk" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "il numero di argomento con `$' deve essere > 0" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "" "numero di argomenti (%ld) maggiore del numero totale di argomenti specificati" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "`$' non permesso dopo un punto nel 'format'" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "" "nessun `$' specificato per larghezza o precisione di un campo posizionale" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "`l' non ha senso nei 'format' awk; ignorata" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "`l' non permessa nei 'format' awk POSIX" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "`L' non ha senso nei 'format' awk; ignorata" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "`L' non permessa nei 'format' awk POSIX" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "`h' non ha senso nei 'format' awk; ignorata" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "`h' non permessa nei 'format' awk POSIX" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: valore %g non accettabile per il 'format' `%%%c'" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "mancano argomenti per completare il 'format'" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ uscito per questo" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: il designatore di 'format' non ha una lettera di controllo" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "troppi argomenti specificati per il 'format'" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: manca argomento" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: argomento non numerico" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: chiamata con argomento negativo %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: indice di partenza %g invalido, uso 1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: indice di partenza non intero %g: sarà troncato" #: builtin.c:1353 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: lunghezza %g non >= 1" #: builtin.c:1355 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: lunghezza %g non >= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: lunghezza non intera %g: sarà truncata" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr: lunghezza %g troppo elevata per indice stringa, tronco a %g" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: stringa di partenza lunga zero" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: indice di partenza %g oltre la fine della stringa" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: lunghezza %g all'indice di partenza %g supera la lunghezza del primo " "argomento (%lu)" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftime: il primo argomento non è una stringa" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: 'format' è una stringa nulla" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: il secondo argomento non è numerico" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: l'argomento non è una stringa" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: l'argomento non è una stringa" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "referenza a variabile non inizializzata `$%d'" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: l'argomento non è una stringa" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: l'argomento non è una stringa" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: il primo argomento non è numerico" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: il secondo argomento non è numerico" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: l'argomento non è numerico" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: l'argomento non è numerico" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: l'argomento non è numerico" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: il terzo argomento non è un vettore" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: il terzo argomento è 0, trattato come 1" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: il primo argomento non è numerico" #: builtin.c:2717 msgid "lshift: received non-numeric second argument" msgstr "lshift: il secondo argomento non è numerico" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): valori negativi daranno risultati strani" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): valori con decimali verranno troncati" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): valori troppo alti daranno risultati strani" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: il primo argomento non è numerico" #: builtin.c:2755 msgid "rshift: received non-numeric second argument" msgstr "rshift: il secondo argomento non è numerico" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): valori negativi daranno risultati strani" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): valori con decimali verranno troncati" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): valori troppo alti daranno risultati strani" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: il primo argomento non è numerico" #: builtin.c:2793 msgid "and: received non-numeric second argument" msgstr "and: il secondo argomento non è numerico" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): valori negativi daranno risultati strani" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): valori con decimali verranno troncati" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: il primo argomento non è numerico" #: builtin.c:2829 msgid "or: received non-numeric second argument" msgstr "or: il secondo argomento non è numerico" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): valori negativi daranno risultati strani" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): valori con decimali verranno troncati" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: il primo argomento non è numerico" #: builtin.c:2865 msgid "xor: received non-numeric second argument" msgstr "xor: il secondo argomento non è numerico" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): valori negativi daranno risultati strani" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): valori con decimali verranno troncati" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: l'argomento non è numerico" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): valore negativo darà risultati strani" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): valore con decimali verrà troncato" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' non è una categoria 'locale' valida" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "tipo nodo sconosciuto %d" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "superament limiti buffer in 'genflags2str'" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "tentativo di usare vettore `%s' in un contesto scalare" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "ciclo for: vettore `%s' ha cambiato dimensione da %ld a %ld durante " "l'esecuzione del ciclo" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "`break' all'esterno di un ciclo non è portabile" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "`break' all'esterno di un ciclo non è consentito" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "`continue' all'esterno di un ciclo non è portabile" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "`continue' all'esterno di un ciclo non è consentito" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "`next' non può essere chiamato da una regola BEGIN" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "`next' non può essere chiamato da una regola END" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "`nextfile' non può essere chiamato da una regola BEGIN" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "`nextfile' non può essere chiamato da una regola END" #: eval.c:875 msgid "statement has no effect" msgstr "istruzione che non fa nulla" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "non posso usare nome di funzione `%s' come variabile o vettore" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "referenza ad argomento non inizializzato `%s'" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "referenza a variabile non inizializzata `%s'" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenatione: effetti secondari in una espressione hanno modificato la " "lunghezza di un'altra espressione!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "assegnamento usato nel contesto di un test condizionale" #: eval.c:1278 msgid "division by zero attempted" msgstr "tentativo di dividere per zero" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "divisione per zero tentata in `%%'" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "tipo non ammesso (%s) in 'tree_eval'" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "divisione per zero tentata in `/='" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "divisione per zero tentata in `%%='" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "funzione `%s' chiamata con più argomenti di quelli previsti" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "funzione `%s' non definita" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# 'Stack' (Pila) Chiamate Funzione:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- principale --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "tentativo di referenziare campo da valore non numerico" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "tentativo to referenziare da stringa nulla" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "tentativo di accedere al campo %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "assegnamento non permesso al risultato di una funzione interna" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' è un'estensione gawk" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' è un'estensione gawk" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "specificazione invalida `%sFMT' `%s'" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "disabilito `--lint' a causa di assegnamento a `LINT'" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "`extension' è un'estensione gawk" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "estensione: non riesco ad aprire `%s' (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "estensione: biblioteca `%s': non riesco a chiamare funzione `%s' (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "estensione: manca nome di funzione" #: ext.c:107 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "estensione: carattere non ammesso `%c' nel nome di funzione `%s'" #: ext.c:113 #, c-format msgid "extension: can't redefine function `%s'" msgstr "estensione: non riesco a ridefinire funzione `%s'" #: ext.c:117 #, c-format msgid "extension: function `%s' already defined" msgstr "estensione: funzione `%s' già definita" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "estensione: nome funzione interna gawk `%s' non ammesso come nome funzione" #: ext.c:124 #, c-format msgid "extension: function name `%s' previously defined" msgstr "estensione: funzione di nome `%s' definita in precedenza" #: ext.c:201 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funzione `%s' definita per avere al massimo %d argumenti/o" #: ext.c:204 #, c-format msgid "function `%s': missing argument #%d" msgstr "funzione `%s': manca argomento #%d" #: ext.c:214 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "funzione `%s': argomento #%d: tentativo di usare scalare come vettore" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "funzione `%s': argomento #%d: tentativo di usare vettore come scalare" #: ext.c:243 msgid "Operation Not Supported" msgstr "Operazione Non Supportata" #: field.c:326 msgid "NF set to negative value" msgstr "NF impostato a un valore negativo" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: il secondo argomento non è un vettore" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: la stringa nulla come terzo arg. è un'estensione gawk" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' è un'estensione gawk" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "valore di FIELDWIDTHS invalido, vicino a `%s'" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "la stringa nulla usata come `FS' è un'estensione gawk" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: opzione `%s' ambigua\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: opzione `--%s' non prevede un argomento\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: opzione `%c%s' non prevede un argomento\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: opzione `%s' richiede un argomento\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: opzione sconosciuta `--%s'\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: opzione sconosciuta `%c%s'\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: opzione non permessa -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: opzione non valida -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: l'opzione richiede un argomento -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: opzione `-W %s' ambigua\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: opzione `-W %s' non prevede un argomento\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "non riesco ad aprire file `%s' in lettura (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "chiusura di fd %d (`%s') fallita (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "tipo di albero invalido %s in redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "espressione nella re-direzione `%s' ha solo un valore numerico" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "espressione nella re-direzione `%s' ha per valore la stringa nulla" #: io.c:553 #, 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 " "espressione logica" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "mistura non necessaria di `>' e `>>' per il file `%.*s'" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "non posso aprire 'pipe' `%s' in scrittura (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "non posso aprire 'pipe' `%s' in lettura (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "" "non posso aprire 'socket' bidirezionale `%s' per lettura/scrittura (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "non posso aprire 'pipe' bidirezionale `%s' per lettura/scrittura (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "non posso re-dirigere da `%s' (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "non posso re-dirigere a `%s' (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "numero massimo consentito di file aperti raggiunto: comincio a riutilizzare " "i descrittori di file" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "chiusura di `%s' fallita (%s)." #: io.c:811 msgid "too many pipes or input files open" msgstr "troppe 'pipe' o file di input aperti" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: il secondo argomento deve essere `a' o `da'" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: `%.*s' non è un file aperto, una 'pipe' o un co-processo" #: io.c:852 msgid "close of redirection that was never opened" msgstr "chiusura di una re-direzione mai aperta" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "close: re-direzione `%s' non aperta con `|&', ignoro secondo argomento" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "errore ritornato (%d) dalla chiusura della 'pipe' `%s' (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "errore ritornato (%d) dalla chiusura del file `%s' (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "nessuna chiusura esplicita richiesta per 'socket' `%s'" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "nessuna chiusura esplicita richiesta per co-processo `%s'" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "nessuna chiusura esplicita richiesta per 'pipe' `%s'" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "nessuna chiusura esplicita richiesta per file `%s'" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "errore scrivendo 'standard output' (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "errore scrivendo 'standard error' (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "scaricamento di 'pipe' `%s' fallita (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "scaricamento da co-processo di 'pipe' a `%s' fallita (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "scaricamento di file `%s' fallita (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "spiacente, 'client' /inet/raw non ancora pronto" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "solo root può usare `/inet/raw'." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "spiacente, 'server' /inet/raw non ancora pronto" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "nessuno protocollo (conosciuto) specificato nel filename speciale `%s'" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "nome file speciale `%s' incompleto" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "porta locale invalida in `%s'" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "va fornito nome di 'host' remoto a `/inet'" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "va fornita porta remota a `/inet'" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "porta remota invalida in `%s'" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "comunicazioni TCP/IP non supportate" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "file `%s' è una 'directory'" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "usa `PROCINFO[\"%s\"]' invece che `%s'" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "usa `PROCINFO[...]' invece che `/dev/user'" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "non riesco ad aprire `%s', modo `%s'" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "fallita chiusura di 'pty' principale (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "fallita chiusura di 'stdout' nel processo-figlio (%s)" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "fallito trasferimento di 'pty' secondaria a 'stdout' nel processo-figlio " "(dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "fallita chiusura di 'stdin' nel processo-figlio (%s)" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "fallito trasferimento di 'pty' secondaria a 'stdin' nel processo-figlio " "(dup: %s)" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "fallita chiusura di 'pty' secondaria (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "fallito passaggio di 'pipe' a 'stdout' nel processo-figlio (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "fallito passaggio di pipe a 'stdin' nel processo-figlio (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "fallito ripristino di 'stdout' nel processo-padre\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "fallito ripristino di 'stdin' nel processo-padre\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "fallita chiusura di 'pipe' (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "`|&' non supportato" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "non riesco ad aprire 'pipe' `%s' (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "non riesco a creare processo-figlio per `%s' (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "file dati `%s' vuoto" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "non riesco ad allocare ulteriore memoria per l'input" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "errore leggendo file di input `%s': %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "valore multicarattere per `RS' è un'estensione gawk" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "`-m[fr]' opzione irrilevante per gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m uso opzione: `-m[fr] nnn'" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: opzione `-W %s' non riconosciuta, ignorata\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "argomento di `--source' mancante, comando ignorato" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "variable d'ambiente `POSIXLY_CORRECT' impostata: attivo `--posix'" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "`--posix' annulla `--traditional'" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--posix'/`--traditional' annulla `--non-decimal-data'" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "eseguire %s con 'setuid' root può essere un rischio per la sicurezza" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "non posso impostare modalità binaria su 'stdin'(%s)" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "non posso impostare modalità binaria su 'stdout'(%s)" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "non posso impostare modalità binaria su 'stderr'(%s)" #: main.c:572 msgid "no program text at all!" msgstr "manca del tutto il testo del programma!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Uso: %s [opzioni in stile POSIX o GNU] -f fileprog [--] file ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Usage: %s [opzioni in stile POSIX o GNU] [--] %cprogramma%c file ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "Opzioni POSIX:\t\topzioni lunghe GNU:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f fileprog\t\t--file=fileprog\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=valore\t\t--assign=var=valore\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] valore\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=file]\t--dump-variables[=file]\n" #: main.c:681 msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W exec[=file]\t--exec[=file]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=file]\t--profile[=file]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=testo-programma\t--source=testo-programma\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "Per segnalare problemi, vedi nodo `Bugs' in `gawk.info', oppure la\n" "sezione `Reporting Problems and Bugs' nella versione a stampa.\n" "\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk è un linguaggio per scandire e processare espressioni.\n" "Senza parametri, legge da 'standard input' e scrive su 'standard output'.\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "Esempi:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "Questo software è libero; lo puoi distribuire e/o modificare\n" "alle condizioni stabilite nella 'GNU General Public License' pubblicata\n" "dalla Free Software Foundation; fai riferimento alla versione 2 della\n" "Licenza, o (a tua scelta) a una qualsiasi versione successiva.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Questo programma è distribuito con la speranza che sia utile,\n" "ma SENZA ALCUNA GARANZIA; senza neppure la garanzia implicita\n" "di COMMERCIABILITA' o IDONEITA' AD UN PARTICOLARE SCOPO.\n" "Vedi la 'GNU General Public License' per ulteriori dettagli.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Dovresti aver ricevuto una copia della 'GNU General Public License'\n" "assieme a questo programma; se non è così, scrivi alla Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft non imposta FS a 'tab' nell'awk POSIX" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" "%s: `%s' argomento di `-v' non in forma `var=valore'\n" "\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' non è un nome di variabile ammesso" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s' non è un nome di variabile, cerco il file `%s=%s'" #: main.c:1074 msgid "floating point exception" msgstr "eccezione floating point" #: main.c:1081 msgid "fatal error: internal error" msgstr "errore fatale: errore interno" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "manca 'fd' predefinita %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "non riesco a predefinire /dev/null per 'fd' %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "non riesco a trovare gruppi: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "linea progr.:" #: msg.c:120 msgid "warning: " msgstr "attenzione: " #: msg.c:142 msgid "error: " msgstr "errore: " #: msg.c:178 msgid "fatal: " msgstr "fatale: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "non riesco a convertire stringa a valore in virgola mobile" #: node.c:414 msgid "backslash at end of string" msgstr "'\\' a fine stringa" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX non permette formato `\\x'" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "niente cifre esadecimanli nel formato `\\x'" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr " sequenza in formato `\\%c' considerata come semplice `%c'" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s `%s': non riesco a impostare 'close-on-exec': (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "non riesco ad aprire `%s' in scrittura: %s" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "errore interno: %s con 'vname' nullo" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# gestito internamente come 'delete' (cancellazione)" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "# questa è una funzione di estensione caricata dinamicamente" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# profilo gawk, creato %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# blocco(hi) BEGIN\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Regola(e)\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# blocco(hi) END\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Funzioni, listate in ordine alfabetico\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "tipo non previsto %s in 'prec_level'" #: regcomp.c:160 msgid "Success" msgstr "Successo" #: regcomp.c:163 msgid "No match" msgstr "Nessuna corrispondenza" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Espressione regolare invalida" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Carattere di ordinamento non valido" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Nome di 'classe di caratteri' invalido" #: regcomp.c:175 msgid "Trailing backslash" msgstr "'\\' finale" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Riferimento indietro invalido" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "[ or [^ non chiusa" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "( or \\( non chiusa" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "\\{ non chiusa" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Contenuto di \\{\\} invalido" #: regcomp.c:193 msgid "Invalid range end" msgstr "Fine di intervallo invalido" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Memoria esaurita" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Espressione regolare precedente invalida" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Fine di expressione regolare inaspettata" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Espressione regolare troppo complessa" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr ") or \\) non aperta" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Nessuna espressione regolare precedente" EOF echo - 'ja.po' cat << 'EOF' > 'ja.po' # Japanese messages for gawk. # Copyright (C) 2003 Free Software Foundation, Inc. # This file is distributed under the same license as the gawk package. # Makoto Hosoya , 2003. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.4l\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2005-06-27 02:37+1000\n" "Last-Translator: Makoto Hosoya \n" "Language-Team: Japanese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=EUC-JP\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, c-format msgid "attempt to use function `%s' as an array" msgstr "´Ø¿ô `%s' ¤òÇÛÎó¤È¤·¤Æ»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "¥¹¥«¥é¡¼¥Ñ¥é¥á¡¼¥¿ `%s' ¤òÇÛÎó¤È¤·¤Æ»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "¥¹¥«¥é¡¼ `%s' ¤òÇÛÎó¤È¤·¤Æ»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£" #: array.c:156 #, c-format msgid "from %s" msgstr "%s ¤«¤é" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤Í×ÁÇ `%s[\"%s\"]' ¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "ÇÛÎó¤Îź»ú `%s' ¤¬¶õÎó¤Ç¤¹¡£" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: ÇÛÎó `%2$s' ¤Ë»Øɸ `%1$s' ¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: ¶õ (null)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: ¶õ (zero)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: ¥Æ¡¼¥Ö¥ë¥µ¥¤¥º (table_size) = %d, ÇÛÎó¥µ¥¤¥º (array_size) = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: ¤Ï¥Ñ¥é¥á¡¼¥¿¤Ç¤¹¡£\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: %s ¤Ø¤ÎÇÛÎó»²¾È (array_ref)\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "%s ¥Ö¥í¥Ã¥¯¤Ë¤Ï¥¢¥¯¥·¥ç¥óÉô¤¬É¬¿Ü¤Ç¤¹¡£" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "³Æ¥ë¡¼¥ë¤Ë¤Ï¥Ñ¥¿¡¼¥ó¤Þ¤¿¤Ï¥¢¥¯¥·¥ç¥óÉô¤¬É¬¿Ü¤Ç¤¹¡£" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s' ¤ÏÁȹþ¤ß´Ø¿ô¤Ç¤¹¡£ºÆÄêµÁ¤Ç¤­¤Þ¤»¤ó¡£" #: awkgram.y:313 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "Àµµ¬É½¸½Äê¿ô `//' ¤Ï C++¥³¥á¥ó¥È¤Ë»÷¤Æ¤¤¤Þ¤¹¤¬¡¢°ã¤¤¤Þ¤¹¡£" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "Àµµ¬É½¸½Äê¿ô `/%s/' ¤Ï C¥³¥á¥ó¥È¤Ë»÷¤Æ¤¤¤Þ¤¹¤¬¡¢°ã¤¤¤Þ¤¹¡£" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "Ì¿Îáʸ¤Ë¤Ï¸ú²Ì¤¬Ìµ¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "`%s' ¤¬ %s ¤Î¥¢¥¯¥·¥ç¥ó¤Ç»È¤ï¤ì¤Þ¤·¤¿¡£" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "`return' ¤¬´Ø¿ôÄêµÁʸ¤Î³°¤Ç»È¤ï¤ì¤Þ¤·¤¿¡£" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "BEGIN ¤Þ¤¿¤Ï END ¥ë¡¼¥ëÆâ¤Î°ú¿ô¤Î̵¤¤ `print' ¤Ï `print \"\"' ¤À¤È»×¤ï¤ì¤Þ" "¤¹¡£" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "`delete array' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete(array)' ¤Ï tawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£Â¾¤Î awk ¤Ç¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "switch ʸ¤ÎÃæ¤Ë½ÅÊ£¤·¤¿ case Ãͤ¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹: %s" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "switch ʸ¤ÎÃæ¤Ë `default' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "¿Ãʳ¬¤ÇÁÐÊý¸þ¥Ñ¥¤¥×¤òÍøÍѤ·¤¿¼°¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "Àµµ¬É½¸½¤¬ÂåÆþ¼°¤Î±¦Êդ˻ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "`~' ¤ä `!~' ±é»»»Ò¤Îº¸ÊÕ¤ËÀµµ¬É½¸½¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "Èæ³Ó¼°¤Î±¦ÊÕ¤ËÀµµ¬É½¸½¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Æ¤¤¤Ê¤¤ `getline' ¤Ï END ¥¢¥¯¥·¥ç¥ó¤Ç¤Ï̤ÄêµÁ¤Ç¤¹¡£" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "³ç¸Ì̵¤·¤Î `length' ¤Ï¾¤Î awk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "POSIX ¤Ï³ç¸Ì̵¤·¤Ç¤Î `length' ¤Î»ÈÍѤò¿ä¾©¤·¤Þ¤»¤ó¡£" #: awkgram.y:962 msgid "use of non-array as array" msgstr "ÇÛÎó¤Ç¤Ê¤¤¤â¤Î¤òÇÛÎó¤È¤·¤Æ»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "ź»ú¼°¤¬ÉÔÀµ¤Ç¤¹¡£" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "ͽÁÛ³°¤Î²þ¹Ô¤Þ¤¿¤Ïʸ»úÎó¤Î½ªÃ¼¤¬¤¢¤ê¤Þ¤¹¡£" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "¥³¥Þ¥ó¥É¹Ô¤Î¥×¥í¥°¥é¥àɽµ­¤¬¶õ¤Ç¤¹¡£" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤à¤¿¤á¤Ë³«¤±¤Þ¤»¤ó (%s)¡£" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤á¤Þ¤»¤ó (%s)¡£" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë `%s' ¤Ï¶õ¤Ç¤¹¡£" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤¬²þ¹Ô¤Ç½ª¤Ã¤Æ¤¤¤Þ¤»¤ó¡£" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤¤Àµµ¬É½¸½¤¬¥Õ¥¡¥¤¥ëºÇ¸å¤Î `\\' ¤Ç½ª¤Ã¤Æ¤¤¤Þ¤¹¡£" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "%s: %d: tawk ¤ÎÀµµ¬É½¸½½¤¾þ»Ò `/.../%c' ¤Ï gawk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "tawk ¤ÎÀµµ¬É½¸½½¤¾þ»Ò `/.../%c' ¤Ï gawk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "Àµµ¬É½¸½¤¬½ªÃ¼¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "¥Õ¥¡¥¤¥ë¤ÎÃæ¤ÇÀµµ¬É½¸½¤¬½ªÃ¼¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "`\\ #...' ·Á¼°¤Î¹Ô·Ñ³¤Ï¾¤Î awk ¤Ç»È¤¨¤Þ¤»¤ó¡£" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤¬¹ÔºÇ¸å¤Îʸ»ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó¡£" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX ¤Ï±é»»»Ò `**=' ¤òµö²Ä¤·¤Þ¤»¤ó¡£" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "±é»»»Ò `**=' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX ¤Ç¤Ï±é»»»Ò `**' ¤òµö²Ä¤·¤Æ¤¤¤Þ¤»¤ó¡£" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "±é»»»Ò `**' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "±é»»»Ò `^=' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "±é»»»Ò `^' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "ʸ»úÎ󤬽ªÃ¼¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "ɽ¸½¤Î char '%c' ¤ÏÉÔÀµ¤Ç¤¹¡£" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' ¤Ï¥Ù¥ë¸¦µæ½ê¤Ë¤è¤ë³ÈÄ¥¤Ç¤¹¡£" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX ¤Ï `%s' ¤òµö²Ä¤·¤Þ¤»¤ó¡£" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' ¤Ï¸Å¤¤ awk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "`goto' ¤ÏÍ­³²¤Ç¤¹!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d ¤Ï %s ¤Ë»È¤¨¤ë°ú¿ô¤Î¿ô¤È¤·¤Æ¤ÏÉÔÀµ¤Ç¤¹¡£" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: Âè»°°ú¿ô¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: ʸ»úÎó¥ê¥Æ¥é¥ë¤òÃÖ¤­´¹¤¨ºÇ¸å¤Î°ú¿ô¤Ë»ÈÍѤ¹¤ë¤È¸ú²Ì¤¬¤¢¤ê¤Þ¤»¤ó¡£" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "%s Âè»°¥Ñ¥é¥á¡¼¥¿¤Ï²ÄÊÑ¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: ÂèÆó°ú¿ô¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "dcgettext(_\"...\")¤Î»È¤¤Êý¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹: ºÇ½é¤Î¥¢¥ó¥À¡¼¥¹¥³¥¢¤òºï½ü¤·¤Æ¤¯" "¤À¤µ¤¤¡£" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "dcngettext(_\"...\")¤Î»È¤¤Êý¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹: ºÇ½é¤Î¥¢¥ó¥À¡¼¥¹¥³¥¢¤òºï½ü¤·¤Æ" "¤¯¤À¤µ¤¤¡£" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "´Ø¿ô `%s': ¥Ñ¥é¥á¡¼¥¿ #%d, `%s' ¤¬¥Ñ¥é¥á¡¼¥¿ #%d ¤È½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "´Ø¿ô `%s': ¥Ñ¥é¥á¡¼¥¿ `%s' ¤¬Âç°èÊÑ¿ô¤òʤ¤¤±£¤·¤Æ¤¤¤Þ¤¹¡£" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "`%s' ¤ò½ñ¹þ¤ßÍѤ˳«¤±¤Þ¤»¤ó¤Ç¤·¤¿ (%s)¡£" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "¥×¥í¥Õ¥¡¥¤¥ë¤òɸ½à¥¨¥é¡¼¤ËÁ÷¤Ã¤Æ¤¤¤Þ¤¹¡£" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: ÊĤ¸¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() ¤òÆó²ó¸Æ¤Ó½Ð¤·¤Æ¤¤¤Þ¤¹!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "ʤ¤¤±£¤µ¤ì¤¿ÊÑ¿ô¤¬¤¢¤ê¤Þ¤·¤¿¡£" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "´Ø¿ô `%s': ´Ø¿ô̾¤Ï¥Ñ¥é¥á¡¼¥¿Ì¾¤Ë»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "´Ø¿ô̾ `%s' ¤ÏÄêµÁºÑ¤ß¤Ç¤¹¡£" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "̤ÄêµÁ¤Î´Ø¿ô `%s' ¤ò¸Æ¤Ó½Ð¤·¤Þ¤·¤¿¡£" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "ÄêµÁ¤µ¤ì¤¿´Ø¿ô `%s' ¤Ï°ìÅÙ¤â¸Æ¤Ó½Ð¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "¥Ñ¥é¥á¡¼¥¿ #%d ¤ÎÀµµ¬É½¸½Äê¿ô¤Ï¥Ö¡¼¥ëÃͤò½ÐÎϤ·¤Þ¤¹¡£" #: awkgram.y:3105 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "´Ø¿ô̾¤È `(' ¤Î´Ö¤Ë¥¹¥Ú¡¼¥¹¤òÆþ¤ì¤Æ´Ø¿ô `%s' ¤ò¸Æ¤Ó½Ð¤·¤Æ¤¤¤Þ¤¹¡£\n" "¤Þ¤¿¤Ï¡¢ÊÑ¿ô¤«ÇÛÎó¤È¤·¤Æ»È¤ï¤ì¤Æ¤¤¤Þ¤¹¡£" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s ¤«¤é \"%s\" ¤Ø½ÐÎϤǤ­¤Þ¤»¤ó (%s)¡£" #: builtin.c:146 msgid "standard output" msgstr "ɸ½à½ÐÎÏ" #: builtin.c:147 msgid "reason unknown" msgstr "¸¶°øÉÔÌÀ" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: °ú¿ô %g ¤¬µöÍÆÈϰϤòĶ¤¨¤Æ¤¤¤Þ¤¹¡£" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "fflush: ¥Õ¥é¥Ã¥·¥åÉÔ²Ä: ¥Ñ¥¤¥× `%s' ¤ÏÆɤ߹þ¤ßÀìÍѤǤ¹¡£" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "fflush: ¥Õ¥é¥Ã¥·¥åÉÔ²Ä: ¥Õ¥¡¥¤¥ë `%s' ¤ÏÆɤ߹þ¤ßÀìÍѤǤ¹¡£" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "" "fflush: `%s' ¤Ï¥Õ¥¡¥¤¥ë¤«¡¢¥Ñ¥¤¥×¤«¡¢ÊÂ¹Ô¥×¥í¥»¥¹¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: Âè°ì°ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: ÂèÆó°ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "`delete array' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: °ú¿ô %g ¤¬Éé¤ÎÃͤǤ¹¡£" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "" "`count$¡Ç¤ÏÁ´¤Æ¤Î½ñ¼°»ØÄê¤ËŬÍѤ¹¤ë¡¢¤Þ¤¿¤ÏÁ´¤Æ¤ËŬÍѤ·¤Ê¤¤¤Î¤É¤Á¤é¤«¤Ç¤·¤«»È" "¤¨¤Þ¤»¤ó¡£" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "`$' ¤Ï awk ¤Ç¤Ï»È¤¨¤Þ¤»¤ó¡£" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "½ç½ø»ØÄê¤Î `$' ¤Ë»È¤¨¤ë¿ô»ú¤ÏÀµ¤ÎÃͤǤ¹¡£" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "½ç½ø»ØÄê %ld ¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤ë°ú¿ô¤Î¿ô¤òĶ¤¨¤Æ¤¤¤Þ¤¹¡£" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "`$' ¤Ï½ñ¼°»ØÄê¤Î¥Ô¥ê¥ª¥É `.' ¤Î¸å¤Ë»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "¥Õ¥£¡¼¥ë¥ÉÉý¡¢¤Þ¤¿¤ÏÀºÅ٤λØÄê»Ò¤Ë `$' ¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Þ¤»¤ó¡£" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "awk ¤Î½ñ¼°»ØÄê¤Ç¤Ï `l' ¤Ï̵°ÕÌ£¤Ç¤¹¡£Ìµ»ë¤·¤Þ¤¹¡£" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "POSIX ½àµò¤Î awk ¤Ç¤Ï `l' ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "awk ¤Î½ñ¼°»ØÄê¤Ç¤Ï `L' ¤Ï̵°ÕÌ£¤Ç¤¹¡£Ìµ»ë¤·¤Þ¤¹¡£" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "POSIX ½àµò¤Î awk ¤Ç¤Ï `L' ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "awk ¤Î½ñ¼°»ØÄê¤Ç¤Ï `h' ¤Ï̵°ÕÌ£¤Ç¤¹¡£Ìµ»ë¤·¤Þ¤¹¡£" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "POSIX ½àµò¤Î awk ¤Ç¤Ï `h' ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: %g ¤ÎÃͤ¬½ñ¼° `%%%c' ¤ÎµöÍÆÈϰϤòĶ¤¨¤Æ¤¤¤Þ¤¹¡£" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "½ñ¼°»ØÄꤹ¤ë¤¿¤á¤Î°ú¿ô¤¬Â­¤ê¤Þ¤»¤ó¡£" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ ¤³¤³¤«¤é­¤ê¤Þ¤»¤ó" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: ½ñ¼°»ØÄê»Ò¤ËÀ©¸æʸ»ú¤¬¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "½ñ¼°»ØÄêʸ»úÎó¤Î°ú¿ô¤¬Â¿²á¤®¤Þ¤¹¡£" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: °ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: °ú¿ô¤ËÉé¤ÎÃÍ %g ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: µ¯ÅÀ»Øɸ %g ¤¬ÉÔÀµ¤Ç¤¹¡£1 ¤ò»È¤¤¤Þ¤¹¡£" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: µ¯ÅÀ»Øɸ %g ¤Î¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Þ¤¹¡£" #: builtin.c:1353 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: ʸ»ú¿ô %g ¤¬ 1 °Ê¾å¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1355 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: ʸ»ú¿ô %g ¤¬ 0 °Ê¾å¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: ʸ»ú¿ô %g ¤Î¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Þ¤¹¡£" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr: ʸ»ú¿ô %g ¤ÏºÇÂçÃͤòĶ¤¨¤Æ¤¤¤Þ¤¹¡£%g ¤ò»È¤¤¤Þ¤¹¡£" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: ʸ»úÎó¤ÎŤµ¤¬¥¼¥í¤Ç¤¹¡£" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: µ¯ÅÀ»Øɸ %g ¤¬Ê¸»úÎó¤ÎŤµ¤òĶ¤¨¤Æ¤¤¤Þ¤¹¡£" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: µ¯ÅÀ»Øɸ %2$g ¤«¤é¤Îʸ»ú¿ô %1$g ¤Ïʸ»úÎó¤ÎŤµ %3$lu ¤òĶ¤¨¤Æ¤¤¤Þ¤¹¡£" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftime: Âè°ì°ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: ½ñ¼°»ØÄêʸ»úÎ󤬶õ¤Ç¤¹¡£" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤¥Õ¥£¡¼¥ë¥É `$%d' ¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: Âè»°°ú¿ô¤¬ÇÛÎó̾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: Âè»°°ú¿ô¤¬ 0 ¤Ç¤¹¡£1 ¤òÂå¤ï¤ê¤Ë»ÈÍѤ·¤Þ¤¹¡£" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2717 msgid "lshift: received non-numeric second argument" msgstr "lshift: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): ¥·¥Õ¥ÈÃͤ¬Â礭²á¤®¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2755 msgid "rshift: received non-numeric second argument" msgstr "rshift: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): ¥·¥Õ¥ÈÃͤ¬Â礭²á¤®¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2793 msgid "and: received non-numeric second argument" msgstr "and: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2829 msgid "or: received non-numeric second argument" msgstr "or: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2865 msgid "xor: received non-numeric second argument" msgstr "xor: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' ¤ÏÉÔÀµ¤Ê¥í¥«¡¼¥ë¡¦¥«¥Æ¥´¥ê¡¼¤Ç¤¹¡£" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "¥Î¡¼¥É %d ¤Î¼ïÎबÉÔÌÀ¤Ç¤¹¡£" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "genflags2str ¤¬¥Ð¥Ã¥Õ¥¡ÍÆÎ̤òĶ²á¤·¤Þ¤·¤¿¡£" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "¥¹¥«¥é¡¼´Ä¶­¤ËÇÛÎó `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "for ¥ë¡¼¥×: ¥ë¡¼¥×Ãæ¤ËÇÛÎó `%s' ¤Î¥µ¥¤¥º¤¬ %ld ¤«¤é %ld ¤ËÊѤï¤ê¤Þ¤·¤¿¡£" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "¥ë¡¼¥×¤Î³°¤Ç»ÈÍѤ¹¤ë `break' ¤Ï¾¤Î awk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "¥ë¡¼¥×¤Î³°¤Ç¤Ï `break' ¤ò»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "¥ë¡¼¥×¤Î³°¤Ç»ÈÍѤ¹¤ë `continue' ¤Ï¾¤Î awk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "¥ë¡¼¥×¤Î³°¤Ç¤Ï `continue' ¤ò»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "BEGIN ¥ë¡¼¥ë¤«¤é¤Ï `next' ¤ò¸Æ¤Ó½Ð¤»¤Þ¤»¤ó¡£" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "END ¥ë¡¼¥ë¤«¤é¤Ï `next' ¤ò¸Æ¤Ó½Ð¤»¤Þ¤»¤ó¡£" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "BEGIN ¥ë¡¼¥ë¤«¤é¤Ï `nextfile' ¤ò¸Æ¤Ó½Ð¤»¤Þ¤»¤ó¡£" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "END ¥ë¡¼¥ë¤«¤é¤Ï `nextfile' ¤ò¸Æ¤Ó½Ð¤»¤Þ¤»¤ó¡£" #: eval.c:875 msgid "statement has no effect" msgstr "Ì¿Îáʸ¤Ë¸ú²Ì¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "´Ø¿ô̾ `%s' ¤ÏÊÑ¿ô¤äÇÛÎó¤Ë¤Ï»È¤¨¤Þ¤»¤ó¡£" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤°ú¿ô `%s' ¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤ÊÑ¿ô `%s' ¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenation¡Êʸ»úÎóÏ¢·ë¡Ë: °ìÊý¤Î¼°¤ÎÉûºîÍѤǡ¢¤â¤¦°ìÊý¤ÎŤµ¤¬ÊѤï¤ê¤Þ¤·" "¤¿!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "¾ò·ïʸÃæ¤Ç¤ÎÂåÆþ" #: eval.c:1278 msgid "division by zero attempted" msgstr "¥¼¥í¤Ç¤Î½ü»»¤ò¹Ô¤¤¤Þ¤·¤¿¡£" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "`%%' ¤Ç¥¼¥í¤Ç¤Î½ü»»¤ò¹Ô¤¤¤Þ¤·¤¿¡£" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "tree_eval ¤ÎÃæ¤ËÉÔÀµ¤Ê¥¿¥¤¥× (%s) ¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "`/=' ¤Ç¥¼¥í¤Ç¤Î½ü»»¤ò¹Ô¤¤¤Þ¤·¤¿¡£" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "`%%=' ¤Ç¥¼¥í¤Ç¤Î½ü»»¤ò¹Ô¤¤¤Þ¤·¤¿¡£" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "Àë¸À¤µ¤ì¤Æ¤¤¤ë¿ô¤è¤ê¿¤¤°ú¿ô¤ò»È¤Ã¤Æ´Ø¿ô `%s' ¤ò¸Æ¤Ó½Ð¤·¤Þ¤·¤¿¡£" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "´Ø¿ô `%s' ¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# ¸Æ½Ð´Ø¿ô¥¹¥¿¥Ã¥¯:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- ¥á¥¤¥ó --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "¿ôÃͰʳ°¤ÎÃͤò»È¤Ã¤Æ¥Õ¥¤¡¼¥ë¥É¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "¶õÎó¤ò»È¤Ã¤Æ»²¾È¤·¤Æ¤¤¤Þ¤¹¡£" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "¥Õ¥£¡¼¥ë¥É %d ¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "Áȹþ´Ø¿ô¤ÎÌá¤êÃͤËÂåÆþ¤Ï¤Ç¤­¤Þ¤»¤ó¡£" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "`%sFMT' ¤Î»ØÄê `%s' ¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹¡£" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "`LINT' ¤Ø¤ÎÂåÆþ¤Ë½¾¤¤ `--lint' ¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "`extension' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: `%s' ¤ò³«¤±¤Þ¤»¤ó (%s)¡£\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: ¥é¥¤¥Ö¥é¥ê `%s': ´Ø¿ô `%s' ¤ò¸Æ¤Ó½Ð¤»¤Þ¤»¤ó (%s)¡£\n" #: ext.c:102 msgid "extension: missing function name" msgstr "extension: ´Ø¿ô̾¤¬¤¢¤ê¤Þ¤»¤ó¡£" #: ext.c:107 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: ´Ø¿ô̾ `%2$s' ¤ÎÃæ¤ËÉÔÀµ¤Êʸ»ú `%1$c' ¤¬»È¤ï¤ì¤Æ¤¤¤Þ¤¹¡£" #: ext.c:113 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: ´Ø¿ô `%s' ¤òºÆÄêµÁ¤Ç¤­¤Þ¤»¤ó¡£" #: ext.c:117 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: ´Ø¿ô `%s' ¤Ï´û¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "extension: ÁȤ߹þ¤ß´Ø¿ô `%s' ¤Ï´Ø¿ô̾¤Ë»È¤¨¤Þ¤»¤ó¡£" #: ext.c:124 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: ´Ø¿ô̾ `%s' ¤Ï´û¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£" #: ext.c:201 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "´Ø¿ô `%s' ¤Ë»È¤¨¤ë°ú¿ô¤Î¿ô¤Ï `%d' °Ê²¼¤ÈÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£" #: ext.c:204 #, c-format msgid "function `%s': missing argument #%d" msgstr "´Ø¿ô `%s': °ú¿ô #%d ¤¬¤¢¤ê¤Þ¤»¤ó¡£" #: ext.c:214 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "´Ø¿ô `%s': °ú¿ô #%d: ¥¹¥«¥é¡¼¤òÇÛÎó¤È¤·¤Æ»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "´Ø¿ô `%s': °ú¿ô #%d: ÇÛÎó¤ò¥¹¥«¥é¡¼¤È¤·¤Æ»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£" #: ext.c:243 msgid "Operation Not Supported" msgstr "¤³¤ÎÁàºî¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" #: field.c:326 msgid "NF set to negative value" msgstr "NF ¤¬Éé¤ÎÃͤǤ¹¡£" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: ÂèÆó°ú¿ô¤¬ÇÛÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: Âè»°°ú¿ô¤Ë¶õÎó¤ò»ÈÍѤ¹¤ë¤Î¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "`%s' ÉÕ¶á¤Î FIELDWIDTHS Ãͤ¬ÉÔÀµ¤Ç¤¹¡£" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "`FS' ¤Ë¶õÎó¤ò»ÈÍѤ¹¤ë¤Î¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤ÏÛ£Ëæ¤Ç¤¹¡£\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `--%s' ¤Ë°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó¡£\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `%c%s' ¤Ë°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó¡£\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹¡£\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `--%s'\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `%c%s'\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: ÉÔÀµ¤Ê¥ª¥×¥·¥ç¥ó -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ̵¸ú¤Ê¥ª¥×¥·¥ç¥ó -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: °ú¿ô¤¬É¬Íפʥª¥×¥·¥ç¥ó -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤ÏÛ£Ëæ¤Ç¤¹¡£\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤Ë°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó¡£\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤à¤¿¤á¤Ë³«¤±¤Þ¤»¤ó (%s)¡£" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "fd %d (`%s') ¤òÊĤ¸¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "redirect() ¤ÎÃæ¤ÇÉÔÀµ¤Ê¥Ä¥ê¡¼¥¿¥¤¥× %s ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "`%s' ¥ê¥À¥¤¥ì¥¯¥È¤ÎÌ¿Îá¼°¤Ë¿ôÃͤ·¤«µ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "`%s' ¥ê¥À¥¤¥ì¥¯¥È¤ÎÌ¿Îá¼°¤¬¶õÎó¤Ç¤¹¡£" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "`%2$s' ¥ê¥À¥¤¥ì¥¯¥È¤ËÏÀÍý±é»»¤Î·ë²Ì¤È»×¤ï¤ì¤ë¥Õ¥¡¥¤¥ë̾ `%1$s' ¤¬»È¤ï¤ì¤Æ¤¤¤Þ" "¤¹¡£" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "¥Õ¥¡¥¤¥ë `%.*s' ¤ÇɬÍװʾå¤Ë `>' ¤È `>>' ¤òÁȹ礻¤Æ¤¤¤Þ¤¹¡£" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "½ÐÎÏÍѤ˥ѥ¤¥× `%s' ¤ò³«¤±¤Þ¤»¤ó (%s)¡£" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "ÆþÎÏÍѤ˥ѥ¤¥× `%s' ¤ò³«¤±¤Þ¤»¤ó (%s)¡£" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "Æþ½ÐÎÏÍѤÎÁÐÊý¸þ¥½¥±¥Ã¥È `%s' ¤¬³«¤±¤Þ¤»¤ó (%s)¡£" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "Æþ½ÐÎÏÍѤÎÁÐÊý¸þ¥Ñ¥¤¥× `%s' ¤¬³«¤±¤Þ¤»¤ó (%s)¡£" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "`%s' ¤«¤é¥ê¥À¥¤¥ì¥¯¥È¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "`%s' ¤Ë¥ê¥À¥¤¥ì¥¯¥È¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "³«¤¤¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î¿ô¤¬¥·¥¹¥Æ¥àÀ©¸Â¤Ë㤷¤Þ¤·¤¿¡£¥Õ¥¡¥¤¥ëµ­½Ò»Ò¤ò¿½Å²½¤·¤Þ" "¤¹¡£" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "`%s' ¤¬ÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£" #: io.c:811 msgid "too many pipes or input files open" msgstr "³«¤¤¤Æ¤¤¤ë¥Ñ¥¤¥×¤Þ¤¿¤ÏÆþÎÏ¥Õ¥¡¥¤¥ë¤Î¿ô¤¬Â¿²á¤®¤Þ¤¹¡£" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: ÂèÆó°ú¿ô¤Ë»ÈÍѤǤ­¤ë¤Î¤Ï `to' ¤Þ¤¿¤Ï `from' ¤Ç¤¹¡£" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "" "close: `%.*s' ¤Ï¥Õ¥¡¥¤¥ë¡¢¥Ñ¥¤¥×¡¢ÊÂ¹Ô¥×¥í¥»¥¹¤Î¤¤¤º¤ì¤Ç¤â¤¢¤ê¤Þ¤»¤ó¡£" #: io.c:852 msgid "close of redirection that was never opened" msgstr "³«¤¤¤Æ¤Ê¤¤¥ê¥À¥¤¥ì¥¯¥È¤òÊĤ¸¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹¡£" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: ¥ê¥À¥¤¥ì¥¯¥È `%s' ¤Ï `|&' ¤ò»È¤Ã¤Æ¤¤¤Þ¤»¤ó¡£ÂèÆó°ú¿ô¤Ï̵»ë¤·¤Þ¤¹¡£" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "¥Ñ¥¤¥× `%2$s' ¤òÊĤ¸¤¿¤È¤­¤Î¾õÂÖ¥³¡¼¥É¤¬¼ºÇÔ (%1$d) ¤Ç¤·¤¿ (%3$s)¡£" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "¥Õ¥¡¥¤¥ë `%2$s' ¤òÊĤ¸¤¿¤È¤­¤Î¾õÂÖ¥³¡¼¥É¤¬¼ºÇÔ (%1$d) ¤Ç¤·¤¿ (%3$s)¡£" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "¥½¥±¥Ã¥È `%s' ¤òÌÀ¼¨¤·¤ÆÊĤ¸¤Æ¤¤¤Þ¤»¤ó¡£" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "ÊÂ¹Ô¥×¥í¥»¥¹ `%s' ¤òÌÀ¼¨¤·¤ÆÊĤ¸¤Æ¤¤¤Þ¤»¤ó¡£" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "¥Ñ¥¤¥× `%s' ¤òÌÀ¼¨¤·¤ÆÊĤ¸¤Æ¤¤¤Þ¤»¤ó¡£" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "¥Õ¥¡¥¤¥ë `%s' ¤òÌÀ¼¨¤·¤ÆÊĤ¸¤Æ¤¤¤Þ¤»¤ó¡£" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "ɸ½à½ÐÎϤؤνñ¹þ¤ß¥¨¥é¡¼ (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "ɸ½à¥¨¥é¡¼¤Ø¤Î½ñ¹þ¤ß¥¨¥é¡¼ (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "¥Ñ¥¤¥× `%s' ¤ò¥Õ¥é¥Ã¥·¥å¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "`%s' ¤ØÀܳ¤¹¤ë¥Ñ¥¤¥×¤òÊÂ¹Ô¥×¥í¥»¥¹¤«¤é¥Õ¥é¥Ã¥·¥å¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "¥Õ¥¡¥¤¥ë `%s' ¤ò¥Õ¥é¥Ã¥·¥å¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "»ÄÇ°¤Ê¤¬¤é¡¢/inet/raw ¥¯¥é¥¤¥¢¥ó¥È¤Î½àÈ÷¤¬¤Ç¤­¤Æ¤¤¤Þ¤»¤ó¡£" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "`/inet/raw' ¤Ï root ¥æ¡¼¥¶¡¼¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£" #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "»ÄÇ°¤Ê¤¬¤é¡¢/inet/raw ¥µ¡¼¥Ð¡¼¤Î½àÈ÷¤¬¤Ç¤­¤Æ¤¤¤Þ¤»¤ó¡£" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" "¥¹¥Ú¥·¥ã¥ë¥Õ¥¡¥¤¥ë̾ `%s' ¤Ë¡Êǧ¼±¤Ç¤­¤ë¡Ë¥×¥í¥È¥³¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "¥¹¥Ú¥·¥ã¥ë¥Õ¥¡¥¤¥ë̾ `%s' ¤ÏÉÔ´°Á´¤Ç¤¹¡£" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "`%s' ¤Î¥í¡¼¥«¥ë¥Ý¡¼¥È¤¬Ìµ¸ú¤Ç¤¹¡£" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "`/inet' ¤Ë¤Ï¥ê¥â¡¼¥È¥Û¥¹¥È̾¤¬É¬ÍפǤ¹¡£" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "`/inet' ¤Ë¤Ï¥ê¥â¡¼¥È¥Ý¡¼¥ÈÈֹ椬ɬÍפǤ¹¡£" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "`%s' ¤Î¥ê¥â¡¼¥È¥Ý¡¼¥È¤¬Ìµ¸ú¤Ç¤¹¡£" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "TCP/IP Àܳ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "¥Õ¥¡¥¤¥ë `%s' ¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "`%2$s' ¤ÎÂå¤ï¤ê¤Ë `PROCINFO[\"%1$s\"]' ¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "`/dev/user' ¤ÎÂå¤ï¤ê¤Ë `PROCINFO[...]' ¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "`%s' (¥â¡¼¥É `%s') ¤ò³«¤±¤Þ¤»¤ó¡£" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "¥Þ¥¹¥¿¡¼ pty ¤òÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "»Ò¥×¥í¥»¥¹¤¬É¸½à½ÐÎϤòÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "»Ò¥×¥í¥»¥¹¤¬¥¹¥ì¡¼¥Ö pty ¤òɸ½à½ÐÎϤ˰ÜÆ°¤Ç¤­¤Þ¤»¤ó (dup: %s)¡£" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "»Ò¥×¥í¥»¥¹¤¬É¸½àÆþÎϤòÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "»Ò¥×¥í¥»¥¹¤¬¥¹¥ì¡¼¥Ö pty ¤òɸ½àÆþÎϤ˰ÜÆ°¤Ç¤­¤Þ¤»¤ó (dup: %s)¡£" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "¥¹¥ì¡¼¥Ö pty ¤òÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "»Ò¥×¥í¥»¥¹¤¬¥Ñ¥¤¥×¤òɸ½à½ÐÎϤ˰ÜÆ°¤Ç¤­¤Þ¤»¤ó (dup: %s)¡£" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "»Ò¥×¥í¥»¥¹¤¬¥Ñ¥¤¥×¤òɸ½àÆþÎϤ˰ÜÆ°¤Ç¤­¤Þ¤»¤ó (dup: %s)¡£" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "¿Æ¥×¥í¥»¥¹¤¬É¸½à½ÐÎϤòÉüµì¤Ç¤­¤Þ¤»¤ó¡£\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "¿Æ¥×¥í¥»¥¹¤¬É¸½àÆþÎϤòÉüµì¤Ç¤­¤Þ¤»¤ó¡£\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "¥Ñ¥¤¥×¤òÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£" #: io.c:2024 msgid "`|&' not supported" msgstr "`|&' ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "¥Ñ¥¤¥× `%s' ¤¬³«¤±¤Þ¤»¤ó (%s)¡£" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "`%s' ÍÑ¤Î»Ò¥×¥í¥»¥¹¤ò¼Â¹Ô¤Ç¤­¤Þ¤»¤ó (fork: %s)¡£" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë `%s' ¤Ï¶õ¤Ç¤¹¡£" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "ÆþÎÏÍÑ¥á¥â¥ê¡¼¤ò¤³¤ì°Ê¾å³ÎÊݤǤ­¤Þ¤»¤ó¡£" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤ßÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿: %s¡£" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "Ê£¿ô¤Îʸ»ú¤ò `RS' ¤Ë»ÈÍѤ¹¤ë¤Î¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "gawk ¤Ç¤Ï¥ª¥×¥·¥ç¥ó `-m[fr]' ¤Ë¸ú²Ì¤Ï¤¢¤ê¤Þ¤»¤ó¡£" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m ¥ª¥×¥·¥ç¥ó¤Î»ÈÍÑË¡: `-m[fr] ¿ôÃÍ'" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤Ïǧ¼±¤Ç¤­¤Þ¤»¤ó¡£Ìµ»ë¤·¤Þ¤¹¡£\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "¶õ°ú¿ô¤Î `--source' ¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "´Ä¶­ÊÑ¿ô `POSIXLY_CORRECT' ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó `--posix' ¤òÍ­¸ú¤Ë" "¤·¤Þ¤¹¡£" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "¥ª¥×¥·¥ç¥ó `--posix' ¤Ï `--traditional' ¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "" "¥ª¥×¥·¥ç¥ó `--posix'/`--traditional' ¤Ï `--non-decimal-data' ¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "" "setuid root ¤Ç %s ¤ò¼Â¹Ô¤¹¤ë¤È¡¢¥»¥­¥å¥ê¥Æ¥£¾å¤ÎÌäÂ꤬ȯÀ¸¤¹¤ë¾ì¹ç¤¬¤¢¤ê¤Þ" "¤¹¡£" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "ɸ½àÆþÎϤò¥Ð¥¤¥Ê¥ê¥â¡¼¥É¤ËÀßÄê¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "ɸ½à½ÐÎϤò¥Ð¥¤¥Ê¥ê¥â¡¼¥É¤ËÀßÄê¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "ɸ½à¥¨¥é¡¼¤ò¥Ð¥¤¥Ê¥ê¥â¡¼¥É¤ËÀßÄê¤Ç¤­¤Þ¤»¤ó (%s)¡£" #: main.c:572 msgid "no program text at all!" msgstr "¥×¥í¥°¥é¥àʸ¤¬Á´¤¯¤¢¤ê¤Þ¤»¤ó!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "»È¤¤Êý: %s [POSIX ¤Þ¤¿¤Ï GNU ·Á¼°¥ª¥×¥·¥ç¥ó] -f ¥×¥í¥°¥é¥à¥Õ¥¡¥¤¥ë [--] ÆþÎÏ" "¥Õ¥¡¥¤¥ë ¡Ä\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "»È¤¤Êý: %s [POSIX ¤Þ¤¿¤Ï GNU ·Á¼°¥ª¥×¥·¥ç¥ó] [--] %c¥×¥í¥°¥é¥à%c ÆþÎÏ¥Õ¥¡¥¤" "¥ë ¡Ä\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "POSIX ¥ª¥×¥·¥ç¥ó:\t\tGNU Ĺ·Á¼°¥ª¥×¥·¥ç¥ó\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f ¥×¥í¥°¥é¥à¥Õ¥¡¥¤¥ë\t\t--file=¥×¥í¥°¥é¥à¥Õ¥¡¥¤¥ë\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "" "\t-F ¥Õ¥£¡¼¥ë¥É¥»¥Ñ¥ì¡¼¥¿\t\t\t--field-separator=¥Õ¥£¡¼¥ë¥É¥»¥Ñ¥ì¡¼¥¿\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v ÊÑ¿ô=ÂåÆþÃÍ\t\t--assign=ÊÑ¿ô=ÂåÆþÃÍ\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] ¿ôÃÍ\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=¥Õ¥¡¥¤¥ë]\t--dump-variables[=¥Õ¥¡¥¤¥ë]\n" #: main.c:681 msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W exec=¥Õ¥¡¥¤¥ë\t\t--exec=¥Õ¥¡¥¤¥ë\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=¥Õ¥¡¥¤¥ë]\t--profile[=¥Õ¥¡¥¤¥ë]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=¥×¥í¥°¥é¥àʸ\t--source=¥×¥í¥°¥é¥àʸ\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "¥Ð¥°¤òÊó¹ð¤¹¤ë¤Ë¤Ï¡¢`gawk.info¡Ê±Ñʸ¡Ë' ¤Î `Bugs' ¥Î¡¼¥É¤ò\n" "»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ °õºþ¤µ¤ì¤¿¥Þ¥Ë¥å¥¢¥ë¤ÇÂбþ¤¹¤ë¥»¥¯¥·¥ç¥ó\n" "¤Ï¡¢`Reporting Problems and Bugs' ¤Ç¤¹¡£\n" "\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk ¤Ï¡¢¥Ñ¥¿¡¼¥ó¤ò¸¡º÷¡¢¤½¤·¤Æ½èÍý¤¹¤ë¸À¸ì¤Ç¤¹¡£\n" "¥Ç¥Õ¥©¥ë¥ÈÀßÄê¤Ç¤Ï¡¢É¸½àÆþÎϤòÆɤ߹þ¤ß¡¢É¸½à½ÐÎϤ˽ñ¤­½Ð¤·¤Þ¤¹¡£\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "»ÈÍÑÎã:\n" "\tgawk '{ sum += $1 }; END { print sum }' ÆþÎÏ¥Õ¥¡¥¤¥ë\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "ËÜ¥×¥í¥°¥é¥à¤Ï¥Õ¥ê¡¼¡¦¥½¥Õ¥È¥¦¥¨¥¢¤Ç¤¹¡£Free Software Foundation ¸øɽ¤Î\n" "GNU General Public License¡Ê¥Ð¡¼¥¸¥ç¥ó£²¡¢¤Þ¤¿¤Ï¡¢¤³¤ì°Ê¸å¤Î¥Ð¡¼¥¸¥ç¥ó¡Ë\n" "¤Ë½¾¤¤ºÆÇÛÉÛ¡¢µÚ¤Ó/¤Þ¤¿¤Ï¡¢Êѹ¹¤ò²Ã¤¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "ËÜ¥×¥í¥°¥é¥à¤Ï¡¢ÍøÍѲÁÃͤ¬¤¢¤ë¤³¤È¤ò´üÂÔ¤·¤ÆÇÛÉÛ¤µ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢\n" "¤³¤ì¤Ï¡¢ÆÃÄêÌÜŪ¤Ë»ÈÍѲÄǽ¤Ç¤¢¤ë¤³¤È¡¢µÚ¤Ó¡¢¾¦ÍÑÌÜŪ¤Ë»ÈÍѤǤ­¤ë\n" "¤³¤È¤ò°Å¼¨¤¹¤ë¤â¤Î¤Ç¤Ï¤Ê¤¯¡¢¤¤¤«¤Ê¤ëÊݾڤâ°ìÀÚ¤¢¤ê¤Þ¤»¤ó¡£\n" "¾Ü¤·¤¯¤Ï¡¢GNU General Public License ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "ËÜ¥×¥í¥°¥é¥à¤Ë¤Ï¡¢GNU General Public License ¤¬ÅºÉÕ¤µ¤ì¤Æ¤¤¤ë¤Ï¤º¤Ç¤¹¡£\n" "¤â¤·¡¢ËÜ¥×¥í¥°¥é¥à¤È°ì½ï¤Ë GNU General Public License ¤òÆþ¼ê¤·¤Ê¤«¤Ã¤¿\n" "¾ì¹ç¤Ë¤Ï¡¢\n" "\tFree Software Foundation, Inc.,\n" "\t59 Temple Place - Suite 330, Boston, MA 02111-1307, USA\n" "¤Ø½ñÌ̤ǤªÃΤ餻¤¯¤À¤µ¤¤¡£\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "POSIX »ÅÍͤΠawk ¤Ç¤Ï -Ft ¤Ç FS ¤ò¥¿¥Ö¤ËÀßÄê¤Ç¤­¤Þ¤»¤ó¡£" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" "%s: ¥ª¥×¥·¥ç¥ó `-v' ¤Î°ú¿ô `%s' ¤¬ `ÊÑ¿ô=ÂåÆþÃÍ' ¤Î·Á¼°¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó¡£\n" "\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' ¤ÏÉÔÀµ¤ÊÊÑ¿ô̾¤Ç¤¹¡£" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s' ¤ÏÊÑ¿ô̾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£`%s=%s' ¤Î¥Õ¥¡¥¤¥ë¤òõ¤·¤Þ¤¹¡£" #: main.c:1074 msgid "floating point exception" msgstr "ÉâÆ°¾®¿ôÅÀÎã³°" #: main.c:1081 msgid "fatal error: internal error" msgstr "Ã×̿Ū¥¨¥é¡¼: ÆâÉô¥¨¥é¡¼" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "fd %d ¤¬»öÁ°¤Ë³«¤¤¤Æ¤¤¤Þ¤»¤ó¡£" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "»öÁ°¤Ë fd %d ÍÑ¤Ë /dev/null ¤ò³«¤±¤Þ¤»¤ó¡£" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "¥°¥ë¡¼¥×¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "¥³¥Þ¥ó¥É¥é¥¤¥ó:" #: msg.c:120 msgid "warning: " msgstr "·Ù¹ð: " #: msg.c:142 msgid "error: " msgstr "¥¨¥é¡¼: " #: msg.c:178 msgid "fatal: " msgstr "Ã×̿Ū: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "ʸ»úÎ󤫤éÉâÆ°¾®¿ô¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó¡£" #: node.c:414 msgid "backslash at end of string" msgstr "ʸ»úÎó¤Î½ª¤ê¤Ë¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤¬»È¤ï¤ì¤Æ¤¤¤Þ¤¹¡£" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX ¤Ï `\\x' ¥¨¥¹¥±¡¼¥×¤òµö²Ä¤·¤Þ¤»¤ó¡£" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "`\\x' ¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤Ë 16 ¿Ê¿ô¤¬¤¢¤ê¤Þ¤»¤ó¡£" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ `\\%c' ¤Ï `%c' ¤ÈƱÅù¤Ë°·¤ï¤ì¤Þ¤¹¡£" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s `%s': close-on-exec ¤òÀßÄê¤Ç¤­¤Þ¤»¤ó: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "`%s' ¤ò½ñ¹þ¤ßÍѤ˳«¤±¤Þ¤»¤ó¤Ç¤·¤¿: %s" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "ÆâÉô¥¨¥é¡¼: %s ¤Î vname ¤¬Ìµ¸ú¤Ç¤¹¡£" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# ÆâÉô¤Ç¤Ï `delete' ¤È¤·¤Æ°·¤ï¤ì¤Þ¤·¤¿¡£" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "# ¤³¤ì¤ÏưŪ¤Ë¥í¡¼¥É¤µ¤ì¤¿³ÈÄ¥µ¡Ç½¤Ç¤¹¡£" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawk ¥×¥í¥Õ¥¡¥¤¥ë¡¢ºîÀ®Æü»þ %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# BEGIN ¥Ö¥í¥Ã¥¯\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# ¥ë¡¼¥ë\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# END ¥Ö¥í¥Ã¥¯\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# ´Ø¿ô°ìÍ÷¡Ê¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¡Ë\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "prec_level Ãæ¤Î %s ¤ÏͽÁÛ³°¤Î¥¿¥¤¥×¤Ç¤¹¡£" #: regcomp.c:160 msgid "Success" msgstr "À®¸ù" #: regcomp.c:163 msgid "No match" msgstr "³ºÅö̵¤·" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "̵¸ú¤ÊÀµµ¬É½¸½" #: regcomp.c:169 msgid "Invalid collation character" msgstr "̵¸ú¤Ê¾È¹çʸ»ú" #: regcomp.c:172 msgid "Invalid character class name" msgstr "̵¸ú¤Êʸ»ú¥¯¥é¥¹Ì¾" #: regcomp.c:175 msgid "Trailing backslash" msgstr "ºÇ¸å¤Ë¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤¬ÉÕ¤¤¤Æ¤¤¤Þ¤¹¡£" #: regcomp.c:178 msgid "Invalid back reference" msgstr "¸åÊý¤Ø¤Î»²¾È¤¬Ìµ¸ú¤Ç¤¹¡£" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "[ ¤Þ¤¿¤Ï [^ ¤¬Âбþ¤·¤Þ¤»¤ó¡£" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "( ¤Þ¤¿¤Ï \\( ¤¬Âбþ¤·¤Þ¤»¤ó¡£" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "\\{ ¤¬Âбþ¤·¤Þ¤»¤ó¡£" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "\\{\\} ¤ÎÆâÍƤ¬Ìµ¸ú¤Ç¤¹¡£" #: regcomp.c:193 msgid "Invalid range end" msgstr "ÈÏ°Ï»ØÄê¤Î½ªÃ¼¤¬Ìµ¸ú¤Ç¤¹¡£" #: regcomp.c:196 msgid "Memory exhausted" msgstr "¥á¥â¥ê¡¼¤¬Â­¤ê¤Þ¤»¤ó¡£" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Àè¹Ô¤ÎÀµµ¬É½¸½¤¬Ìµ¸ú¤Ç¤¹¡£" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Àµµ¬É½¸½¤¬½ªÃ¼¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Àµµ¬É½¸½¤¬Ä¹²á¤®¤Þ¤¹¡£" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr ") ¤Þ¤¿¤Ï \\) ¤¬Âбþ¤·¤Þ¤»¤ó¡£" #: regcomp.c:688 msgid "No previous regular expression" msgstr "¤³¤ì¤è¤êÁ°¤Ë»ÈÍѤ·¤¿Àµµ¬É½¸½¤Ï¤¢¤ê¤Þ¤»¤ó¡£" EOF echo - 'nl.po' cat << 'EOF' > 'nl.po' # Translation of gawk-3.1.4l to Dutch. # Copyright (C) 2005 Free Software Foundation, Inc. # Benno Schulenberg , 2005. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.4l\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2005-06-24 22:39+0200\n" "Last-Translator: Benno Schulenberg \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.10.1\n" #: array.c:112 #, c-format msgid "attempt to use function `%s' as an array" msgstr "functie '%s' wordt gebruikt als array" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "scalaire parameter '%s' wordt gebruikt als array" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "scalair '%s' wordt gebruikt als array" #: array.c:156 #, c-format msgid "from %s" msgstr "van %s" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "verwijzing naar ongeïnitialiseerd element '%s[\"%s\"]'" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "index van array '%s' is lege string" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: index '%s' niet in array '%s' " #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: leeg (nil)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: leeg (nul)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: tabelgrootte = %d, arraygrootte = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: is een parameter\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: array-verwijzing naar %s\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "%s-blokken horen een actiedeel te hebben" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "elke regel hoort een patroon of een actiedeel te hebben" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "'%s' is een ingebouwde functie en is niet te herdefiniëren" #: awkgram.y:313 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "regexp-constante '/s/' lijkt C-commentaar, maar is het niet" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "regexp-constante '/%s/' lijkt C-commentaar, maar is het niet" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "opdracht heeft mogelijk geen effect" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "'%s' wordt gebruikt in %s-actie" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "'nextfile' is een gawk-uitbreiding" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "'return' wordt gebruikt buiten functiecontext" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "kale 'print' in BEGIN- of END-regel moet vermoedelijk 'print \"\"' zijn" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "'delete array' is een gawk-uitbreiding" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "'delete(array)' is een niet-overdraagbare tawk-uitbreiding" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "dubbele case-waarde in switch-opdracht: %s" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "dubbele 'default' in switch-opdracht" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "meerfase-tweerichtings-pipelines werken niet" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "reguliere expressie rechts van toewijzing" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "reguliere expressie links van '~' of '!~' operator" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "reguliere expressie rechts van vergelijking" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "onherverwezen 'getline' is ongedefinieerd binnen END-actie" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "aanroep van 'length' zonder haakjes is niet overdraagbaar" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "aanroep van 'length' zonder haakjes wordt door POSIX afgeraden" #: awkgram.y:962 msgid "use of non-array as array" msgstr "non-array wordt gebruikt als array" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "ongeldige index-expressie" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "onverwacht regeleinde of einde van string" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "lege programmatekst op commandoregel" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "kan bronbestand '%s' niet openen om te lezen (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "kan bronbestand '%s' niet lezen (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "bronbestand '%s' is leeg" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "bronbestand eindigt niet met een regeleinde" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "onafgesloten reguliere expressie eindigt met '\\' aan bestandseinde" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "%s: %d: regex-optie '/.../%c' van tawk werkt niet in gawk" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "regex-optie '/.../%c' van tawk werkt niet in gawk" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "onafgesloten reguliere expressie" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "onafgesloten reguliere expressie aan bestandseinde" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "gebruik van regelvoortzetting '\\ #...' is niet overdraagbaar" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "backslash is niet het laatste teken op de regel" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX staat operator '**=' niet toe" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "oude awk ondersteunt operator '**=' niet" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX staat operator '**' niet toe" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "oude awk ondersteunt operator '**' niet" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "oude awk ondersteunt operator '^=' niet" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "oude awk ondersteunt operator '^' niet" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "onafgesloten string" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "ongeldig teken '%c' in expressie" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "'%s' is een gawk-uitbreiding" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "'%s' is een uitbreiding door Bell Labs" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX staat '%s' niet toe" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "oude awk ondersteunt '%s' niet" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "'goto' wordt als schadelijk beschouwd!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d is een ongeldig aantal argumenten voor %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: derde argument is een gawk-uitbreiding" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: een stringwaarde als laatste vervangingsargument heeft geen effect" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "%s: derde parameter is geen veranderbaar object" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: tweede argument is een gawk-uitbreiding" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "dcgettext(_\"...\") is onjuist: verwijder het liggende streepje" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "dcngettext(_\"...\") is onjuist: verwijder het liggende streepje" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "functie '%s': parameter #%d, '%s', dupliceert parameter #%d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "functie '%s': parameter '%s' schaduwt een globale variabele" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "kan '%s' niet openen om te schrijven (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "profiel gaat naar standaardfoutuitvoer" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: sluiten is mislukt (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() twee keer aangeroepen!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "er waren geschaduwde variabelen." #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "functie '%s': kan functienaam niet als parameternaam gebruiken" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "functienaam '%s' is al eerder gedefinieerd" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "functie '%s' aangeroepen maar nergens gedefinieerd" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "functie '%s' gedefinieerd maar nergens aangeroepen" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "regexp-constante als parameter #%d levert booleanwaarde op" #: awkgram.y:3105 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "functie '%s' aangeroepen met spatie tussen naam en '(',\n" "of gebruikt als variabele of array" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s naar \"%s\" is mislukt (%s)" #: builtin.c:146 msgid "standard output" msgstr "standaarduitvoer" #: builtin.c:147 msgid "reason unknown" msgstr "reden onbekend" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: argument is geen getal" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argument %g ligt buiten toegestane bereik" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: kan pipe niet leegmaken: '%s' is geopend om te lezen, niet om te " "schrijven" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: kan bestand niet leegmaken: '%s' is geopend om te lezen, niet om te " "schrijven" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: '%s' is geen geopend bestand, pipe, of co-proces" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: eerste argument is geen string" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: tweede argument is geen string" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: argument is geen getal" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "'delete array' is een gawk-uitbreiding" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: argument is geen string" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: argument is geen getal" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: argument %g is negatief" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "'count$' hoort in alle opmaken gebruikt te worden, of in geen" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "'$' is niet toegestaan in awk-opmaak" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "het aantal argumenten met '$' moet > 0 zijn" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "argumentental %ld is groter dan het gegeven aantal argumenten" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "'$' is niet toegestaan na een punt in de opmaak" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "geen '$' opgegeven bij positionele veldbreedte of -precisie" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "'l' is betekenisloos in awk-opmaak; genegeerd" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "'l' is niet toegestaan in POSIX awk-opmaak" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "'L' is betekenisloos in awk-opmaak; genegeerd" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "'L' is niet toegestaan in POSIX awk-opmaak" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "'h' is betekenisloos in awk-opmaak; genegeerd" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "'h' is niet toegestaan in POSIX awk-opmaak" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: waarde %g ligt buiten toegestaan bereik voor opmaak '%%%c'" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "niet genoeg argumenten voor opmaakstring" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "niet genoeg ^ voor deze" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: opmaakaanduiding mist een stuurletter" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "te veel argumenten voor opmaakstring" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: geen argumenten" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: argument is geen getal" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: argument %g is negatief" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: startindex %g is ongeldig, 1 wordt gebruikt" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: startindex %g is geen integer, wordt afgekapt" #: builtin.c:1353 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: lengte %g is niet >= 1" #: builtin.c:1355 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: lengte %g is niet >= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: lengte %g is geen integer, wordt afgekapt" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" "substr: lengte %g is te groot voor stringindexering, wordt verkort tot %g" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: bronstring heeft lengte nul" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: startindex %g ligt voorbij het einde van de string" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: lengte %g bij startindex %g is groter dan de lengte van het eerste " "argument (%lu)" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftime: eerste argument is geen string" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: opmaakstring is leeg" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: tweede argument is geen getal" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: argument is geen string" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: argument is geen string" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "verwijzing naar ongeïnitialiseerd veld '$%d'" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: argument is geen string" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: argument is geen string" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: eerste argument is geen getal" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: tweede argument is geen getal" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: argument is geen getal" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: argument is geen getal" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: argument is geen getal" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: derde argument is geen array" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: derde argument is 0, wordt beschouwd als 1" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: eerste argument is geen getal" #: builtin.c:2717 msgid "lshift: received non-numeric second argument" msgstr "lshift: tweede argument is geen getal" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): negatieve waarden geven rare resultaten" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): cijfers na de komma worden afgekapt" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): te grote opschuifwaarden geven rare resultaten" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: eerste argument is geen getal" #: builtin.c:2755 msgid "rshift: received non-numeric second argument" msgstr "rshift: tweede argument is geen getal" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): negatieve waarden geven rare resultaten" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): cijfers na de komma worden afgekapt" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): te grote opschuifwaarden geven rare resultaten" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: eerste argument is geen getal" #: builtin.c:2793 msgid "and: received non-numeric second argument" msgstr "and: tweede argument is geen getal" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): negatieve waarden geven rare resultaten" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): cijfers na de komma worden afgekapt" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: eerste argument is geen getal" #: builtin.c:2829 msgid "or: received non-numeric second argument" msgstr "or: tweede argument is geen getal" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): negatieve waarden geven rare resultaten" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): cijfers na de komma worden afgekapt" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: eerste argument is geen getal" #: builtin.c:2865 msgid "xor: received non-numeric second argument" msgstr "xor: tweede argument is geen getal" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): negatieve waarden geven rare resultaten" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): cijfers na de komma worden afgekapt" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: argument is geen getal" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): negatieve waarden geven rare resultaten" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): cijfers na de komma worden afgekapt" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: '%s' is geen geldige lokale categorie" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "onbekend nodetype %d" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "bufferoverloop in genflags2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "array '%s' wordt gebruikt in een scalaire context" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "for: array '%s' veranderde van grootte %ld naar %ld tijdens uitvoer van de " "lus" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "'break' buiten een lus is niet overdraagbaar" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "'break' buiten een lus is niet toegestaan" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "'continue' buiten een lus is niet overdraagbaar" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "'continue' buiten een lus is niet toegestaan" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "'next' kan niet aangeroepen worden in een BEGIN-regel" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "'next' kan niet aangeroepen worden in een END-regel" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "'nextfile' kan niet aangeroepen worden in een BEGIN-regel" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "'nextfile' kan niet aangeroepen worden in een END-regel" #: eval.c:875 msgid "statement has no effect" msgstr "opdracht heeft geen effect" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "kan functienaam '%s' niet als variabele of array gebruiken" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "verwijzing naar ongeïnitialiseerd argument '%s'" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "verwijzing naar ongeïnitialiseerde variabele '%s'" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenation: neveneffecten in de ene expressie hebben de lengte van een " "andere veranderd!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "toewijzing wordt gebruikt in een conditionele context" #: eval.c:1278 msgid "division by zero attempted" msgstr "deling door nul" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "deling door nul in '%%'" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "ongeldig type (%s) in tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "deling door nul in '/='" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "deling door nul in '%%='" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "functie '%s' aangeroepen met meer argumenten dan gedeclareerd" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "functie '%s' is niet gedefinieerd" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Functieaanroepen-stack:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- hoofd --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "veldverwijzingspoging via een waarde die geen getal is" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "verwijzingspoging via een lege string" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "toegangspoging tot veld %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "" "toewijzing aan het resultaat van een ingebouwde functie is niet toegestaan" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "'IGNORECASE' is een gawk-uitbreiding" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "'BINMODE' is een gawk-uitbreiding" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "onjuiste opgave van '%sFMT': '%s'" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "'--lint' wordt uitgeschakeld wegens toewijzing aan 'LINT'" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "'extension' is een gawk-uitbreiding" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: kan '%s' niet openen (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: bibliotheek '%s': kan functie '%s' niet aanroepen (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "extension: ontbrekende functienaam" #: ext.c:107 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: ongeldig teken '%c' in functienaam '%s'" #: ext.c:113 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: kan functie '%s' niet herdefiniëren" #: ext.c:117 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: functie '%s' is al gedefinieerd" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "extension: kan in gawk ingebouwde '%s' niet als functienaam gebruiken" #: ext.c:124 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: functienaam '%s' is al eerder gedefinieerd" #: ext.c:201 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "" "functie '%s' is gedefinieerd om niet meer dan %d argument(en) te accepteren" #: ext.c:204 #, c-format msgid "function `%s': missing argument #%d" msgstr "functie '%s': ontbrekend argument #%d" #: ext.c:214 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "functie '%s': argument #%d: een scalair wordt gebruikt als array" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "functie '%s': argument #%d: een array wordt gebruikt als scalair" #: ext.c:243 msgid "Operation Not Supported" msgstr "Actie wordt niet ondersteund" #: field.c:326 msgid "NF set to negative value" msgstr "NF is op een negatieve waarde gezet" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: tweede argument is geen array" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: lege string als derde argument is een gawk-uitbreiding" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "'FIELDWIDTHS' is een gawk-uitbreiding" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "ongeldige waarde voor FIELDWIDTHS, nabij '%s'" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "een lege string als 'FS' is een gawk-uitbreiding" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: optie '%s' is niet eenduidig\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: optie '--%s' staat geen argument toe\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: optie '%c%s' staat geen argument toe\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: optie '%s' vereist een argument\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: onbekende optie '--%s'\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: onbekende optie '%c%s'\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: ongeldige optie -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ongeldige optie -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: optie vereist een argument -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: optie '-W %s' is niet eenduidig\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: optie '-W %s' staat geen argument toe\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "kan bestand '%s' niet openen om te lezen (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "sluiten van fd %d ('%s') is mislukt (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "ongeldig boomtype %s in redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "expressie in omleiding '%s' heeft alleen een getal als waarde" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "expressie voor omleiding '%s' heeft een lege string als waarde" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "bestandsnaam '%s' voor omleiding '%s' kan het resultaat zijn van een " "logische expressie" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "onnodige mix van '>' en '>>' voor bestand '%.*s'" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "kan pipe '%s' niet openen voor uitvoer (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "kan pipe '%s' niet openen voor invoer (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "kan tweerichtings-socket '%s' niet openen voor invoer/uitvoer (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "kan tweerichtings-pipe '%s' niet openen voor invoer/uitvoer (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "kan niet omleiden van '%s' (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "kan niet omleiden naar '%s' (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "systeemgrens voor aantal open bestanden is bereikt: begonnen met multiplexen" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "sluiten van '%s' is mislukt (%s)." #: io.c:811 msgid "too many pipes or input files open" msgstr "te veel pipes of invoerbestanden geopend" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: tweede argument moet 'to' of 'from' zijn" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: '%.*s' is geen open bestand, pipe, of co-proces" #: io.c:852 msgid "close of redirection that was never opened" msgstr "sluiten van een nooit-geopende omleiding" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: omleiding '%s' is niet geopend met '|&'; tweede argument genegeerd" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "afsluitwaarde %d bij mislukte sluiting van pipe '%s' (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "afsluitwaarde %d bij mislukte sluiting van bestand '%s' (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "geen expliciete sluiting van socket '%s' aangegeven" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "geen expliciete sluiting van co-proces '%s' aangegeven" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "geen expliciete sluiting van pipe '%s' aangegeven" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "geen expliciete sluiting van bestand '%s' aangegeven" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "fout tijdens schrijven van standaarduitvoer (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "fout tijdens schrijven van standaardfoutuitvoer (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "leegmaken van pipe '%s' is mislukt (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "leegmaken door co-proces van pipe naar '%s' is mislukt (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "leegmaken van bestand '%s' is mislukt (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "cliënt van /inet/raw is nog niet klaar, sorry" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "alleen root mag '/inet/raw' gebruiken." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "server van /inet/raw is nog niet klaar, sorry" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "geen (bekend) protocol aangegeven in speciale bestandsnaam '%s'" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "speciale bestandsnaam '%s' is onvolledig" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "ongeldige lokale poort in '%s'" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "'/inet' heeft een gindse hostnaam nodig" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "'/inet' heeft een gindse poort nodig" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "ongeldige gindse poort in '%s'" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "TCP/IP-communicatie wordt niet ondersteund" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "bestand '%s' is een map" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "gebruik 'PROCINFO[\"%s\"]' in plaats van '%s'" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "gebruik 'PROCINFO[...]' in plaats van '/dev/user'" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "kan '%s' niet openen, modus '%s'" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "kan meester-pty van kindproces niet sluiten (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "kan standaarduitvoer van kindproces niet sluiten (%s)" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "kan slaaf-pty niet overzetten naar standaarduitvoer van kindproces (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "kan standaardinvoer van kindproces niet sluiten (%s)" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "kan slaaf-pty niet overzetten naar standaardinvoer van kindproces (dup: %s)" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "kan slaaf-pty niet sluiten (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" "kan pipe niet overzetten naar standaarduitvoer van kindproces (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "kan pipe niet overzetten naar standaardinvoer van kindproces (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "kan standaarduitvoer van ouderproces niet herstellen\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "kan standaardinvoer van ouderproces niet herstellen\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "kan pipe niet sluiten (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "'|&' wordt niet ondersteund" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "kan pipe '%s' niet openen (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "kan voor '%s' geen kindproces maken (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "databestand '%s' is leeg" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "kan geen extra invoergeheugen meer toewijzen" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "fout tijdens lezen van invoerbestand '%s': %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "een 'RS' van meerdere tekens is een gawk-uitbreiding" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "optie '-m[fr]' is irrelevant in gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "gebruikswijze van optie -m: '-m[fr] nnn'" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: optie '-W %s' is onbekend; genegeerd\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "argument van '--source' is leeg; genegeerd" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "omgevingsvariabele 'POSIXLY_CORRECT' is gezet: '--posix' ingeschakeld" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "'--posix' overstijgt '--traditional'" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "'--posix'/'--traditional' overstijgen '--non-decimal-data'" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "het uitvoeren van %s als setuid root kan een veiligheidsrisico zijn" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "kan standaardinvoer niet in binaire modus plaatsen (%s)" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "kan standaarduitvoer niet in binaire modus plaatsen (%s)" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "kan standaardfoutuitvoer niet in binaire modus plaatsen (%s)" #: main.c:572 msgid "no program text at all!" msgstr "helemaal geen programmatekst!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Gebruik: %s [opties in POSIX- of GNU-stijl] -f programmabestand [--] " "bestand ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Gebruik: %s [opties in POSIX- of GNU-stijl] [--] %cprogramma%c bestand ...\n" "\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "\tPOSIX-opties:\t\t\tlange GNU-opties:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f programmabestand\t\t--file=programmabestand\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F veldscheidingsteken\t\t--field-separator=veldscheidingsteken\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=waarde\t\t\t--assign=var=waarde\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] waarde\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=bestand]\t--dump-variables[=bestand]\n" #: main.c:681 msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W exec=bestand\t\t\t--exec=bestand\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=bestand]\t\t--profile[=bestand]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=programmatekst\t--source=programmatekst\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t\t--version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "Voor het rapporteren van gebreken, zie de node 'Bugs' in 'gawk.info',\n" "ofwel de sectie 'Reporting Problems and Bugs' in de gedrukte versie.\n" "Meld fouten in de vertaling aan .\n" "\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk is een patroonherkennings- en bewerkingsprogramma.\n" "Bij verstek leest het standaardinvoer en schrijft naar standaarduitvoer.\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "Voorbeelden:\n" "\tgawk '{ som += $1 }; END { print som }' bestand\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "Dit is vrije programmatuur; u mag het verspreiden en/of wijzigen\n" "onder de voorwaarden van de GNU General Public License zoals uitgegeven\n" "door de Free Software Foundation; naar keuze ofwel onder versie 2\n" "of onder een nieuwere versie van die licentie.\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Dit programma wordt uitgegeven in de hoop dat het bruikbaar is,\n" "maar ZONDER ENIGE GARANTIE; zelfs zonder de impliciete garantie\n" "van VERKOOPBAARHEID of GESCHIKTHEID VOOR EEN BEPAALD DOEL.\n" "Zie de GNU General Public License voor nadere details.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Bij dit programma hoort u een kopie van de GNU General Public License\n" "ontvangen te hebben; is dat niet het geval, schrijf dan naar\n" "Free Software Foundation, Inc., 51 Franklin Street, fifth floor\n" "Boston, MA 02110-1301, USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft maakt van FS geen tab in POSIX awk" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" "%s: argument '%s' van '-v' is niet van de vorm 'var=waarde'\n" "\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "'%s' is geen geldige variabelenaam" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "'%s' is geen variabelenaam, zoekend naar bestand '%s=%s'" #: main.c:1074 msgid "floating point exception" msgstr "drijvende-komma-berekeningsfout" #: main.c:1081 msgid "fatal error: internal error" msgstr "fatale fout: interne fout" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "geen reeds-geopende fd %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "kan /dev/null niet openen voor fd %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "kan groepen niet vinden: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "commandoregel:" #: msg.c:120 msgid "warning: " msgstr "waarschuwing: " #: msg.c:142 msgid "error: " msgstr "fout: " #: msg.c:178 msgid "fatal: " msgstr "fataal: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "kan string niet naar drijvende-komma-getal converteren" #: node.c:414 msgid "backslash at end of string" msgstr "backslash aan het einde van de string" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX staat geen '\\x' stuurcodes toe" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "geen hex cijfers in stuurcodereeks '\\x'" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "stuurcodereeks '\\%c' behandeld als normale '%c'" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s '%s': kan close-on-exec niet activeren: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "kan '%s' niet openen om te schrijven: %s" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "interne fout: %s heeft een lege vname" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# wordt intern behandeld als 'delete'" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "# dit is een dynamisch geladen uitbreidingsfunctie" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawk-profiel, gemaakt %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# BEGIN-blok(ken)\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Regel(s)\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# END-blok(ken)\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Functies, alfabetisch geordend\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "onverwacht type %s in prec_level" #: regcomp.c:160 msgid "Success" msgstr "Gelukt" #: regcomp.c:163 msgid "No match" msgstr "Geen overeenkomsten" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Ongeldige reguliere expressie" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Ongeldig verbindingsteken" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Ongeldige tekenklassenaam" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Backslash aan het eind" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Ongeldige terugverwijzing" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "Ongepaarde [ of [^" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "Ongepaarde ( of \\(" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "Ongepaarde \\{" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Ongeldige inhoud van \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Ongeldig reekseinde" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Onvoldoende geheugen" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Ongeldige voorafgaande reguliere expressie" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Voortijdig einde van reguliere expressie" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Reguliere expressie is te groot" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr "Ongepaarde ) of \\)" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Geen eerdere reguliere expressie" EOF echo - 'pl.po' cat << 'EOF' > 'pl.po' # Polish translations for GNU AWK package. # Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. # Wojciech Polak , 2003, 2004, 2005. # additional help by Sergey Poznyakoff , 2003. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.4l\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2005-06-26 23:55+0200\n" "Last-Translator: Wojciech Polak \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-2\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" #: array.c:112 #, c-format msgid "attempt to use function `%s' as an array" msgstr "próba u¿ycia funkcji `%s' jako tablicy" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "próba u¿ycia parametru `%s' skalaru jako tablicy" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "próba u¿ycia skalaru `%s' jako tablicy" #: array.c:156 #, c-format msgid "from %s" msgstr "od %s" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "odwo³anie do niezainicjowanego elementu `%s[\"%s\"]'" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "indeks tablicy `%s' jest zerowym ³añcuchem" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: indeks `%s' nie jest w tablicy `%s'" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: pusty (null)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: pusty (zero)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: table_size = %d, array_size = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: jest parametrem\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: array_ref do %s\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "%s bloków musi posiadaæ czê¶æ dotycz±c± akcji" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "ka¿da regu³a musi posiadaæ wzorzec lub czê¶æ dotycz±c± akcji" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "" "`%s' jest funkcj± wbudowan±, wiêc nie mo¿e zostaæ ponownie zdefiniowana" #: awkgram.y:313 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "sta³e wyra¿enie regularne `//' wygl±da jak komentarz C++, ale nim nie jest" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "sta³e wyra¿enie regularne `/%s/' wygl±da jak komentarz C, ale nim nie jest" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "instrukcja mo¿e nie mieæ ¿adnego efektu" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "`%s' u¿yty w akcji %s" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' jest rozszerzeniem gawk" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "`return' u¿yty poza kontekstem funkcji" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "zwyk³y `print' w regu³ach BEGIN lub END powinien prawdopodobnie byæ jako " "`print \"\"'" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "`delete tablica' jest rozszerzeniem gawk" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete(tablica)' jest nieprzeno¶nym rozszerzeniem tawk" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "powielone warto¶ci case w ciele switch: %s" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "wykryto powielony `default' w ciele switch" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "wieloetapowe dwukierunkowe linie potokowe nie dzia³aj±" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "wyra¿anie regularne po prawej stronie przypisania" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "wyra¿enie regularne po lewej stronie operatora `~' lub `!~'" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "wyra¿enie regularne po prawej stronie porównania" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "" "komenda `getline' bez przekierowania nie jest zdefiniowana wewn±trz akcji END" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "wywo³anie `length' bez nawiasów jest nieprzeno¶ne" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "wywo³anie `length' bez podania nawiasów jest niezalecane przez POSIX" #: awkgram.y:962 msgid "use of non-array as array" msgstr "u¿ycie nie-tablicy jako tablicy" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "nieprawid³owe wyra¿enie indeksowe" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "niespodziewany znak nowego wiersza lub koñca ³añcucha" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "pusty tekst programu w linii poleceñ" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "nie mo¿na otworzyæ pliku ¼ród³owego `%s' do czytania (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "nie mo¿na otworzyæ pliku ¼ród³owego `%s' (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "plik ¼ród³owy `%s' jest pusty" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "plik ¼ród³owy nie posiada na koñcu znaku nowego wiersza" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" "niezakoñczone prawid³owo wyra¿enie regularne koñczy siê znakiem `\\' na " "koñcu pliku" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: modyfikator wyra¿enia regularnego `/.../%c' tawk nie dzia³a w gawk" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "modyfikator wyra¿enia regularnego `/.../%c' tawk nie dzia³a w gawk" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "niezakoñczone wyra¿enie regularne" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "niezakoñczone wyra¿enie regularne na koñcu pliku" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "u¿ycie `\\ #...' kontynuacji linii nie jest przeno¶ne" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "backslash nie jest ostatnim znakiem w wierszu" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX nie zezwala na operator `**='" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "stary awk nie wspiera operatora `**='" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX nie zezwala na operator `**'" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "stary awk nie wspiera operatora `**'" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "operator `^=' nie jest wspierany w starym awk" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "operator `^' nie jest wspierany w starym awk" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "niezakoñczony ³añcuch" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "nieprawid³owy znak '%c' w wyra¿eniu" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' jest rozszerzeniem gawk" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' jest rozszerzeniem Bell Labs" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX nie zezwala na `%s'" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' nie jest wspierany w starym awk" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "`goto' uwa¿ane za szkodliwe!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d jest nieprawid³owe jako liczba argumentów dla %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: trzeci argument jest rozszerzeniem gawk" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: litera³ ³añcuchowy jako ostatni argument podstawienia nie ma ¿adnego " "efektu" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "%s trzeci parametr nie jest zmiennym obiektem" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: drugi argument jest rozszerzeniem gawk" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "nieprawid³owe u¿ycie dcgettext(_\"...\"): usuñ znak podkre¶lenia" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "nieprawid³owe u¿ycie dcngettext(_\"...\"): usuñ znak podkre¶lenia" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "funkcja `%s': parametr #%d, `%s', powiela parametr #%d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funkcja `%s': parametr `%s' zas³ania globaln± zmienn±" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "nie mo¿na otworzyæ `%s' do zapisu (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "wysy³anie profilu na standardowe wyj¶cie diagnostyczne" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: zamkniêcie nie powiod³o siê (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() wywo³ana podwójnie!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "wyst±pi³y przykryte zmienne." #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funkcja `%s': nie mo¿na u¿yæ nazwy funkcji jako nazwy parametru" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "nazwa funkcji `%s' zosta³a zdefiniowana poprzednio" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "funkcja `%s' zosta³a wywo³ana, ale nigdy nie zosta³a zdefiniowana" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "funkcja `%s' zosta³a zdefiniowana, ale nigdy nie zosta³a wywo³ana" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "sta³e wyra¿enie regularne dla parametru #%d daje warto¶æ logiczn±" #: awkgram.y:3105 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "funkcja `%s' zosta³a wywo³ana z bia³ymi znakami pomiêdzy jej nazw± a znakiem " "`(',\n" "lub u¿yta jako zmienna lub jako tablica" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s do \"%s\" nie powiód³ siê (%s)" #: builtin.c:146 msgid "standard output" msgstr "standardowe wyj¶cie" #: builtin.c:147 msgid "reason unknown" msgstr "nieznany powód" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: otrzymano argument nie bêd±cy liczb±" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argument %g jest poza zasiêgiem" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: nie mo¿na opró¿niæ: potok `%s' otwarty do czytania, a nie do zapisu" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: nie mo¿na opró¿niæ: plik `%s' otwarty do czytania, a nie do zapisu" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' nie jest ani otwartym plikiem, ani potokiem, ani procesem" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: otrzymano pierwszy argument, który nie jest ³añcuchem" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: otrzymano drugi argument, który nie jest ³añcuchem" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: otrzymano argument, który nie jest liczb±" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "`delete tablica' jest rozszerzeniem gawk" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: otrzymano argument, który nie jest ³añcuchem" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: otrzymano argument, który nie jest liczb±" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: otrzymano ujemny argument %g" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "nale¿y u¿yæ `count$' we wszystkich formatach lub nic" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "`$' jest niedozwolony w formatach awk" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "argument count z `$' musi byæ > 0" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "argument count %ld wiêkszy ni¿ ca³kowita suma argumentów dostarczonych" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "`$' jest niedozwolony po kropce w formacie" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "brak `$' dla pozycyjnej szeroko¶ci pola lub precyzji" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "`l' jest bezsensowny w formatach awk; zignorowany" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "`l' jest niedozwolony w formatach POSIX awk" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "`L' jest bezsensowny w formatach awk; zignorowany" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "`L' jest niedozwolony w formatach POSIX awk" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "`h' jest bezsensowny w formatach awk; zignorowany" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "`h' jest niedozwolony w formatach POSIX awk" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: warto¶æ %g jest poza zasiêgiem dla formatu `%%%c'" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "" "brak wystarczaj±cej liczby argumentów, aby zaspokoiæ ³añcuch formatuj±cy" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "zabrak³o ^" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: specyfikator formatu nie posiada kontrolnej litery" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "zbyt du¿o podanych argumentów w ³añcuchu formatuj±cym" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: brak argumentów" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: otrzymano argument, który nie jest liczb±" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: wywo³ana z ujemnym argumentem %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: pocz±tkowy indeks %g jest nieprawid³owy, nast±pi u¿ycie 1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "" "substr: pocz±tkowy indeks %g, który nie jest liczb± ca³kowit±, zostanie " "obciêty" #: builtin.c:1353 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: d³ugo¶æ %g nie jest >= 1" #: builtin.c:1355 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: d³ugo¶æ %g nie jest >= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: d³ugo¶æ %g, która nie jest liczb± ca³kowit±, zostanie obciêta" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr: d³ugo¶æ %g zbyt du¿a dla indeksu ³añcucha, obcinanie do %g" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: ³añcuch ¼ród³owy ma zerow± d³ugo¶æ" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: pocz±tkowy indeks %g le¿y poza koñcem ³añcucha" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: d³ugo¶æ %g zaczynaj±c od %g przekracza d³ugo¶æ pierwszego argumentu " "(%lu)" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftime: otrzymano pierwszy argument, który nie jest ³añcuchem" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: otrzymano pusty ³añcuch formatuj±cy" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: otrzymano drugi argument, który nie jest liczb±" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: otrzymano argument, który nie jest ³añcuchem" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: otrzymano argument, który nie jest ³añcuchem" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "odwo³anie do niezainicjowanego pola `$%d'" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: otrzymano argument, który nie jest ³añcuchem" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: otrzymano argument, który nie jest ³añcuchem" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: otrzymano pierwszy argument, który nie jest liczb±" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: otrzymano drugi argument, który nie jest liczb±" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: otrzymano argument, który nie jest liczb±" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: otrzymano argument, który nie jest liczb±" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: otrzymano argument, który nie jest liczb±" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: otrzymano trzeci argument, który nie jest tablic±" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: trzeci argument 0 potraktowany jako 1" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: otrzymano pierwszy argument, który nie jest liczb±" #: builtin.c:2717 msgid "lshift: received non-numeric second argument" msgstr "lshift: otrzymano drugi argument, który nie jest liczb±" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): u³amkowe warto¶ci zostan± obciête" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): zbyt du¿a warto¶æ przesuniêcia spowoduje dziwne wyniki" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: otrzymano pierwszy argument, który nie jest liczb±" #: builtin.c:2755 msgid "rshift: received non-numeric second argument" msgstr "rshift: otrzymano drugi argument, który nie jest liczb±" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): u³amkowe warto¶ci zostan± obciête" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): zbyt du¿a warto¶æ przesuniêcia spowoduje dziwne wyniki" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: otrzymano pierwszy argument, który nie jest liczb±" #: builtin.c:2793 msgid "and: received non-numeric second argument" msgstr "and: otrzymano drugi argument, który nie jest liczb±" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): u³amkowe warto¶ci zostan± obciête" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: otrzymano pierwszy argument, który nie jest liczb±" #: builtin.c:2829 msgid "or: received non-numeric second argument" msgstr "or: otrzymano drugi argument, który nie jest liczb±" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): u³amkowe warto¶ci zostan± obciête" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: otrzymano pierwszy argument, który nie jest liczb±" #: builtin.c:2865 msgid "xor: received non-numeric second argument" msgstr "xor: otrzymano drugi argument, który nie jest liczb±" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): u³amkowe warto¶ci zostan± obciête" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: otrzymano argument, który nie jest liczb±" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): ujemne warto¶ci spowoduj± dziwne wyniki" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): u³amkowe warto¶ci zostan± obciête" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' nie jest prawid³ow± kategori± lokalizacji" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "nieznany typ wêz³a %d" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "przepe³nienie bufora w genflags2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "próba u¿ycia tablicy `%s' w kontek¶cie skalaru" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "pêtla for: tablica `%s' zmieni³a rozmiar z %ld do %ld podczas wykonywania " "pêtli" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "instrukcja `break' poza pêtl± jest nieprzeno¶na" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "instrukcja `break' poza pêtl± jest niedozwolona" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "instrukcja `continue' poza pêtl± jest nieprzeno¶na" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "instrukcja `continue' poza pêtl± jest niedozwolona" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "instrukcja `next' nie mo¿e byæ wywo³ana z wnêtrza regu³y BEGIN" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "instrukcja `next' nie mo¿e byæ wywo³ana z wnêtrza regu³y END" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "instrukcja `nextfile' nie mo¿e byæ wywo³ana z wnêtrza regu³y BEGIN" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "instrukcja `nextfile' nie mo¿e byæ wywo³ana z wnêtrza regu³y END" #: eval.c:875 msgid "statement has no effect" msgstr "instrukcja nie ma ¿adnego efektu" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "nie mo¿na u¿yæ nazwy funkcji `%s' jako zmiennej lub tablicy" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "odwo³anie do niezainicjowanego argumentu `%s'" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "odwo³anie do niezainicjowanej zmiennej `%s'" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "konkatenacja: skutki uboczne w jednym wyra¿eniu spowodowa³y zmianê d³ugo¶ci " "innego wyra¿enia!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "przypisanie u¿yte w kontek¶cie warunkowym" #: eval.c:1278 msgid "division by zero attempted" msgstr "próba dzielenia przez zero" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "próba dzielenia przez zero w `%%'" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "nieprawid³owy typ (%s) w tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "próba dzielenia przez zero w `/='" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "próba dzielenia przez zero w `%%='" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "" "funkcja `%s' zosta³a wywo³ana z wiêksz± ilo¶ci± argumentów ni¿ zosta³o to " "zadeklarowane" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "funkcja `%s' nie zosta³a zdefiniowana" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Stos Wywo³awczy Funkcji:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- g³ówne --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "próba odwo³ania do pola poprzez nienumeryczn± warto¶æ" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "próba odwo³ania z zerowego ³añcucha" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "próba dostêpu do pola %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "przypisanie do wyniku wbudowanej funkcji nie jest dozwolone" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' jest rozszerzeniem gawk" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' jest rozszerzeniem gawk" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "z³a specyfikacja `%sFMT' `%s'" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "wy³±czenie `--lint' z powodu przypisania do `LINT'" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "`extension' jest rozszerzeniem gawk" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "rozszerzenie: nie mo¿na otworzyæ `%s' (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "rozszerzenie: biblioteka `%s': nie mo¿na wywo³aæ funkcji `%s' (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "rozszerzenie: brakuj±ca nazwa funkcji" #: ext.c:107 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "rozszerzenie: nieprawid³owy znak `%c' w nazwie funkcji `%s'" #: ext.c:113 #, c-format msgid "extension: can't redefine function `%s'" msgstr "rozszerzenie: nie mo¿na zredefiniowaæ funkcji `%s'" #: ext.c:117 #, c-format msgid "extension: function `%s' already defined" msgstr "rozserzenie: funkcja `%s' zosta³a ju¿ zdefiniowana" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "rozszerzenie: nie mo¿na u¿yæ wbudowanej w gawk `%s' jako nazwy funkcji" #: ext.c:124 #, c-format msgid "extension: function name `%s' previously defined" msgstr "rozserzenie: nazwa funkcji `%s' zosta³a zdefiniowana wcze¶niej" #: ext.c:201 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funkcja `%s' zdefiniowana aby pobraæ nie wiêcej ni¿ %d argument(ów)" #: ext.c:204 #, c-format msgid "function `%s': missing argument #%d" msgstr "funkcja `%s': brakuje #%d argumentu" #: ext.c:214 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "funkcja `%s': argument #%d: próba u¿ycia skalaru jako tablicy" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "funkcja `%s': argument #%d: próba u¿ycia tablicy jako skalaru" #: ext.c:243 msgid "Operation Not Supported" msgstr "Operacja nie jest wspierana" #: field.c:326 msgid "NF set to negative value" msgstr "NF ustawiony na warto¶æ ujemn±" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: drugi argument nie jest tablic±" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: zerowy ³añcuch dla trzeciego argumentu jest rozszerzeniem gawk" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' jest rozszerzeniem gawk" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "nieprawid³owa warto¶æ FIELDWIDTHS, w pobli¿u `%s'" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "zerowy ³añcuch dla `FS' jest rozszerzeniem gawk" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: opcja `%s' jest niejednoznaczna\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: opcja `--%s' nie mo¿e mieæ argumentów\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: opcja `%c%s' nie mo¿e mieæ argumentów\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: opcja `%s' musi mieæ argument\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: nieznana opcja `--%s'\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: nieznana opcja `%c%s'\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: niew³a¶ciwa opcja -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: b³êdna opcja -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: opcja musi mieæ argument -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: opcja `-W %s' jest niejednoznaczna\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: opcja `-W %s' nie mo¿e mieæ argumentów\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "nie mo¿na otworzyæ pliku `%s' do czytania (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "zamkniêcie fd %d (`%s') nie powiod³o siê (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "nieprawid³owy typ drzewa %s w funkcji redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "wyra¿enie w przekierowaniu `%s' ma tylko warto¶æ numeryczn±" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "wyra¿enie dla przekierowania `%s' ma zerow± warto¶æ ³añcucha" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "nazwa pliku `%s' dla przekierowania `%s' mo¿e byæ rezultatem logicznego " "wyra¿enia" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "niepotrzebne mieszanie `>' i `>>' dla pliku `%.*s'" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "nie mo¿na otworzyæ potoku `%s' jako wyj¶cia (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "nie mo¿na otworzyæ potoku `%s' jako wej¶cia (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "" "nie mo¿na otworzyæ dwukierunkowego gniazda `%s' jako wej¶cia/wyj¶cia (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "" "nie mo¿na otworzyæ dwukierunkowego potoku `%s' jako wej¶cia/wyj¶cia (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "nie mo¿na przekierowaæ z `%s' (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "nie mo¿na przekierowaæ do `%s' (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "osi±gniêto systemowy limit otwartych plików: rozpoczêcie multipleksowania " "deskryptorów plików" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "zamkniêcie `%s' nie powiod³o siê (%s)." #: io.c:811 msgid "too many pipes or input files open" msgstr "zbyt du¿o otwartych potoków lub plików wej¶ciowych" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: drugim argumentem musi byæ `to' lub `from'" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "" "close: `%.*s' nie jest ani otwartym plikiem, ani potokiem, ani procesem" #: io.c:852 msgid "close of redirection that was never opened" msgstr "zamkniêcie przekierowania, które nigdy nie zosta³o otwarte" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: przekierowanie `%s' nie zosta³o otwarte z `|&', drugi argument " "zignorowany" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "status awarii (%d) podczas zamykania potoku `%s' (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "status awarii (%d) podczas zamykania pliku `%s' (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "brak jawnego zamkniêcia gniazdka `%s'" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "brak jawnego zamkniêcia procesu pomocniczego `%s'" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "brak jawnego zamkniêcia potoku `%s'" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "brak jawnego zamkniêcia pliku `%s'" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "b³±d podczas zapisu na standardowe wyj¶cie (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "b³±d podczas zapisu na standardowe wyj¶cie diagnostyczne (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "opró¿nienie potoku `%s' nie powiod³o siê (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "" "opró¿nienie potoku do `%s' przez proces pomocniczy nie powiod³o siê (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "opró¿nienie pliku `%s' nie powiod³o siê (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "klient /inet/raw nie jest jeszcze gotowy, przykro mi" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "tylko superu¿ytkownik (root) mo¿e u¿yæ `/inet/raw'." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "serwer /inet/raw nie jest jeszcze gotowy, przykro mi" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "nie dostarczono (znanego) protoko³u w specjalnym pliku `%s'" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "specjalna nazwa pliku `%s' jest niekompletna" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "nieprawid³owy lokalny port `%s'" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "nale¿y dostarczyæ nazwê zdalnego hosta do `/inet'" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "nale¿y dostarczyæ numer zdalnego portu do `/inet'" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "nieprawid³owy zdalny port w `%s'" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "Komunikacja TCP/IP nie jest wspierana" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "plik `%s' jest katalogiem" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "u¿yj `PROCINFO[\"%s\"]' zamiast `%s'" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "u¿yj `PROCINFO[...]' zamiast `/dev/user'" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "nie mo¿na otworzyæ `%s', tryb `%s'" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "zamkniêcie nadrzêdnego pty nie powiod³o siê (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "" "zamkniêcie standardowego wyj¶cia w procesie potomnym nie powiod³o siê (%s)" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "przesuniêcie podleg³ego pty na standardowe wyj¶cie w procesie potomnym nie " "powiod³o siê (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "" "zamkniêcie standardowego wej¶cia w procesie potomnym nie powiod³o siê (%s)" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "przesuniêcie podleg³ego pty na standardowe wej¶cie w procesie potomnym nie " "powiod³o siê (dup: %s)" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "zamkniêcie podleg³ego pty nie powiod³o siê (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" "przesuniêcie potoku na standardowe wyj¶cie w procesie potomnym nie powiod³o " "siê (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "przesuniêcie potoku na standardowe wej¶cie w procesie potomnym nie powiod³o " "siê (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "" "odzyskanie standardowego wyj¶cia w procesie potomnym nie powiod³o siê\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "" "odzyskanie standardowego wej¶cia w procesie potomnym nie powiod³o siê\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "zamkniêcie potoku nie powiod³o siê (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "`|&' nie jest wspierany" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "nie mo¿na otworzyæ potoku `%s' (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "nie mo¿na utworzyæ procesu potomnego dla `%s' (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "plik danych `%s' jest pusty" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "nie mo¿na zarezerwowaæ wiêcej pamiêci wej¶ciowej" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "b³±d podczas czytania z pliku `%s': %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "wieloznakowa warto¶æ `RS' jest rozszerzeniem gawk" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "nieistotna opcja `-m[fr]' w gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "u¿ycie opcji -m: `-m[fr] nnn'" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: opcja `-W %s' nierozpoznana i zignorowana\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "pusty argument dla opcji `--source' zosta³ zignorowany" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "zmienna ¶rodowiskowa `POSIXLY_CORRECT' ustawiona: `--posix' zosta³ w³±czony" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "opcja `--posix' zostanie u¿yta nad `--traditional'" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--posix'/`--traditional' u¿yte nad opcj± `--non-decimal-data'" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "" "uruchamianie %s setuid root mo¿e byæ problemem pod wzglêdem bezpieczeñstwa" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "nie mo¿na ustawiæ trybu binarnego na standardowym wej¶ciu (%s)" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "nie mo¿na ustawiæ trybu binarnego na standardowym wyj¶ciu (%s)" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "nie mo¿na ustawiæ trybu binarnego na wyj¶ciu diagnostycznym (%s)" #: main.c:572 msgid "no program text at all!" msgstr "brak tekstu programu!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "U¿ycie: %s [styl opcji POSIX lub GNU] -f plik_z_programem [--] plik ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "U¿ycie: %s [styl opcji POSIX lub GNU] [--] %cprogram%c plik ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "Opcje POSIX:\t\tD³ugie opcje GNU:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f program\t\t--file=program\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v zmienna=warto¶æ\t--assign=zmienna=warto¶æ\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] warto¶æ\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=plik]\t--dump-variables[=plik]\n" #: main.c:681 msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W exec=plik\t\t--exec=plik\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=plik]\t--profile[=plik]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=tekst-programu\t--source=tekst-programu\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "Aby zg³osiæ b³±d, prosimy zobaczyæ wêze³ `Bugs' w `gawk.info'\n" "lub rozdzia³ p.t. `Reporting Problems and Bugs' w wydrukowanej\n" "dokumentacji.\n" "\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk jest jêzykiem skanowania i przetwarzania wzorców.\n" "Program domy¶lnie czyta standardowe wej¶cie i zapisuje standardowe wyj¶cie.\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "Przyk³ady:\n" "\tgawk '{ suma += $1 }; END { print suma }' plik\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "Ten program jest wolnym oprogramowaniem; mo¿esz go rozprowadzaæ dalej\n" "i/lub modyfikowaæ na warunkach Powszechnej Licencji Publicznej GNU,\n" "wydanej przez Fundacjê Wolnego Oprogramowania - wed³ug wersji 2-giej\n" "tej Licencji lub której¶ z pó¼niejszych wersji.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Ten program rozpowszechniany jest z nadziej±, i¿ bêdzie on\n" "u¿yteczny - jednak BEZ JAKIEJKOLWIEK GWARANCJI, nawet domy¶lnej\n" "gwarancji PRZYDATNO¦CI HANDLOWEJ albo PRZYDATNO¦CI DO OKRE¦LONYCH\n" "ZASTOSOWAÑ. W celu uzyskania bli¿szych informacji przeczytaj\n" "Powszechn± Licencjê Publiczn± GNU.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Z pewno¶ci± wraz z niniejszym programem otrzyma³e¶ te¿ egzemplarz\n" "Powszechnej Licencji Publicznej GNU (GNU General Public License);\n" "je¶li za¶ nie - napisz do Free Software Foundation, Inc.,\n" "51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft nie ustawia FS na znak tabulatora w POSIX awk" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" "%s: argument `%s' dla `-v' nie jest zgodny ze sk³adni± `zmienna=warto¶æ'\n" "\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' nie jest dozwolon± nazw± zmiennej" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s' nie jest nazw± zmiennej, szukanie pliku `%s=%s'" #: main.c:1074 msgid "floating point exception" msgstr "wyj±tek zmiennopozycyjny" #: main.c:1081 msgid "fatal error: internal error" msgstr "fatalny b³±d: wewnêtrzny b³±d" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "brak ju¿ otwartego fd %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "nie mo¿na otworzyæ zawczasu /dev/null dla fd %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "nie mo¿na znale¼æ grup: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "linia poleceñ:" #: msg.c:120 msgid "warning: " msgstr "ostrze¿enie: " #: msg.c:142 msgid "error: " msgstr "b³±d: " #: msg.c:178 msgid "fatal: " msgstr "fatalny b³±d: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "nie mo¿na zamieniæ ³añcucha do liczby zmiennopozycyjnej" #: node.c:414 msgid "backslash at end of string" msgstr "backslash na koñcu ³añcucha" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX nie zezwala na sekwencjê ucieczki `\\x'" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "brak liczb szesnastkowych w sekwencji ucieczki `\\x'" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "sekwencja ucieczki `\\%c' potraktowana jako zwyk³e `%c'" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s `%s': nie mo¿na ustawiæ close-on-exec: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "nie mo¿na otworzyæ `%s' do zapisu: %s" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "wewnêtrzny b³±d: %s z zerowym vname" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# potraktowany wewnêtrznie jako `delete'" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "# to jest dynamicznie ³adowana funkcja rozszerzenie" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# profil programu gawk, utworzony %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# blok(i) BEGIN\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Regu³y\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# blok(i) END\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Funkcje, spis alfabetyczny\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "niespodziewany typ %s w prec_level" #: regcomp.c:160 msgid "Success" msgstr "Sukces" #: regcomp.c:163 msgid "No match" msgstr "Brak dopasowania" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Nieprawid³owe wyra¿enie regularne" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Nieprawid³owy znak porównania" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Nieprawid³owa nazwa klasy znaku" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Koñcowy znak backslash" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Nieprawid³owe odwo³anie wsteczne" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "Niedopasowany znak [ lub [^" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "Niedopasowany znak ( lub \\(" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "Niedopasowany znak \\{" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Nieprawid³owa zawarto¶æ \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Nieprawid³owy koniec zakresu" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Pamiêæ wyczerpana" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Nieprawid³owe poprzedzaj±ce wyra¿enie regularne" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Przedwczesny koniec wyra¿enia regularnego" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Wyra¿enie regularne jest zbyt du¿e" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr "Niedopasowany znak ) lub \\)" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Brak poprzedniego wyra¿enia regularnego" #~ msgid "function %s called\n" #~ msgstr "wywo³ano funkcjê %s\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "pole nr %d w FIELDWIDTHS musi byæ wiêksze od zera" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: nieprawid³owe u¿ycie zmiennej `%s' jako tablicy" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: pierwszy argument nie jest tablic±" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: drugi argument nie jest tablic±" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "Aby zg³osiæ b³êdy, prosimy zobaczyæ wêze³ `Bugs' w `gawk.info', który " #~ "jest\n" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "b³±d sk³adni w nazwie `%s' dla przypisania zmiennej" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "wewnêtrzny b³±d: Node_var_array z zerowym vname" #~ msgid "or used in other expression context" #~ msgstr "lub u¿yty w innym kontek¶cie wyra¿enia" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "`%s' jest funkcj±, zatem przypisanie nie jest dozwolone" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "Blok BEGIN musi posiadaæ czê¶æ dotycz±c± akcji" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "`nextfile' u¿yty w akcji BEGIN lub END" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "komenda `getline' bez przekierowania nie jest zdefiniowana wewn±trz akcji " #~ "BEGIN lub END" #~ msgid "fptr %x not in tokentab\n" #~ msgstr "brak fptr %x w tokentab\n" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "trzeci parametr gsub nie jest zmiennym obiektem" #~ msgid "Unfinished \\ escape" #~ msgstr "Niedokoñczona sekwencja ucieczki \\" #~ msgid "unfinished repeat count" #~ msgstr "niedokoñczona liczba powtórzeñ" #~ msgid "malformed repeat count" #~ msgstr "¼le sformatowana liczba powtórzeñ" #~ msgid "Unbalanced [" #~ msgstr "[ nie do pary" #~ msgid "Unbalanced (" #~ msgstr "( nie do pary" #~ msgid "No regexp syntax bits specified" #~ msgstr "Nie zosta³y podane bity sk³adni wyra¿enia regularnego" #~ msgid "Unbalanced )" #~ msgstr ") nie do pary" #~ msgid "out of memory" #~ msgstr "brak pamiêci" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "wewnêtrzny b³±d: plik `%s', linia %d\n" EOF echo - 'pt_BR.po' cat << 'EOF' > 'pt_BR.po' # gawk pt_BR translation. # Copyright (C) 2003 Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # Juan Carlos Castro y Castro , 2003. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.2g\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2003-06-26 16:18+0300\n" "Last-Translator: Juan Carlos Castro y Castro \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, fuzzy, c-format msgid "attempt to use function `%s' as an array" msgstr "tentativa de usar escalar `%s' como vetor" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "tentativa de usar parâmetro escalar `%s' como vetor" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "tentativa de usar escalar `%s' como vetor" #: array.c:156 #, c-format msgid "from %s" msgstr "de %s" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "referência a elemento não inicializado `%s[\"%s\"]'" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "índice do vetor `%s' é uma string nula" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: índice `%s' não está no vetor `%s'" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: vazio (nulo)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: vazio (zero)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: table_size = %d, array_size = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: é parâmetro\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: array_ref para %s\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "blocos %s devem ter uma parte de ação" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "cada regra deve ter um padrão ou uma parte de ação" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s' é uma função intrínseca, não pode ser redefinida" #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "constante de expr. reg. `/%s/' parece um comentário C, mas não é" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "constante de expr. reg. `/%s/' parece um comentário C, mas não é" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "declaração pode não ter efeito" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "`%s' usado em ação %s" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' é uma extensão do gawk" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "`return' usado fora do contexto de função" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "`print' sozinho em regra BEGIN ou END provavelmente deveria ser `print \"\"'" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "`delete array' é uma extensão do gawk" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete(array)' é uma extensão não-portável do tawk" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "valores de case duplicados no corpo do switch: %s" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "Detectado `default' duplicado no corpo do switch" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "pipelines bidirecionais de múltiplos estágios não funcionam" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "expressão regular à direita de atribuição" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "expressão regular à esquerda de operador `~' ou `!~'" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "expressão regular à direita de comparação" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "`getline' não-redirecionado não é definido dentro da ação END" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "chamada a `length' sem parênteses não é portável" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "chamada a `length' sem parênteses é obsoleta de acordo com POSIX" #: awkgram.y:962 msgid "use of non-array as array" msgstr "uso de não-vetor como vetor" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "expressão de índice inválida" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "fim de linha ou de string inesperado" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "texto de programa vazio na linha de comando" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "impossível abrir arquivo-fonte `%s' para leitura (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "impossível ler arquivo-fonte `%s' (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "arquivo-fonte `%s' está vazio" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "arquivo-fonte não termina em fim-de-linha" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "expressão regular inacabada termina com `\\' ao fim do arquivo" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "expressão regular inacabada" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "expressão regular inacabada no fim do arquivo" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "uso da continuação de linha `\\ #...' não é portável" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "`\\' não é o último caracter da linha" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX não permite o operador `**='" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "o velho awk não suporta o operador `**='" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX não permite o operador `**'" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "o velho awk não suporta o operador `**'" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "o velho awk não suporta o operador `^='" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "o velho awk não suporta o operador `^'" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "string inacabada" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "caracter inválido '%c' em expressão" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' é uma extensão do gawk" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' é uma extensão da Bell Labs" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX não permite `%s'" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' não é suportado no velho awk" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "`goto' é considerado danoso!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d é inválido como número de argumentos para %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: terceiro argumento é uma extensão do gawk" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: string literal como último argumento de substituição não tem efeito" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "terceiro parâmetro %s não é um objeto modificável" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: segundo argumento é uma extensão do gawk" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "uso de dcgettext(_\"...\") é incorreto: remova o `_' precedente" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "uso de dcngettext(_\"...\") é incorreto: remova o `_' precedente" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "função `%s': parâmetro #%d, `%s', duplica parâmetro #%d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "função `%s': parâmetro `%s' encobre variável global" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "impossível abrir `%s' para escrita (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "enviando perfil para saída de erros" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: `close' falhou (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() chamada duas vezes!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "houve variáveis encobertas." #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "função `%s': não se pode usar o nome da função como nome de parâmetro" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "nome de função `%s' definido anteriormente" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "função `%s' chamada mas nunca definida" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "função `%s' definida mas nunca chamada" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "constante com expr. regular para parâmetro nº %d retorna valor booleano" #: awkgram.y:3105 #, fuzzy, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "função `%s' chamada com espaço entre o nome e o `(',\n" "%s" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s para \"%s\" falhou (%s)" #: builtin.c:146 msgid "standard output" msgstr "saída padrão" #: builtin.c:147 msgid "reason unknown" msgstr "motivo desconhecido" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: recebeu argumento não-numérico" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argumento %g está fora da faixa" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: erro ao descarregar: pipe `%s' aberto para leitura, não gravação" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: erro ao descarregar: arquivo `%s' aberto para leitura, não gravação" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' não é um arquivo aberto, pipe ou co-processo" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: recebeu primeiro argumento não-string" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: recebeu segundo argumento não-string" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: recebeu argumento não-numérico" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "`delete array' é uma extensão do gawk" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: recebeu argumento não-string" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: recebeu argumento não-numérico" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: recebeu argumento negativo %g" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "deve usar `count$' em todos os formatos ou nenhum" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "`$' não é permitido em formatos awk" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "nº de argumentos com `$' deve ser > 0" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "nº de argumentos %ld maior que nº total de argumentos fornecidos" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "`$' não é permitido depois de ponto no formato" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "nenhum `$' fornecido para tamanho ou precisão de campo posicional" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "`l' não faz sentido em formatos awk; ignorado" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "`l' não é permitido em formatos POSIX awk" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "`L' não faz sentido em formatos awk; ignorado" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "`L' não é permitido em formatos POSIX awk" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "`h' não faz sentido em formatos awk; ignorado" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "`h' não é permitido em formatos POSIX awk" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: valor %g fora da faixa para formato `%%%c'" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "argumentos insuficientes para a string de formato" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ acabou para este aqui" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: declaração de formato não tem letra de controle" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "excesso de argumentos para a string de formato" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: nenhum argumento" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: recebeu argumento não-numérico" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: chamada com argumento negativo %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: posição inicial %g é inválida, usando 1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: posição inicial %g não-inteira será truncada" #: builtin.c:1353 #, fuzzy, c-format msgid "substr: length %g is not >= 1" msgstr "substr: comprimento %g é <= 0" #: builtin.c:1355 #, fuzzy, c-format msgid "substr: length %g is not >= 0" msgstr "substr: comprimento %g é <= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: comprimento %g não-inteiro será truncado" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr: comprimento %g excessivo para indexação, truncando para %g" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: string origem tem comprimento zero" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: posição inicial %g além do fim da string" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: comprimento %g a partir da posição %g excede tamanho do 1º argumento " "(%lu)" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftime: recebeu primeiro argumento não-string" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: recebeu string de formato vazia" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: recebeu segundo argumento não-numérico" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: recebeu argumento não-string" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: recebeu argumento não-string" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "referência a campo não inicializado `$%d'" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: recebeu argumento não-string" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: recebeu argumento não-string" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: recebeu primeiro argumento não-numérico" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: recebeu segundo argumento não-numérico" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: recebeu argumento não-numérico" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: recebeu argumento não-numérico" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: recebeu argumento não-numérico" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: terceiro argumento não é um vetor" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: 3º argumento 0 tratado como 1" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: recebeu primeiro argumento não-numérico" #: builtin.c:2717 #, fuzzy msgid "lshift: received non-numeric second argument" msgstr "strftime: recebeu segundo argumento não-numérico" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): valores negativos darão resultados estranhos" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): valores fracionários serão truncados" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): deslocamento excessivo dará resultados estranhos" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: recebeu primeiro argumento não-numérico" #: builtin.c:2755 #, fuzzy msgid "rshift: received non-numeric second argument" msgstr "strftime: recebeu segundo argumento não-numérico" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): valores negativos darão resultados estranhos" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): valores fracionários serão truncados" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): deslocamento excessivo dará resultados estranhos" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: recebeu primeiro argumento não-numérico" #: builtin.c:2793 #, fuzzy msgid "and: received non-numeric second argument" msgstr "atan2: recebeu segundo argumento não-numérico" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): valores negativos darão resultados estranhos" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): valores fracionários serão truncados" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: recebeu primeiro argumento não-numérico" #: builtin.c:2829 #, fuzzy msgid "or: received non-numeric second argument" msgstr "atan2: recebeu segundo argumento não-numérico" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): valores negativos darão resultados estranhos" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): valores fracionários serão truncados" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: recebeu primeiro argumento não-numérico" #: builtin.c:2865 #, fuzzy msgid "xor: received non-numeric second argument" msgstr "atan2: recebeu segundo argumento não-numérico" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): valores negativos darão resultados estranhos" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): valores fracionários serão truncados" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: recebeu primeiro argumento não-numérico" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): valores negativos darão resultados estranhos" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): valores fracionários serão truncados" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' não é uma categoria de \"locale\" válida" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "tipo de nodo desconhecido %d" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "estouro de buffer em genflags2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "tentativa de usar vetor `%s' em um contexto escalar" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "loop for: vetor `%s' mudou de tamanho de %ld para %ld durante a execução" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "`break' fora de um loop não é portável" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "`break' fora de um loop não é permitido" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "`continue' fora de um loop não é portável" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "`continue' fora de um loop não é permitido" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "`next' não pode ser chamado de uma regra BEGIN" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "`next' não pode ser chamado de uma regra END" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "`nextfile' não pode ser chamado de uma regra BEGIN" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "`nextfile' não pode ser chamado de uma regra END" #: eval.c:875 msgid "statement has no effect" msgstr "declaração não tem efeito" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "não se pode usar o nome de função `%s' como variável ou vetor" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "referência a argumento não inicializado `%s'" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "referência a variável não inicializada `%s'" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenação: efeitos colaterais em um contexto mudaram o comprimento de " "outro!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "atribuição usada em contexto condicional" #: eval.c:1278 msgid "division by zero attempted" msgstr "tentativa de divisão por zero" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "tentativa de divisão por zero em `%%'" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "tipo ilegal (%s) em tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "tentativa de divisão por zero em `/='" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "tentativa de divisão por zero em `%%='" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "função `%s' chamada com mais argumentos que os declarados" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "função `%s' não definida" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Pilha de Chamadas de Função:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- main --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "tentativa de referência a campo a partir de valor não-numérico" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "tentativa de referência a partir de string nula" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "tentativa de acessar campo %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "atribuição não pode resultar de funções intrínsecas" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' é uma extensão do gawk" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' é uma extensão do gawk" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "especificação `%sFMT' inválida `%s'" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "desativando `--lint' devido a atribuição a `LINT'" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "`extension' é uma extensão do gawk" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: impossível abrir `%s' (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: biblioteca `%s': impossível chamar função `%s' (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "" #: ext.c:107 #, fuzzy, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: biblioteca `%s': impossível chamar função `%s' (%s)\n" #: ext.c:113 #, fuzzy, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: impossível abrir `%s' (%s)\n" #: ext.c:117 #, fuzzy, c-format msgid "extension: function `%s' already defined" msgstr "função `%s' não definida" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" #: ext.c:124 #, fuzzy, c-format msgid "extension: function name `%s' previously defined" msgstr "nome de função `%s' definido anteriormente" #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "função `%s' definida mas nunca chamada" #: ext.c:204 #, fuzzy, c-format msgid "function `%s': missing argument #%d" msgstr "função `%s' não definida" #: ext.c:214 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "tentativa de usar escalar `%s' como vetor" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" #: ext.c:243 msgid "Operation Not Supported" msgstr "Operação Não Suportada" #: field.c:326 msgid "NF set to negative value" msgstr "valor negativo atribuído a NF" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: segundo argumento não é um vetor" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: string nula para segundo argumento é uma extensão do gawk" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' é uma extensão do gawk" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "string nula para `FS' é uma extensão do gawk" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: opção `%s' é ambígua\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: opção `--%s' não aceita argumento\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: opção `%c%s' não aceita argumento\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: opção `%s' requer argumento\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: opção não reconhecida `--%s'\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: opção não reconhecida `%c%s'\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: opção ilegal -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: opção inválida -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: opção requer argumento -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: opção `-W %s' é ambígua\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: opção `-W %s' não aceita argumento\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "impossível abrir arquivo `%s' para leitura (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "fechamento do descritor %d (`%s') falhou (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "tipo de árvore %s inválido em redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "expressão no redirecionamento `%s' só tem valor numérico" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "expressão para o redirecionamento `%s' tem valor string nulo" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "nome de arquivo `%s' para redirecionamento `%s' pode ser resultado de " "expressão lógica" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "mistura desnecessária de `>' e `>>' para arquivo `%.*s'" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "impossível abrir pipe `%s' para saída (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "impossível abrir pipe `%s' para entrada (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "impossível abrir socket bidirecional `%s' para entrada/saída (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "impossível abrir pipe bidirecional `%s' para entrada/saída (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "impossível redirecionar de `%s' (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "impossível redirecionar para `%s' (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "alcançado limite do sistema para arquivos abertos; começando a multiplexar " "descritores de arquivos" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "fechamento de `%s' falhou (%s)" #: io.c:811 msgid "too many pipes or input files open" msgstr "excesso de pipes ou arquivos de entrada abertos" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: segundo argumento deve ser `to' ou `from'" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: `%.*s' não é um arquivo aberto, pipe ou co-processo" #: io.c:852 msgid "close of redirection that was never opened" msgstr "fechamento de redirecionamento que nunca foi aberto" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: redirecionamento `%s' não foi aberto com `|&', segundo argumento " "ignorado" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "status de falha (%d) ao fechar pipe de `%s' (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "status de falha (%d) ao fechar arquivo de `%s' (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "fechamento explícito do socket `%s' não fornecido" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "fechamento explícito do co-processo `%s' não fornecido" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "fechamento explícito do pipe `%s' não fornecido" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "fechamento explícito do arquivo `%s' não fornecido" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "erro ao escrever na saída padrão (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "erro ao escrever na saída padrão de erros (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "descarga de pipe de `%s' falhou (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "descarga de co-processo de pipe para `%s' falhou (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "descarga de arquivo de `%s' falhou (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "infelizmente, o cliente de /inet/raw não está concluído" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "apenas root pode usar `/inet/raw'." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "infelizmente, o servidor de /inet/raw não está concluído" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" "nenhum protocolo (conhecido) fornecido em nome de arquivo especial `%s'" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "nome de arquivo especial `%s' está incompleto" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "porta local inválida em `%s'" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "deve ser fornecido um nome de host remoto para `/inet'" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "deve ser fornecida uma porta remota para `/inet'" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "porta remota inválida em `%s'" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "comunicação TCP/IP não é suportada" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "arquivo `%s' é um diretório" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "use `PROCINFO[\"%s\"]' em vez de `%s'" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "use `PROCINFO[...]' em vez de `/dev/user'" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "impossível abrir `%s', modo `%s'" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "falha ao fechar pty mestre (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "falha ao fechar stdout em filho (%s)" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "falha ao mover pty escrava para stdout em filho (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "falha ao fechar stdin em filho (%s)" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "falha ao mover pty escrava para stdin em filho (dup: %s)" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "falha ao fechar pty escrava (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "falha ao mover pipe para stdout em processo pai (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "falha ao mover pipe para stdin em processo pai (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "falha ao restaurar stdout em processo pai\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "falha ao restaurar stdin em processo pai\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "falha ao fechar pipe (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "`|&' não suportado" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "impossível abrir pipe `%s' (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "impossível criar processo filho para `%s' (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "arquivo de dados `%s' vazio" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "impossível alocar mais memória de entrada" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "erro ao ler arquivo de entrada `%s': %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "valor de múltiplos caracteres para `RS' é uma extensão do gawk" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "opção `-m[fr] é irrelevante no gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "uso da opção -m: `-m[fr] nnn'" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: opção `-W %s' não reconhecida, ignorada\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "argumento vazio para --source ignorado" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "variável de ambiente `POSIXLY_CORRECT' ativada: ligando `--posix'" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "`--posix' sobrepõe `--traditional'" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--posix'/`--traditional' sobrepõe `--non-decimal-data'" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "rodar %s com setuid root pode ser um problema de segurança" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "impossível ativar modo binário em stdin (%s)" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "impossível ativar modo binário em stdout (%s)" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "impossível ativar modo binário em stderr (%s)" #: main.c:572 msgid "no program text at all!" msgstr "nenhum texto de programa" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Uso: %s [opções estilo POSIX ou GNU] -f arqprog [--] arquivo ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Uso: %s [opções estilo POSIX ou GNU] [--] %cprograma%c arquivo ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "Opções POSIX: \t\tOpções longas GNU:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f arqprog \t\t--file=arqprog\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=val\t\t--assign=var=val\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] val\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=arq] \t--dump-variables[=arq]\n" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W profile[=arq] \t--profile[=arq]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=arq] \t--profile[=arq]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=program-text\t--source=program-text\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "Em caso de defeito, veja o nodo `Bugs' em `gawk.info', que é a\n" "seção `Reportando Problemas e Bugs' na versão impressa.\n" "\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk é uma linguagem de processamento e busca de padrões.\n" "Por padrão, o gawk lê a entrada padrão e escreve na saída padrão.\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "Exemplos:\n" "\tgawk '{ soma += $1 }; END { print soma }' arquivo\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "Este programa é Software Livre; você pode redistribuí-lo e/ou modificá-lo\n" "de acordo com os termos da Licença Pública Geral GNU (GNU GPL) na " "formapublicada pela Free Software Foundation; ou a versão 2 da licença ou " "(aoseu critério) qualquer versão posterior.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Este programa é distribuído na esperança de ser útil, mas SEM\n" "QUALQUER GARANTIA. Veja a Licença Pública Geral GNU (GNU GPL)\n" "para mais detalhes.\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Você deve ter recebido uma cópia da Licença Pública Geral GNU (GNU GPL)\n" "junto com este programa; caso contrário, escreva à Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft não faz FS ser tab no awk POSIX" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" "%s: argumento `%s' para `-v' não está na forma `var=valor'\n" "\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' não é um nome legal de variável" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s' não é um nome de variável, procurando arquivo `%s=%s'" #: main.c:1074 msgid "floating point exception" msgstr "exceção de ponto flutuante" #: main.c:1081 msgid "fatal error: internal error" msgstr "erro fatal: erro interno" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "nenhum descritor pré-aberto %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "impossível pré-abrir /dev/null para descritor %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "impossível achar grupos: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "lin. de com.:" #: msg.c:120 msgid "warning: " msgstr "aviso: " #: msg.c:142 msgid "error: " msgstr "erro: " #: msg.c:178 msgid "fatal: " msgstr "fatal: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "impossível converter string para float" #: node.c:414 msgid "backslash at end of string" msgstr "barra invertida (\\) no fim da string" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX não permite escapes do tipo `\\x'" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "nenhum dígito hexa em seqüência de escape `\\x'" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "seqüência de escape `\\%c' tratada como `%c' normal" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s `%s': impossível ativar fechar-ao-executar: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "impossível abrir `%s' para escrita: %s" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "erro interno: %s com vname nulo" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# tratado internamente como `delete'" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# perfil gawk, criado %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# bloco(s) BEGIN\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Regra(s)\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# bloco(s) END\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Funções, listadas alfabeticamente\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "tipo inesperado %s em prec_level" #: regcomp.c:160 msgid "Success" msgstr "Sucesso" #: regcomp.c:163 msgid "No match" msgstr "Sem combinação" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Expressão regular inválida" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Caracter de combinação inválido" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Nome de classe de caracter inválido" #: regcomp.c:175 msgid "Trailing backslash" msgstr "contra-barra (\\) finalizando" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Referência anterior inválida" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "[ ou [^ não emparelhado" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "( ou \\( não emparelhado" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "\\{ não emparelhado" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Conteúdo inválido de \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Fim de faixa inválido" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Memória esgotada" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Expressão regular anterior inválida" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Fim prematuro da expressão regular" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Expressão regular grande demais" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr ") ou \\) desemparelhado" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Nenhuma expressão regular anterior" #~ msgid "function %s called\n" #~ msgstr "função %s chamada\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "campo %d em FIELDWIDTHS deve ser > 0" #~ msgid "or used as a variable or an array" #~ msgstr "ou usado como uma variável ou vetor" #~ msgid "regex match failed, not enough memory to match string \"%.*s%s\"" #~ msgstr "" #~ "busca por exp. reg. falhou, memória insuficiente para testar string \"%.*s" #~ "%s\"" #~ msgid "substr: length %g is < 0" #~ msgstr "substr: comprimento %g é < 0" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: uso ilegal da variável `%s' como vetor" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: primeiro argumento não é um vetor" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: segundo argumento não é um vetor" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "erro interno: Node_var_array com vname nulo" EOF echo - 'ro.po' cat << 'EOF' > 'ro.po' # Mesajele în limba românã pentru pachetul gawk # Copyright (C) 2003 Free Software Foundation, Inc. # Eugen Hoanca , 2003. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.31\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2003-09-15 17:48+0300\n" "Last-Translator: Eugen Hoanca \n" "Language-Team: Romanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-2\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, fuzzy, c-format msgid "attempt to use function `%s' as an array" msgstr "încercare de folosire a funcþiei `%s' ca array" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "încercare de utilizare a parametrului scalar `%s' drept array" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "încercare de a utiliza scalarul `%s' ca array" #: array.c:156 #, fuzzy, c-format msgid "from %s" msgstr "%s (din %s)" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "referinþã la elementul neiniþializat `%s[\"%s\"]'" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "înscrierea array-ului `%s' este ºir null" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: indexul `%s' nu este în array-ul `%s'" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: vid (null)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: vid (zero)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: table_size = %d, array_size = %d\n" #: array.c:829 #, fuzzy, c-format msgid "%s: is parameter\n" msgstr "%s: este parametru!\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: array_ref cãtre %s\n" #: awkgram.y:208 #, fuzzy, c-format msgid "%s blocks must have an action part" msgstr "Blocurile de END trebuie sã aibã un fragment de acþiune" #: awkgram.y:211 #, fuzzy msgid "each rule must have a pattern or an action part" msgstr "Blocurile de END trebuie sã aibã un fragment de acþiune" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s' este funcþie internã, nu poate fi redefinitã" #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "constanta regexp `/%s/' aratã ca un comentariu C, dar nu este" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "constanta regexp `/%s/' aratã ca un comentariu C, dar nu este" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "declaraþia poate sã nu aibã nici un efect" #: awkgram.y:440 awkgram.y:460 #, fuzzy, c-format msgid "`%s' used in %s action" msgstr "`next' folosit în acþiune BEGIN sau END" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' este extensie gawk" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "`return' folosit în afara contextului funcþiei" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "`print' simplu din regulile BEGIN sau END ar trebui sã fie probabil `print " "\"\"'" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "`delete array' este extensie gawk" #: awkgram.y:540 awkgram.y:547 #, fuzzy msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete array' este extensie gawk" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "legãturile(pipelines) bidirecþionale multistage nu vor funcþiona" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "expresie regularã în dreapta atribuirii" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "expresie regularã în stânga operatorului `~' sau `!~'" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "expresie regularã în dreapta comparaþiei" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "`getline' nedefinitã ºi neredirectatã înãuntrul unei acþiuni END" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "apelarea lui `legth' fãrã paranteze nu este portabilã" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "apelarea lui `length' fãrã paranteze nu mai este folositã în POSIX" #: awkgram.y:962 msgid "use of non-array as array" msgstr "" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "expresie subscript invalidã" #: awkgram.y:1171 #, fuzzy msgid "unexpected newline or end of string" msgstr "linie nouã neaºteptatã" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "text program vid în linia de comandã" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "nu se poate deschide fiºierul sursã `%s' pentru citire (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "nu se poate citi fiºierul sursã `%s' (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "fiºierul sursã `%s' este vid" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "fiºierul sursã nu se terminã în linie nouã" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "regexp-ul neterminat se terminã cu `\\'` la sfârºitul fiºierului" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "regexp neterminat" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "regexp neterminat la sfârºitul fiºierului" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "folosirea continuãrii liniei `\\ #...' nu este portabilã" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "backslash nu este ultimul caracter din linie" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX nu permite operatorul `**='" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "vechiul awk nu suportã operatorul `**='" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX nu permite operatorul `**'" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "vechiul awk nu supoortã operatorul `**'" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "operatorul `^=' nu este suportat în vechiul awk" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "operator `^' nu este suportat în vechiul awk" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "ºir de caractere neterminat" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "caracter invalid `%c' în expresie" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' este extensie gawk" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' este extensie Bell Labs" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX nu permite `%s'" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' nu este suportat în vechiul awk" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "`goto' este considerat periculos!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d este invalid ca numãr de argumente pentru %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: al treilea argument este extensie gawk" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: ºirul de caractere literal ca ultim argument al înlocuitorului nu are " "nici un efect" #: awkgram.y:2339 #, fuzzy, c-format msgid "%s third parameter is not a changeable object" msgstr "al treilea parametru al sub nu este un obiect modificabil" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: al doilea argument este extensie gawk" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "folosirea lui dcgettext(_\"...\") este incorectã: eliminaþi liniuþa_jos de " "la început" #: awkgram.y:2394 #, fuzzy msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "folosirea lui dcgettext(_\"...\") este incorectã: eliminaþi liniuþa_jos de " "la început" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "funcþia `%s': parametrul #%d, `%s', parametrul duplicat #%d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "" "funcþia `%s': parametrul `%s' nu mai þine cont de(shadows) variabila globalã" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "nu s-a putut deschide `%s' pentru scriere (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "se trimite profilul la dipsozitivul de eroare standard" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: închidere eºuatã (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() apelatã de douã ori!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funcþia `%s': nu se poate folosi numele funcþiei ca nume de parametru" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "numele funcþiei `%s' a mai fost definit înainte" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "funcþia `%s' este apelatã dar niciodatã definitã" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "funcþia `%s' este definitã dar niciodatã apelatã" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "regexp constant pentru parametrul #%d solicitã(yields) valoare booleanã" #: awkgram.y:3105 #, fuzzy, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "funcþia `%s' apelatã cu un spaþiu între nume ºi `(',\n" "%s" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s cãtre \"%s\" eºuatã (%s)" #: builtin.c:146 msgid "standard output" msgstr "ieºire(output) standard" #: builtin.c:147 msgid "reason unknown" msgstr "motiv necunoscut" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: s-a primit argument nenumeric" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argumentul %g este în afara domeniului" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: nu s-a putut face flush: legãtura(pipe) `%s' a fost deschisã pentru " "citire, nu scriere" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: nu s-a putut face flush: fiºierul `%s' a fost deschis pentru citire, " "nu scriere" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' nu este fiºier deschis, legãturã(pipe) sau co-proces" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: s-a primit un prim argument non-ºir de caractere" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: s-a primit un al doilea argument non-ºir de caractere" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: s-a primit argument nenumeric" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "`delete array' este extensie gawk" #: builtin.c:481 msgid "length: received non-string argument" msgstr "legth: s-a primit argument non-string" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: s-a primit argument nenumeric" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: s-a primit argument %g negativ" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "`$' nu este permis în formatele awk" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "numãrul de arg cu `%' trebuie sã fie > 0" #: builtin.c:786 #, fuzzy, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "" "numãrul de arg %d este mai mare decât numãrul total de argumente furnizate" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "`$' nu este permis în format dupã punct" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "" "nu s-a furnizat nici un `$' pentru câmpul poziþional lungime sau precisie" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "`l' nu are sens în formatele awk; ignorat" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "`l' nu este permis în formatele awk POSIX" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "`L' nu are sens în formatele awk; ignorat" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "`L' nu este permis în formatele POSIX awk" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "`h' nu are sens în formatele awl; ignorat" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "`h' nu este permis în formatele POSIX awk" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "" "nu existã destule argumente pentru satisfacerea formatului ºirului de " "caractere" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ insuficient pentru aceasta" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: specificatorul de format nu are literã de control" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "prea multe argumente furnizate pentru formatul ºirului de caractere" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: nici un argument" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: s-a primit argument nenumeric" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: apelat cu argumentul negativ %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: indexul de start %g este invalid, se foloseºte -1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: indexul de start ne-întreg(integer) %g va fi trunchiat" #: builtin.c:1353 #, fuzzy, c-format msgid "substr: length %g is not >= 1" msgstr "substr: lungimea %g este <= 0" #: builtin.c:1355 #, fuzzy, c-format msgid "substr: length %g is not >= 0" msgstr "substr: lungimea %g este <= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr lungimea ne-întregului(integer) %g va fi trunchiatã" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: ºirul de caractere sursã are lungime zero" #: builtin.c:1395 #, fuzzy, c-format msgid "substr: start index %g is past end of string" msgstr "substr: indexul de start %d este fostul sfârºit de ºir de caractere" #: builtin.c:1403 #, fuzzy, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: lungimea %d la indexul de start %d depãºeºte lungimea primului " "argument (%d)" #: builtin.c:1478 #, fuzzy msgid "strftime: received non-string first argument" msgstr "strftime: s-a primit primul argument non ºir de caractere" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: s-a primit ºir de caractere în format vid" #: builtin.c:1493 #, fuzzy msgid "strftime: received non-numeric second argument" msgstr "strftime: s-a primit un al doilea argument nenumeric" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: s-a primit argument non ºir de caractere" #: builtin.c:1601 #, fuzzy msgid "system: received non-string argument" msgstr "system: s-a primit argument non ºir de caractere" #: builtin.c:1722 eval.c:2039 #, fuzzy, c-format msgid "reference to uninitialized field `$%d'" msgstr "referinþã la variabila neiniþializatã `%s'" #: builtin.c:1827 #, fuzzy msgid "tolower: received non-string argument" msgstr "tolower: s-a primit argument non-ºir de caractere" #: builtin.c:1857 #, fuzzy msgid "toupper: received non-string argument" msgstr "toupper: s-a primit argument non-ºir de caractere" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: s-a primit un prim argument nenumeric" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: s-a primit un al doilea argument nenumeric" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: s-a primit un argument nenumeric" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: s-a primit un argument nenumeric" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: s-a primit un argument nenumeric" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: al treilea argument nu este un array" #: builtin.c:2555 #, fuzzy msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: al 3-lea argument care este 0 va fi considerat 1" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: s-a primit un prim argument nenumeric" #: builtin.c:2717 #, fuzzy msgid "lshift: received non-numeric second argument" msgstr "strftime: s-a primit un al doilea argument nenumeric" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): valorile negative vor furniza rezultate ciudate" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): valorile fracþionale vor fi trunchiate" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): valorile schimbate prea mult vor da rezultate ciudate" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: s-a primit un prim argument nenumeric" #: builtin.c:2755 #, fuzzy msgid "rshift: received non-numeric second argument" msgstr "strftime: s-a primit un al doilea argument nenumeric" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): valorile negative vor da rezultate ciudate" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): valorile fracþionale vor fi trunchiate" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): valorile schimbate prea mult vor da rezultate ciudate" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: s-a primit un prim argument nenumeric" #: builtin.c:2793 #, fuzzy msgid "and: received non-numeric second argument" msgstr "atan2: s-a primit un al doilea argument nenumeric" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): valorile negative vor da rezultate ciudate" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): valorile fracþionale vor fi trunchiate" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: s-a primit un prim argument nenumeric" #: builtin.c:2829 #, fuzzy msgid "or: received non-numeric second argument" msgstr "atan2: s-a primit un al doilea argument nenumeric" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): valorile negative for da rezultate ciudate" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): valorile fracþionale vor fi trunchiate" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: s-a primit un prim argument nenumeric" #: builtin.c:2865 #, fuzzy msgid "xor: received non-numeric second argument" msgstr "atan2: s-a primit un al doilea argument nenumeric" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): valorile negative vor da rezultate ciudate" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): valorile fracþionale vor fi trunchiate" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: s-a primit argument nenumeric" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): valorile negative vor da rezultate ciudate" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): valorile fracþionale vor fi trunchiate" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' nu este o categorie localã validã" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "tip nod %d necunoscut" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "depãºire(overflow) de buffer în genflags2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "încercare de a utiliza array-ul `%s' într-un context scalar" #: eval.c:733 #, fuzzy, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "for loop: array-ul `%s' ºi-a schimbat mãrimea din %d în %d în timpul " "execuþiei buclei" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "`break' în afara buclei nu este portabil" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "`break' în afara buclei nu este permis" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "`continue' în afara buclei nu este portabil" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "`continue' în afara buclei nu este permis" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "`next' nu poate fi apelat dintr-o regulã BEGIN" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "`next' nu poate fi apelat dintr-o regulã END" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "`nextfile' nu poate fi apelat dintr-o regulã BEGIN" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "`nextfile' nu poate fi apelat dintr-o regulã END" #: eval.c:875 msgid "statement has no effect" msgstr "declaraþia nu are nici un efect" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "nu se poate folosi numele funcþiei `%s' ca variabilã sau array" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "referinþã la argumentul neiniþializat `%s'" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "referinþã la variabila neiniþializatã `%s'" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenation: efectele secundare dintr-o expresie au schimbat lungimea " "alteia!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "atribuire folositã în context condiþional" #: eval.c:1278 msgid "division by zero attempted" msgstr "s-a încercat împãrþire la zero" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "s-a încercat împãrþire la zero în `%%'" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "tip ilegal (%s) în tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "s-a încercat împãrþire la zero în `/='" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "s-a încercat împãrþire la zero în `%%='" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "" "funcþia `%s' a fost apelatã cu mai multe argumente decât cele declarate" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "funcþia `%s' nu este definitã" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Stiva de Apelare a Funcþiei:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- principal(main) --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "încercare de referinþã la câmp din valoare nenumericã" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "încercare de referinþã din ºir de caractere vid(null)" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "încercare de accesare a câmpului %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "atribuirea nu este permisã rezultatului funcþiei interne" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' este extensie gawk" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' este extensie gawk" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "`%sFMT' specificaþie `%s' invalidã" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "se dezactiveazã `--lint' din cauza atribuirii lui `LINT'" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "`extension' este o extensie gawk" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: nu s-a putut deschide `%s' (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: biblioteca `%s': nu pot apela funcþia `%s' (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "" #: ext.c:107 #, fuzzy, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: biblioteca `%s': nu pot apela funcþia `%s' (%s)\n" #: ext.c:113 #, fuzzy, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: nu s-a putut deschide `%s' (%s)\n" #: ext.c:117 #, fuzzy, c-format msgid "extension: function `%s' already defined" msgstr "funcþia `%s' nu este definitã" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" #: ext.c:124 #, fuzzy, c-format msgid "extension: function name `%s' previously defined" msgstr "numele funcþiei `%s' a mai fost definit înainte" #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funcþia `%s' este definitã dar niciodatã apelatã" #: ext.c:204 #, fuzzy, c-format msgid "function `%s': missing argument #%d" msgstr "funcþia `%s' nu este definitã" #: ext.c:214 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "încercare de a utiliza scalarul `%s' ca array" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" #: ext.c:243 msgid "Operation Not Supported" msgstr "Operaþie NeSuportatã" #: field.c:326 msgid "NF set to negative value" msgstr "NF setat la valoare negativã" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: al doilea argument nu este un array" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: ºirul nul pentru al treilea arg este o extensie gawk" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' este extensie gawk" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "ºirul de caractere null pentru `FS' este extensie gawk" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: opþiunea `%s' este ambiguã\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: opþiunea `--%s' nu permite parametri\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: opþiunea `%c%s' nu permite parametri\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: opþiunea `%s' necesitã un parametru\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: opþiune necunoscutã `--%s'\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: opþiune necunoscutã `%c%s'\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: opþiune ilegalã -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: opþiune invalidã -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: opþiunea necesitã un parametru -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: opþiunea `-W %s' este ambiguã\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: opþiunea `-W %s' nu permite parametri\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "nu s-a putu deschide `%s' pentru citire (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "închiderea lui fd %d (`%s') eºuatã (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "tip arbore(tree) invalid %s în redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "expresia din redirectarea `%s' are doar valoare numericã" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "expresia din redirectarea `%s' are valoar de ºir null" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "numele de fiºier `%s' pentru redirectarea `%s' poate fi rezultatul unei " "expresii logice" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "amestecare nenecesarã a `>' ºi `>>' pentru fiºierul `%.*s'" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "nu se poate deschide legãtura(pipe) `%s' pentru output (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "nu se poate deschide legãtura(pipe) `%s' pentru input (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "" "nu se poate deschide socketul bidirecþional `%s' pentru input/output (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "" "nu se poate deschide legãtura(pipe) bidirecþionalã `%s' pentru input/output " "(%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "nu se poate redirecta din `%s' (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "nu se poate redirecta cãtre `%s' (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "s-a atins limita sistemului pentru fiºiere deschise: se începe muliplexarea " "desciptorilor de fiºier" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "închiderea `%s' eºuatã (%s)." #: io.c:811 msgid "too many pipes or input files open" msgstr "prea multe legãturi(pipe) sau fiºiere de intrare(input) deschise" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: al doilea argument trebuie sã fie `to' sau `from'" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "" "close: `%.*s' nu este un fiºier deschis, o legãturã(pipe) sau un coproces" #: io.c:852 msgid "close of redirection that was never opened" msgstr "închiderea unei redirectãri care n-a fost deschisã niciodatã" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: redirectarea `%s' nu a fost deschisã cu `|&', al doilea argument " "ignorat" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "stare de avarie (%d) în legãtura(pipe) închisã în `%s' (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "stare de avarie (%d) în fiºierul închis în `%s' (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "nu s-a furnizat închiderea explicitã a socketului `%s'" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "nu s-a furnizat închiderea explicitã a coprocesului `%s' " #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "nu s-a furnizat închiderea explicitã a legãturii(pipe) `%s'" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "nu s-a furnizat închiderea explicitã a fiºierului `%s'" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "eroare în scrierea la ieºirea(output) standard (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "eroare în scrierea la dispozitivul standard de eroare (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "flush-ul legãturii(pipe) `%s' eºuat (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "flush-ul legãturii(pipe) coprocesului la `%s' eºuat (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "flush-ul de fiºier al `%s' eºuat (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "clientul /inet/raw nu este pregãtit încã, scuze" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "doar root-ul poate folosi `/inet/raw'." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "serverul /inet/raw nu este pregãtit încã, scuze" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "nici un protocol (cunoscut) furnizat în numele de fiºier special `%s'" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "numele special de fiºier `%s' nu este complet" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "port local invalid în `%s'" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "trebuie furnizat un nume de host remote pentru `/inet'" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "trebuie furnizat un port remote pentru `/inet'" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "port remote invalid în `%s'" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "Comunicaþiile TCP/IP nu sunt suportate" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "fiºierul `%s' este director" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "folosiþi `PROCINFO[\"%s\"]' în loc de `%s'" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "folosiþi `PROCINFO[...]' în loc de `/dev/user'" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "nu s-a putut deschide `%s', modul `%s'" #: io.c:1814 #, fuzzy, c-format msgid "close of master pty failed (%s)" msgstr "închiderea legãturii(pipe) a eºuat (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "închiderea stdout în copil(child) a eºuat (%s)" #: io.c:1819 #, fuzzy, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "mutarea legãturii(pipe) la stdout în copil(child) a eºuat (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "închiderea stdin în copil(child) a eºuat (%s)" #: io.c:1824 #, fuzzy, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "mutarea legãturii(pipe) la stdin în copil(child) a eºuat (dup: %s)" #: io.c:1826 io.c:1845 #, fuzzy, c-format msgid "close of slave pty failed (%s)" msgstr "închiderea legãturii(pipe) a eºuat (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "mutarea legãturii(pipe) la stdout în copil(child) a eºuat (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "mutarea legãturii(pipe) la stdin în copil(child) a eºuat (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "refacerea stdout în procesul pãrinte a eºuat\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "refacerea stdin în procesul pãrinte a eºuat\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "închiderea legãturii(pipe) a eºuat (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "`|&' nesuportat" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "nu s-a putut deschide legãtura(pipe) `%s' (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "nu s-a putu crea proces copil(child) pentru `%s' (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "fiºierul de date `%s' este vid" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "eroare în citirea fiºierului de intrare(input) `%s': %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "valoarea multicaracter a `RS' este extensie gawk" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "`-m[fr]' opþiune irelevantã în gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "folosirea opþiunii -m : `-m[fr] nnn'" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: opþiunea `-W %s' nu e recunoscutã, ignoratã\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "argument vid pentru `--source' ignorat" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "este setatã variabila de mediu `POSIXLY_CORRECT': se activeazã `--posix'" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "`--posix' suprascrie `--traditional'" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--posix'/`--traditional' suprascrie `--non-decimal-data'" #: main.c:487 #, fuzzy, c-format msgid "running %s setuid root may be a security problem" msgstr "dacã se ruleazã %s setuid root poate apãrea o problemã de securitate" #: main.c:528 #, fuzzy, c-format msgid "can't set binary mode on stdin (%s)" msgstr "nu se poate seta modul pe stdin (%s)" #: main.c:531 #, fuzzy, c-format msgid "can't set binary mode on stdout (%s)" msgstr "nu se poate seta modul pe stdout (%s)" #: main.c:533 #, fuzzy, c-format msgid "can't set binary mode on stderr (%s)" msgstr "nu se poate seta modul pe stderr (%s)" #: main.c:572 msgid "no program text at all!" msgstr "nu existã nici un text de program!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Folosire: %s [opþiuni stil POSIX sau GNU] -f fiºierprogram [--] fiºier ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Folosire: %s [opþiuni stil POSIX sau GNU] [--] %cprogram%c fiºier ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "opþiuni POSIX:\t\topþiuni lungi GNU:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f fiºierprogram\t\t--file=fiºierprogram\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=val\t\t--assign=var=val\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] val\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=fiºier]\t--dump-variables[=fiºier]\n" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W profile[=fiºier]\t--profile[=fiºier]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=fiºier]\t--profile[=fiºier]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=program-text\t--source=program-text\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 #, fuzzy msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "secþiunea `Reporting Problems and Bugs' în versiunea tipãritã.\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "Acest program este software liber; poate fi redistribuit ºi/sau modificat\n" "sub termenii Licenþei Publice Generale GNU publicatã de \n" "Free Software Foundation; fie versiunea 2 a Licenþei, fie\n" "(la latitudinea dumneavoastrã) orice versiune ulterioarã.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Acest program este distribuit în speranþa cã va fi folositor,\n" "dar FÃRà NICI O GARANÞIE; chiar fãrã presupusa garanþie a\n" "VANDABILITÃÞII sau MODIFICÃRII ÎNTR-UN SCOP PRIVAT. Cititi\n" "Licenþa Publicã Generalã GNU pentru mai multe detalii.\n" "\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Ar fi trebuit sã primiþi o copie a Licenþei Publice Generale GNU\n" "împreunã cu acest program; dacã nu, scrieþi la Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft nu seteazã FS în tab în POSIX awk" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "" #: main.c:1074 msgid "floating point exception" msgstr "excepþie virgulã mobilã" #: main.c:1081 msgid "fatal error: internal error" msgstr "eroare fatalã: eroare internã" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "nici un fd predeschis %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "nu s-a putut predeschide /dev/null pentru fd %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "nu am putut gãsi grupurile: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "linie cmd:" #: msg.c:120 msgid "warning: " msgstr "avertisment: " #: msg.c:142 msgid "error: " msgstr "eroare: " #: msg.c:178 msgid "fatal: " msgstr "fatal: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "nu se poate converti ºir de caractere în float" #: node.c:414 msgid "backslash at end of string" msgstr "backslash la sfârºitul ºirului de caractere" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX nu permite escape-uri `\\x'" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "nu existã digiþi hexa în secvenþa de escape `\\x'" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "secvenþa de escape `\\%c' tratatã ca `%c' simplu" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s `%s': nu s-a putut seta close-on-exec: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "nu am putut deschide `%s' pentru scriere: %s" #: profile.c:467 #, fuzzy, c-format msgid "internal error: %s with null vname" msgstr "eroare internã: Node_var cu vname null" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# profil gawk, creat %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# bloc(uri) BEGIN\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Regulã(i)\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# bloc(uri) END\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Funcþii, listate alfabetic\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "tip %s neaºteptat în prec_level" #: regcomp.c:160 msgid "Success" msgstr "Succes" #: regcomp.c:163 msgid "No match" msgstr "Nici o potrivire" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Expresie regularã invalidã" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Caracter de comparare invalid" #: regcomp.c:172 msgid "Invalid character class name" msgstr "nume clasã caracter invalid" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Backslash final" #: regcomp.c:178 msgid "Invalid back reference" msgstr "referinþã anterioarã(back) invalidã" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "[ sau [^ fãrã reciprocã" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "( sau \\( fãrã reciprocã" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "{ fãrã reciprocã" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Conþinut invalid al \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Sfârºit de domeniu invalid" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Memorie plinã" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Expresie regularã anterioarã invalidã" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Sfârºit prematur de expresie regularã" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Expresie regularã prea mare" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr ") or \\) fãrã reciprocã" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Nu existã expresii regulare anterioare" #~ msgid "function %s called\n" #~ msgstr "funcþia %s a fost apelatã\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "câmpul %d din FIELDWIDTHS trebuie sã fie > 0" #, fuzzy #~ msgid "or used as a variable or an array" #~ msgstr "nu se poate folosi numele funcþiei `%s' ca variabilã sau array" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: folosire ilegalã a variabilei `%s' ca array" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: primul argument nu este un array" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: al doilea argument nu este un array" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "Pentru a raporta bug-urile, citiþi nodul `Bugs' în `gawk.info', " #~ "reprezentând\n" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "sintaxã invalidã în numele `%s' pentru atribuire de variabilã" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "eroare internã: Node_var_array cu vname null" #~ msgid "or used in other expression context" #~ msgstr "sau folositã în alt context al expresiei" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "`%s' este o funcþie, atribuirea nu este permisã" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "Blocurile de BEGIN trebuie sa aibã un fragment de acþiune" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "`nextfile' folosit în acþiune BEGIN sau END" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "`getline' nedefinit ºi neredirectat înãuntrul unei acþiuni BEGIN sau END" #~ msgid "fptr %x not in tokentab\n" #~ msgstr "fptr %x nu este în tokentab\n" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "al treilea parametru al gsub nu este obiect modificabil" #~ msgid "Unfinished \\ escape" #~ msgstr "\\ escape neterminat" #~ msgid "unfinished repeat count" #~ msgstr "numãrãtoare repetatã neterminatã" #~ msgid "malformed repeat count" #~ msgstr "numãrãtoare repetatã malformatã" #~ msgid "Unbalanced [" #~ msgstr "[ fãrã reciproc" #~ msgid "Unbalanced (" #~ msgstr "( fãrã reciproc" #~ msgid "No regexp syntax bits specified" #~ msgstr "Nu s-au specificat biþi pentru sintaxa regexp" #~ msgid "Unbalanced )" #~ msgstr ") fãrã reciproc" #~ msgid "out of memory" #~ msgstr "memorie plinã" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "eroare internã: fiºierul `%s', linia %d\n" EOF echo - 'rw.po' cat << 'EOF' > 'rw.po' # Kinyarwanda translations for gawk package. # Copyright (C) 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the gawk package. # Steve Murphy , 2005. # Steve performed initial rough translation from compendium built from translations provided by the following translators: # Philibert Ndandali , 2005. # Viateur MUGENZI , 2005. # Noëlla Mupole , 2005. # Carole Karema , 2005. # JEAN BAPTISTE NGENDAHAYO , 2005. # Augustin KIBERWA , 2005. # Donatien NSENGIYUMVA , 2005. # Antoine Bigirimana , 2005. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.4\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2005-04-04 10:55-0700\n" "Last-Translator: Steven Michael Murphy \n" "Language-Team: Kinyarwanda \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, fuzzy, c-format msgid "attempt to use function `%s' as an array" msgstr "Kuri Gukoresha Umumaro Nka Imbonerahamwe" #: array.c:115 #, fuzzy, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "Kuri Gukoresha Nka Imbonerahamwe" #: array.c:118 #, fuzzy, c-format msgid "attempt to use scalar `%s' as array" msgstr "Kuri Gukoresha Nka Imbonerahamwe" #: array.c:156 #, fuzzy, c-format msgid "from %s" msgstr "Kuva:" #: array.c:511 #, fuzzy, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "Indango Kuri Itatangijwe Ikigize:" #: array.c:517 #, fuzzy, c-format msgid "subscript of array `%s' is null string" msgstr "Inyandiko nyesi Bya Imbonerahamwe ni NTAGIHARI Ikurikiranyanyuguti" #: array.c:621 #, fuzzy, c-format msgid "delete: index `%s' not in array `%s'" msgstr "Gusiba Umubarendanga OYA in Imbonerahamwe" #: array.c:791 #, fuzzy, c-format msgid "%s: empty (null)\n" msgstr "%s:ubusa NTAGIHARI" #: array.c:796 #, fuzzy, c-format msgid "%s: empty (zero)\n" msgstr "%s:ubusa Zeru" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "" #: array.c:829 #, fuzzy, c-format msgid "%s: is parameter\n" msgstr "%s:ni" #: array.c:834 #, fuzzy, c-format msgid "%s: array_ref to %s\n" msgstr "%s:Kuri" #: awkgram.y:208 #, fuzzy, c-format msgid "%s blocks must have an action part" msgstr "%sIgikorwa" #: awkgram.y:211 #, fuzzy msgid "each rule must have a pattern or an action part" msgstr "a Ishusho Cyangwa Igikorwa" #: awkgram.y:267 #, fuzzy, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s'ni a in Umumaro" #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "nka a C Icyo wongeraho ni OYA" #: awkgram.y:316 #, fuzzy, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "nka a C Icyo wongeraho ni OYA" #: awkgram.y:343 awkgram.y:623 #, fuzzy msgid "statement may have no effect" msgstr "Inyandiko Gicurasi Oya INGARUKA" #: awkgram.y:440 awkgram.y:460 #, fuzzy, c-format msgid "`%s' used in %s action" msgstr "`%s'in Igikorwa" #: awkgram.y:453 awkgram.y:456 #, fuzzy msgid "`nextfile' is a gawk extension" msgstr "`ni a Umugereka" #: awkgram.y:470 #, fuzzy msgid "`return' used outside function context" msgstr "`Hanze Umumaro Imvugiro" #: awkgram.y:512 #, fuzzy msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "Byuzuye in Cyangwa Gucapa" #: awkgram.y:525 awkgram.y:532 #, fuzzy msgid "`delete array' is a gawk extension" msgstr "`Gusiba ni a Umugereka" #: awkgram.y:540 awkgram.y:547 #, fuzzy msgid "`delete(array)' is a non-portable tawk extension" msgstr "`Gusiba Imbonerahamwe ni a Umugereka" #: awkgram.y:591 #, fuzzy, c-format msgid "duplicate case values in switch body: %s" msgstr "Gusubiramo Uduciro in Hindura Umubiri" #: awkgram.y:601 #, fuzzy msgid "Duplicate `default' detected in switch body" msgstr "in Hindura Umubiri" #: awkgram.y:690 #, fuzzy msgid "multistage two-way pipelines don't work" msgstr "Akazi" #: awkgram.y:781 #, fuzzy msgid "regular expression on right of assignment" msgstr "Ibisanzwe imvugo ku Iburyo: Bya Igenera" #: awkgram.y:804 #, fuzzy msgid "regular expression on left of `~' or `!~' operator" msgstr "Ibisanzwe imvugo ku Ibumoso: Bya Cyangwa Mukoresha" #: awkgram.y:812 #, fuzzy msgid "regular expression on right of comparison" msgstr "Ibisanzwe imvugo ku Iburyo: Bya" #: awkgram.y:879 #, fuzzy msgid "non-redirected `getline' undefined inside END action" msgstr "kidasobanuye Mo Imbere Igikorwa" #: awkgram.y:906 #, fuzzy msgid "call of `length' without parentheses is not portable" msgstr "Bya ni OYA" #: awkgram.y:909 #, fuzzy msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "Bya ni Bitemewe. ku" #: awkgram.y:962 #, fuzzy msgid "use of non-array as array" msgstr "Gukoresha Bya Imbonerahamwe Nka Imbonerahamwe" #: awkgram.y:964 #, fuzzy msgid "invalid subscript expression" msgstr "Sibyo Inyandiko nyesi imvugo" #: awkgram.y:1171 #, fuzzy msgid "unexpected newline or end of string" msgstr "Cyangwa Impera Bya Ikurikiranyanyuguti" #: awkgram.y:1267 #, fuzzy msgid "empty program text on command line" msgstr "ubusa Porogaramu Umwandiko ku Komandi: Umurongo" #: awkgram.y:1320 #, fuzzy, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "Gufungura Inkomoko IDOSIYE kugirango" #: awkgram.y:1397 #, fuzzy, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "Gusoma" #: awkgram.y:1405 #, fuzzy, c-format msgid "source file `%s' is empty" msgstr "Inkomoko IDOSIYE ni ubusa" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 #, fuzzy msgid "source file does not end in newline" msgstr "Inkomoko IDOSIYE OYA Impera in" #: awkgram.y:1658 #, fuzzy msgid "unterminated regexp ends with `\\' at end of file" msgstr "Na: ku Impera Bya IDOSIYE" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "" #: awkgram.y:1696 #, fuzzy msgid "unterminated regexp at end of file" msgstr "ku Impera Bya IDOSIYE" #: awkgram.y:1762 #, fuzzy msgid "use of `\\ #...' line continuation is not portable" msgstr "Gukoresha Bya Umurongo ni OYA" #: awkgram.y:1774 #, fuzzy msgid "backslash not last character on line" msgstr "OYA Iheruka Inyuguti ku Umurongo" #: awkgram.y:1819 #, fuzzy msgid "POSIX does not allow operator `**='" msgstr "OYA Kwemerera Mukoresha" #: awkgram.y:1821 #, fuzzy msgid "old awk does not support operator `**='" msgstr "ki/ bishaje OYA Gushigikira Mukoresha" #: awkgram.y:1830 #, fuzzy msgid "POSIX does not allow operator `**'" msgstr "OYA Kwemerera Mukoresha" #: awkgram.y:1832 #, fuzzy msgid "old awk does not support operator `**'" msgstr "ki/ bishaje OYA Gushigikira Mukoresha" #: awkgram.y:1863 #, fuzzy msgid "operator `^=' is not supported in old awk" msgstr "Mukoresha ni OYA in ki/ bishaje" #: awkgram.y:1871 #, fuzzy msgid "operator `^' is not supported in old awk" msgstr "Mukoresha ni OYA in ki/ bishaje" #: awkgram.y:1955 awkgram.y:1970 #, fuzzy msgid "unterminated string" msgstr "Ikurikiranyanyuguti" #: awkgram.y:2155 #, fuzzy, c-format msgid "invalid char '%c' in expression" msgstr "Sibyo INYUGUTI in imvugo" #: awkgram.y:2203 #, fuzzy, c-format msgid "`%s' is a gawk extension" msgstr "`%s'ni a Umugereka" #: awkgram.y:2206 #, fuzzy, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s'ni a Umugereka" #: awkgram.y:2209 #, fuzzy, c-format msgid "POSIX does not allow `%s'" msgstr "OYA Kwemerera" #: awkgram.y:2213 #, fuzzy, c-format msgid "`%s' is not supported in old awk" msgstr "`%s'ni OYA in ki/ bishaje" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "" #: awkgram.y:2301 #, fuzzy, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%dni Sibyo Nka Umubare Bya ingingo kugirango" #: awkgram.y:2320 awkgram.y:2323 #, fuzzy msgid "match: third argument is a gawk extension" msgstr "BIHUYE ni a Umugereka" #: awkgram.y:2336 #, fuzzy, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s:Ikurikiranyanyuguti Nka Iheruka Bya GUSIMBURANYA Oya INGARUKA" #: awkgram.y:2339 #, fuzzy, c-format msgid "%s third parameter is not a changeable object" msgstr "%sni OYA a Igikoresho" #: awkgram.y:2366 awkgram.y:2369 #, fuzzy msgid "close: second argument is a gawk extension" msgstr "Gufunga ISEGONDA ni a Umugereka" #: awkgram.y:2379 #, fuzzy msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "Gukoresha Bya ni Gukuraho... Nyobora" #: awkgram.y:2394 #, fuzzy msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "Gukoresha Bya ni Gukuraho... Nyobora" #: awkgram.y:2465 #, fuzzy, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "Umumaro" #: awkgram.y:2498 #, fuzzy, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "Umumaro IMPINDURAGACIRO" #: awkgram.y:2610 #, fuzzy, c-format msgid "could not open `%s' for writing (%s)" msgstr "OYA Gufungura kugirango" #: awkgram.y:2611 profile.c:93 #, fuzzy msgid "sending profile to standard error" msgstr "Ibijyana Kuri Bisanzwe Ikosa" #: awkgram.y:2643 #, fuzzy, c-format msgid "%s: close failed (%s)" msgstr "%s:Gufunga Byanze" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "" #: awkgram.y:2791 #, fuzzy msgid "there were shadowed variables." msgstr "Bihawe igicucu Ibihinduka" #: awkgram.y:2864 #, fuzzy, c-format msgid "function `%s': can't use function name as parameter name" msgstr "Umumaro Gukoresha Umumaro Izina: Nka Izina:" #: awkgram.y:2874 #, fuzzy, c-format msgid "function name `%s' previously defined" msgstr "Umumaro Izina:" #: awkgram.y:3025 awkgram.y:3031 #, fuzzy, c-format msgid "function `%s' called but never defined" msgstr "Umumaro Nta narimwe" #: awkgram.y:3034 #, fuzzy, c-format msgid "function `%s' defined but never called" msgstr "Umumaro Nta narimwe" #: awkgram.y:3061 #, fuzzy, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "kugirango Icyungo Agaciro" #: awkgram.y:3105 #, fuzzy, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "Umumaro Na: Umwanya hagati Izina: Na Cyangwa Nka a IMPINDURAGACIRO Cyangwa " "Imbonerahamwe" #: builtin.c:145 #, fuzzy, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%sKuri Byanze" #: builtin.c:146 #, fuzzy msgid "standard output" msgstr "Bisanzwe Ibisohoka" #: builtin.c:147 #, fuzzy msgid "reason unknown" msgstr "Kitazwi" #: builtin.c:160 #, fuzzy msgid "exp: received non-numeric argument" msgstr "EXP BYAKIRIWE Bikurikije umubare" #: builtin.c:166 #, fuzzy, c-format msgid "exp: argument %g is out of range" msgstr "EXP ni Inyuma Bya Urutonde" #: builtin.c:224 #, fuzzy, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "kugirango OYA" #: builtin.c:227 #, fuzzy, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "IDOSIYE kugirango OYA" #: builtin.c:239 #, fuzzy, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "ni OYA Gufungura IDOSIYE Cyangwa" #: builtin.c:332 #, fuzzy msgid "index: received non-string first argument" msgstr "Umubarendanga BYAKIRIWE Ikurikiranyanyuguti Itangira" #: builtin.c:334 #, fuzzy msgid "index: received non-string second argument" msgstr "Umubarendanga BYAKIRIWE Ikurikiranyanyuguti ISEGONDA" #: builtin.c:449 #, fuzzy msgid "int: received non-numeric argument" msgstr "INT BYAKIRIWE Bikurikije umubare" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "`Gusiba ni a Umugereka" #: builtin.c:481 #, fuzzy msgid "length: received non-string argument" msgstr "Uburebure BYAKIRIWE Ikurikiranyanyuguti" #: builtin.c:506 #, fuzzy msgid "log: received non-numeric argument" msgstr "LOG BYAKIRIWE Bikurikije umubare" #: builtin.c:509 #, fuzzy, c-format msgid "log: received negative argument %g" msgstr "LOG BYAKIRIWE" #: builtin.c:673 builtin.c:676 #, fuzzy msgid "must use `count$' on all formats or none" msgstr "Gukoresha IBARA ku Byose Imiterere Cyangwa Ntacyo" #: builtin.c:778 #, fuzzy msgid "`$' is not permitted in awk formats" msgstr "`$'ni OYA in Imiterere" #: builtin.c:784 #, fuzzy msgid "arg count with `$' must be > 0" msgstr "IBARA Na: 0" #: builtin.c:786 #, fuzzy, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "IBARA Biruta Igiteranyo Umubare Bya ingingo" #: builtin.c:788 #, fuzzy msgid "`$' not permitted after period in format" msgstr "`$'OYA Nyuma Igihe in Imiterere" #: builtin.c:801 #, fuzzy msgid "no `$' supplied for positional field width or precision" msgstr "Oya kugirango Umwanya Ubugari Cyangwa" #: builtin.c:867 #, fuzzy msgid "`l' is meaningless in awk formats; ignored" msgstr "`ni in Imiterere" #: builtin.c:871 #, fuzzy msgid "`l' is not permitted in POSIX awk formats" msgstr "`ni OYA in Imiterere" #: builtin.c:882 #, fuzzy msgid "`L' is meaningless in awk formats; ignored" msgstr "`ni in Imiterere" #: builtin.c:886 #, fuzzy msgid "`L' is not permitted in POSIX awk formats" msgstr "`ni OYA in Imiterere" #: builtin.c:897 #, fuzzy msgid "`h' is meaningless in awk formats; ignored" msgstr "`ni in Imiterere" #: builtin.c:901 #, fuzzy msgid "`h' is not permitted in POSIX awk formats" msgstr "`ni OYA in Imiterere" #: builtin.c:1132 #, fuzzy, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[S Agaciro ni Inyuma Bya Urutonde kugirango Imiterere" #: builtin.c:1198 #, fuzzy msgid "not enough arguments to satisfy format string" msgstr "OYA ingingo Kuri Imiterere Ikurikiranyanyuguti" #: builtin.c:1200 #, fuzzy msgid "^ ran out for this one" msgstr "^Inyuma kugirango iyi" #: builtin.c:1205 #, fuzzy msgid "[s]printf: format specifier does not have control letter" msgstr "[S Imiterere OYA Igenzura Ibaruwa..." #: builtin.c:1208 #, fuzzy msgid "too many arguments supplied for format string" msgstr "ingingo kugirango Imiterere Ikurikiranyanyuguti" #: builtin.c:1274 builtin.c:1277 #, fuzzy msgid "printf: no arguments" msgstr "Oya ingingo" #: builtin.c:1301 #, fuzzy msgid "sqrt: received non-numeric argument" msgstr "SQRT BYAKIRIWE Bikurikije umubare" #: builtin.c:1305 #, fuzzy, c-format msgid "sqrt: called with negative argument %g" msgstr "SQRT Na:" #: builtin.c:1329 #, fuzzy, c-format msgid "substr: start index %g is invalid, using 1" msgstr "Gutangira Umubarendanga ni Sibyo ikoresha 1." #: builtin.c:1334 #, fuzzy, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "Umubare wuzuye Gutangira Umubarendanga" #: builtin.c:1353 #, fuzzy, c-format msgid "substr: length %g is not >= 1" msgstr "Uburebure ni OYA 1." #: builtin.c:1355 #, fuzzy, c-format msgid "substr: length %g is not >= 0" msgstr "Uburebure ni OYA 0" #: builtin.c:1362 #, fuzzy, c-format msgid "substr: non-integer length %g will be truncated" msgstr "Umubare wuzuye Uburebure" #: builtin.c:1367 #, fuzzy, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "Uburebure kugirango Ikurikiranyanyuguti gushyiraho umugereka Kuri" #: builtin.c:1379 #, fuzzy msgid "substr: source string is zero length" msgstr "Inkomoko Ikurikiranyanyuguti ni Zeru Uburebure" #: builtin.c:1395 #, fuzzy, c-format msgid "substr: start index %g is past end of string" msgstr "Gutangira Umubarendanga ni Impera Bya Ikurikiranyanyuguti" #: builtin.c:1403 #, fuzzy, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "Uburebure ku Gutangira Umubarendanga Uburebure Bya Itangira" #: builtin.c:1478 #, fuzzy msgid "strftime: received non-string first argument" msgstr "BYAKIRIWE Ikurikiranyanyuguti Itangira" #: builtin.c:1484 #, fuzzy msgid "strftime: received empty format string" msgstr "BYAKIRIWE ubusa Imiterere Ikurikiranyanyuguti" #: builtin.c:1493 #, fuzzy msgid "strftime: received non-numeric second argument" msgstr "BYAKIRIWE Bikurikije umubare ISEGONDA" #: builtin.c:1556 #, fuzzy msgid "mktime: received non-string argument" msgstr "BYAKIRIWE Ikurikiranyanyuguti" #: builtin.c:1601 #, fuzzy msgid "system: received non-string argument" msgstr "Sisitemu BYAKIRIWE Ikurikiranyanyuguti" #: builtin.c:1722 eval.c:2039 #, fuzzy, c-format msgid "reference to uninitialized field `$%d'" msgstr "Indango Kuri Itatangijwe Umwanya" #: builtin.c:1827 #, fuzzy msgid "tolower: received non-string argument" msgstr "BYAKIRIWE Ikurikiranyanyuguti" #: builtin.c:1857 #, fuzzy msgid "toupper: received non-string argument" msgstr "BYAKIRIWE Ikurikiranyanyuguti" #: builtin.c:1890 #, fuzzy msgid "atan2: received non-numeric first argument" msgstr "ATAN2 BYAKIRIWE Bikurikije umubare Itangira" #: builtin.c:1892 #, fuzzy msgid "atan2: received non-numeric second argument" msgstr "ATAN2 BYAKIRIWE Bikurikije umubare ISEGONDA" #: builtin.c:1911 #, fuzzy msgid "sin: received non-numeric argument" msgstr "SIN BYAKIRIWE Bikurikije umubare" #: builtin.c:1927 #, fuzzy msgid "cos: received non-numeric argument" msgstr "COS BYAKIRIWE Bikurikije umubare" #: builtin.c:1977 #, fuzzy msgid "srand: received non-numeric argument" msgstr "BYAKIRIWE Bikurikije umubare" #: builtin.c:2012 #, fuzzy msgid "match: third argument is not an array" msgstr "BIHUYE ni OYA Imbonerahamwe" #: builtin.c:2555 #, fuzzy msgid "gensub: third argument of 0 treated as 1" msgstr "Bya 0 Nka 1." #: builtin.c:2715 #, fuzzy msgid "lshift: received non-numeric first argument" msgstr "BYAKIRIWE Bikurikije umubare Itangira" #: builtin.c:2717 #, fuzzy msgid "lshift: received non-numeric second argument" msgstr "BYAKIRIWE Bikurikije umubare ISEGONDA" #: builtin.c:2723 #, fuzzy, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "Uduciro Ibisubizo ku" #: builtin.c:2725 #, fuzzy, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "Uduciro" #: builtin.c:2727 #, fuzzy, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "Binini Gusunika Agaciro Ibisubizo ku" #: builtin.c:2753 #, fuzzy msgid "rshift: received non-numeric first argument" msgstr "BYAKIRIWE Bikurikije umubare Itangira" #: builtin.c:2755 #, fuzzy msgid "rshift: received non-numeric second argument" msgstr "BYAKIRIWE Bikurikije umubare ISEGONDA" #: builtin.c:2761 #, fuzzy, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "Uduciro Ibisubizo ku" #: builtin.c:2763 #, fuzzy, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "Uduciro" #: builtin.c:2765 #, fuzzy, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "Binini Gusunika Agaciro Ibisubizo ku" #: builtin.c:2791 #, fuzzy msgid "and: received non-numeric first argument" msgstr "Na BYAKIRIWE Bikurikije umubare Itangira" #: builtin.c:2793 #, fuzzy msgid "and: received non-numeric second argument" msgstr "Na BYAKIRIWE Bikurikije umubare ISEGONDA" #: builtin.c:2799 #, fuzzy, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "Na Uduciro Ibisubizo ku" #: builtin.c:2801 #, fuzzy, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "Na Uduciro" #: builtin.c:2827 #, fuzzy msgid "or: received non-numeric first argument" msgstr "Cyangwa BYAKIRIWE Bikurikije umubare Itangira" #: builtin.c:2829 #, fuzzy msgid "or: received non-numeric second argument" msgstr "Cyangwa BYAKIRIWE Bikurikije umubare ISEGONDA" #: builtin.c:2835 #, fuzzy, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "Cyangwa Uduciro Ibisubizo ku" #: builtin.c:2837 #, fuzzy, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "Cyangwa Uduciro" #: builtin.c:2863 #, fuzzy msgid "xor: received non-numeric first argument" msgstr "BYAKIRIWE Bikurikije umubare Itangira" #: builtin.c:2865 #, fuzzy msgid "xor: received non-numeric second argument" msgstr "BYAKIRIWE Bikurikije umubare ISEGONDA" #: builtin.c:2871 #, fuzzy, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "Uduciro Ibisubizo ku" #: builtin.c:2873 #, fuzzy, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "Uduciro" #: builtin.c:2897 #, fuzzy msgid "compl: received non-numeric argument" msgstr "BYAKIRIWE Bikurikije umubare" #: builtin.c:2903 #, fuzzy, c-format msgid "compl(%lf): negative value will give strange results" msgstr "Agaciro Ibisubizo ku" #: builtin.c:2905 #, fuzzy, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "Agaciro" #: builtin.c:3078 #, fuzzy, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "ni OYA a Byemewe Umwanya Icyiciro" #: eval.c:303 #, fuzzy, c-format msgid "unknown nodetype %d" msgstr "Kitazwi" #: eval.c:353 #, fuzzy msgid "buffer overflow in genflags2str" msgstr "Byarenze urugero in" #: eval.c:385 eval.c:391 profile.c:838 #, fuzzy, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "Kuri Gukoresha Imbonerahamwe in a Imvugiro" #: eval.c:733 #, fuzzy, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "kugirango Imbonerahamwe Byahinduwe Ingano Bivuye Kuri" #: eval.c:754 #, fuzzy msgid "`break' outside a loop is not portable" msgstr "`Hanze a ni OYA" #: eval.c:758 #, fuzzy msgid "`break' outside a loop is not allowed" msgstr "`Hanze a ni OYA" #: eval.c:775 #, fuzzy msgid "`continue' outside a loop is not portable" msgstr "`Hanze a ni OYA" #: eval.c:779 #, fuzzy msgid "`continue' outside a loop is not allowed" msgstr "`Hanze a ni OYA" #: eval.c:813 #, fuzzy msgid "`next' cannot be called from a BEGIN rule" msgstr "`Bivuye a" #: eval.c:815 #, fuzzy msgid "`next' cannot be called from an END rule" msgstr "`Bivuye" #: eval.c:824 #, fuzzy msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "`Bivuye a" #: eval.c:826 #, fuzzy msgid "`nextfile' cannot be called from an END rule" msgstr "`Bivuye" #: eval.c:875 #, fuzzy msgid "statement has no effect" msgstr "Inyandiko Oya INGARUKA" #: eval.c:952 eval.c:1893 #, fuzzy, c-format msgid "can't use function name `%s' as variable or array" msgstr "Gukoresha Umumaro Izina: Nka IMPINDURAGACIRO Cyangwa Imbonerahamwe" #: eval.c:959 eval.c:965 #, fuzzy, c-format msgid "reference to uninitialized argument `%s'" msgstr "Indango Kuri Itatangijwe" #: eval.c:974 eval.c:1902 #, fuzzy, c-format msgid "reference to uninitialized variable `%s'" msgstr "Indango Kuri Itatangijwe IMPINDURAGACIRO" #: eval.c:1120 #, fuzzy msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "Ingaruka in imvugo Byahinduwe i Uburebure Bya" #: eval.c:1200 #, fuzzy msgid "assignment used in conditional context" msgstr "Igenera in Imvugiro" #: eval.c:1278 #, fuzzy msgid "division by zero attempted" msgstr "ku Zeru" #: eval.c:1293 #, fuzzy, c-format msgid "division by zero attempted in `%%'" msgstr "ku Zeru in" #: eval.c:1308 profile.c:714 #, fuzzy, c-format msgid "illegal type (%s) in tree_eval" msgstr "Ubwoko in" #: eval.c:1471 #, fuzzy msgid "division by zero attempted in `/='" msgstr "ku Zeru in" #: eval.c:1493 #, fuzzy, c-format msgid "division by zero attempted in `%%='" msgstr "ku Zeru in" #: eval.c:1758 #, fuzzy, c-format msgid "function `%s' called with more arguments than declared" msgstr "Umumaro Na: Birenzeho ingingo" #: eval.c:1802 #, fuzzy, c-format msgid "function `%s' not defined" msgstr "Umumaro OYA" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "" #: eval.c:2023 #, fuzzy msgid "attempt to field reference from non-numeric value" msgstr "Kuri Umwanya Indango Bivuye Bikurikije umubare Agaciro" #: eval.c:2025 #, fuzzy msgid "attempt to reference from null string" msgstr "Kuri Indango Bivuye NTAGIHARI Ikurikiranyanyuguti" #: eval.c:2031 #, fuzzy, c-format msgid "attempt to access field %d" msgstr "Kuri Umwanya" #: eval.c:2052 eval.c:2059 profile.c:935 #, fuzzy msgid "assignment is not allowed to result of builtin function" msgstr "Igenera ni OYA Kuri Igisubizo Bya Umumaro" #: eval.c:2123 #, fuzzy msgid "`IGNORECASE' is a gawk extension" msgstr "`ni a Umugereka" #: eval.c:2153 #, fuzzy msgid "`BINMODE' is a gawk extension" msgstr "`ni a Umugereka" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "" #: eval.c:2353 #, fuzzy msgid "turning off `--lint' due to assignment to `LINT'" msgstr "Bidakora Kuri Igenera Kuri" #: ext.c:60 ext.c:64 #, fuzzy msgid "`extension' is a gawk extension" msgstr "`ni a Umugereka" #: ext.c:74 #, fuzzy, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "Umugereka Gufungura" #: ext.c:82 #, fuzzy, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "Umugereka Isomero Umumaro" #: ext.c:102 #, fuzzy msgid "extension: missing function name" msgstr "Umugereka Ibuze Umumaro Izina:" #: ext.c:107 #, fuzzy, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "Umugereka Inyuguti in Umumaro Izina:" #: ext.c:113 #, fuzzy, c-format msgid "extension: can't redefine function `%s'" msgstr "Umugereka Umumaro" #: ext.c:117 #, fuzzy, c-format msgid "extension: function `%s' already defined" msgstr "Umugereka Umumaro" #: ext.c:122 #, fuzzy, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "Umugereka Gukoresha in Nka Umumaro Izina:" #: ext.c:124 #, fuzzy, c-format msgid "extension: function name `%s' previously defined" msgstr "Umugereka Umumaro Izina:" #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "Umumaro Kuri Oya Birenzeho S" #: ext.c:204 #, fuzzy, c-format msgid "function `%s': missing argument #%d" msgstr "Umumaro Ibuze" #: ext.c:214 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "Umumaro Kuri Gukoresha Nka Imbonerahamwe" #: ext.c:218 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "Umumaro Kuri Gukoresha Imbonerahamwe Nka a" #: ext.c:243 msgid "Operation Not Supported" msgstr "" #: field.c:326 #, fuzzy msgid "NF set to negative value" msgstr "Gushyiraho Kuri Agaciro" #: field.c:819 #, fuzzy msgid "split: second argument is not an array" msgstr "Gutandukanya ISEGONDA ni OYA Imbonerahamwe" #: field.c:853 #, fuzzy msgid "split: null string for third arg is a gawk extension" msgstr "Gutandukanya NTAGIHARI Ikurikiranyanyuguti kugirango ni a Umugereka" #: field.c:905 #, fuzzy msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`ni a Umugereka" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 #, fuzzy msgid "null string for `FS' is a gawk extension" msgstr "NTAGIHARI Ikurikiranyanyuguti kugirango ni a Umugereka" #: getopt.c:571 getopt.c:590 #, fuzzy, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s:Ihitamo ni" #: getopt.c:623 getopt.c:627 #, fuzzy, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s:Ihitamo Kwemerera" #: getopt.c:636 getopt.c:641 #, fuzzy, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s:Ihitamo Kwemerera" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, fuzzy, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s:Ihitamo" #: getopt.c:747 getopt.c:750 #, fuzzy, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s:Ihitamo" #: getopt.c:758 getopt.c:761 #, fuzzy, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s:Ihitamo" #: getopt.c:816 getopt.c:819 #, fuzzy, c-format msgid "%s: illegal option -- %c\n" msgstr "%s:Ihitamo" #: getopt.c:825 getopt.c:828 #, fuzzy, c-format msgid "%s: invalid option -- %c\n" msgstr "%s:Sibyo Ihitamo" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, fuzzy, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s:Ihitamo" #: getopt.c:955 getopt.c:974 #, fuzzy, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s:Ihitamo ni" #: getopt.c:998 getopt.c:1019 #, fuzzy, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s:Ihitamo Kwemerera" #: io.c:307 #, fuzzy, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "Gufungura IDOSIYE kugirango" #: io.c:398 #, fuzzy, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "Gufunga Bya Byanze" #: io.c:536 #, fuzzy, c-format msgid "invalid tree type %s in redirect()" msgstr "Sibyo Ubwoko in" #: io.c:542 #, fuzzy, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "imvugo in Bikurikije umubare Agaciro" #: io.c:548 #, fuzzy, c-format msgid "expression for `%s' redirection has null string value" msgstr "imvugo kugirango NTAGIHARI Ikurikiranyanyuguti Agaciro" #: io.c:553 #, fuzzy, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "Izina ry'idosiye: kugirango Gicurasi Igisubizo Bya Bijyanye n'inyurabwenge " "imvugo" #: io.c:591 #, fuzzy, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "Bya Na kugirango IDOSIYE" #: io.c:643 #, fuzzy, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "Gufungura kugirango Ibisohoka" #: io.c:652 #, fuzzy, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "Gufungura kugirango Iyinjiza" #: io.c:665 #, fuzzy, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "Gufungura kugirango Iyinjiza Ibisohoka" #: io.c:669 #, fuzzy, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "Gufungura kugirango Iyinjiza Ibisohoka" #: io.c:745 #, fuzzy, c-format msgid "can't redirect from `%s' (%s)" msgstr "Bivuye" #: io.c:748 #, fuzzy, c-format msgid "can't redirect to `%s' (%s)" msgstr "Kuri" #: io.c:787 #, fuzzy msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "Sisitemu kugirango Gufungura Idosiye Kuri IDOSIYE" #: io.c:803 #, fuzzy, c-format msgid "close of `%s' failed (%s)." msgstr "Gufunga Bya Byanze" #: io.c:811 #, fuzzy msgid "too many pipes or input files open" msgstr "Cyangwa Iyinjiza Idosiye Gufungura" #: io.c:834 #, fuzzy msgid "close: second argument must be `to' or `from'" msgstr "Gufunga ISEGONDA Cyangwa" #: io.c:848 #, fuzzy, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "Gufunga." #: io.c:852 #, fuzzy msgid "close of redirection that was never opened" msgstr "Gufunga Bya Nta narimwe" #: io.c:948 #, fuzzy, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "Gufunga OYA Na: ISEGONDA" #: io.c:964 #, fuzzy, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "Imimerere ku Gufunga Bya" #: io.c:967 #, fuzzy, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "Imimerere ku IDOSIYE Gufunga Bya" #: io.c:987 #, fuzzy, c-format msgid "no explicit close of socket `%s' provided" msgstr "Oya Gufunga Bya" #: io.c:990 #, fuzzy, c-format msgid "no explicit close of co-process `%s' provided" msgstr "Oya Gufunga Bya" #: io.c:993 #, fuzzy, c-format msgid "no explicit close of pipe `%s' provided" msgstr "Oya Gufunga Bya" #: io.c:996 #, fuzzy, c-format msgid "no explicit close of file `%s' provided" msgstr "Oya Gufunga Bya IDOSIYE" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, fuzzy, c-format msgid "error writing standard output (%s)" msgstr "Ikosa Bisanzwe Ibisohoka" #: io.c:1029 io.c:1085 #, fuzzy, c-format msgid "error writing standard error (%s)" msgstr "Ikosa Bisanzwe Ikosa" #: io.c:1037 #, fuzzy, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "Bya Byanze" #: io.c:1040 #, fuzzy, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "Bya Kuri Byanze" #: io.c:1043 #, fuzzy, c-format msgid "file flush of `%s' failed (%s)." msgstr "IDOSIYE Bya Byanze" #: io.c:1205 #, fuzzy msgid "/inet/raw client not ready yet, sorry" msgstr "/Umukiriya OYA Cyiteguye" #: io.c:1207 io.c:1244 #, fuzzy msgid "only root may use `/inet/raw'." msgstr "Imizi Gicurasi Gukoresha" #: io.c:1242 #, fuzzy msgid "/inet/raw server not ready yet, sorry" msgstr "/Seriveri OYA Cyiteguye" #: io.c:1332 #, fuzzy, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "Oya Porotokole in Bidasanzwe Izina ry'idosiye:" #: io.c:1350 #, fuzzy, c-format msgid "special file name `%s' is incomplete" msgstr "Bidasanzwe IDOSIYE Izina: ni" #: io.c:1362 #, fuzzy, c-format msgid "local port invalid in `%s'" msgstr "Umuyoboro Sibyo in" #: io.c:1374 #, fuzzy msgid "must supply a remote hostname to `/inet'" msgstr "a Izina ry'inturo: Kuri" #: io.c:1389 #, fuzzy msgid "must supply a remote port to `/inet'" msgstr "a Umuyoboro Kuri" #: io.c:1395 #, fuzzy, c-format msgid "remote port invalid in `%s'" msgstr "Umuyoboro Sibyo in" #: io.c:1405 #, fuzzy msgid "TCP/IP communications are not supported" msgstr "OYA" #: io.c:1414 io.c:1595 #, fuzzy, c-format msgid "file `%s' is a directory" msgstr "IDOSIYE ni a bushyinguro" #: io.c:1484 #, fuzzy, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "Gukoresha Bya" #: io.c:1516 #, fuzzy msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "Gukoresha Bya" #: io.c:1581 io.c:1763 #, fuzzy, c-format msgid "could not open `%s', mode `%s'" msgstr "OYA Gufungura Ubwoko" #: io.c:1814 #, fuzzy, c-format msgid "close of master pty failed (%s)" msgstr "Gufunga Bya Mugenga Byanze" #: io.c:1816 io.c:1968 io.c:2119 #, fuzzy, c-format msgid "close of stdout in child failed (%s)" msgstr "Gufunga Bya in Byanze" #: io.c:1819 #, fuzzy, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "Kuri in Byanze" #: io.c:1821 io.c:1973 #, fuzzy, c-format msgid "close of stdin in child failed (%s)" msgstr "Gufunga Bya in Byanze" #: io.c:1824 #, fuzzy, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "Kuri in Byanze" #: io.c:1826 io.c:1845 #, fuzzy, c-format msgid "close of slave pty failed (%s)" msgstr "Gufunga Bya Byanze" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, fuzzy, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "Kuri in Byanze" #: io.c:1923 io.c:1976 #, fuzzy, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "Kuri in Byanze" #: io.c:1940 io.c:2113 #, fuzzy msgid "restoring stdout in parent process failed\n" msgstr "in" #: io.c:1945 #, fuzzy msgid "restoring stdin in parent process failed\n" msgstr "in" #: io.c:1979 io.c:2124 io.c:2135 #, fuzzy, c-format msgid "close of pipe failed (%s)" msgstr "Gufunga Bya Byanze" #: io.c:2024 #, fuzzy msgid "`|&' not supported" msgstr "`|&'OYA" #: io.c:2090 #, fuzzy, c-format msgid "cannot open pipe `%s' (%s)" msgstr "Gufungura" #: io.c:2131 #, fuzzy, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "Kurema kugirango" #: io.c:2506 #, fuzzy, c-format msgid "data file `%s' is empty" msgstr "Ibyatanzwe IDOSIYE ni ubusa" #: io.c:2547 io.c:2555 #, fuzzy msgid "could not allocate more input memory" msgstr "OYA Birenzeho Iyinjiza Ububiko" #: io.c:2919 io.c:2984 #, fuzzy, c-format msgid "error reading input file `%s': %s" msgstr "Ikosa Iyinjiza IDOSIYE" #: io.c:3109 #, fuzzy msgid "multicharacter value of `RS' is a gawk extension" msgstr "Agaciro Bya ni a Umugereka" #: main.c:338 #, fuzzy msgid "`-m[fr]' option irrelevant in gawk" msgstr "`-M Ihitamo in" #: main.c:340 #, fuzzy msgid "-m option usage: `-m[fr] nnn'" msgstr "-M Ihitamo Ikoresha: M" #: main.c:357 #, fuzzy, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s:Ihitamo" #: main.c:394 #, fuzzy msgid "empty argument to `--source' ignored" msgstr "ubusa Kuri" #: main.c:467 #, fuzzy msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "IMPINDURAGACIRO Gushyiraho ku" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "" #: main.c:483 #, fuzzy msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--NYACUMI" #: main.c:487 #, fuzzy, c-format msgid "running %s setuid root may be a security problem" msgstr "Imizi Gicurasi a Umutekano" #: main.c:528 #, fuzzy, c-format msgid "can't set binary mode on stdin (%s)" msgstr "Gushyiraho Nyabibiri Ubwoko ku" #: main.c:531 #, fuzzy, c-format msgid "can't set binary mode on stdout (%s)" msgstr "Gushyiraho Nyabibiri Ubwoko ku" #: main.c:533 #, fuzzy, c-format msgid "can't set binary mode on stderr (%s)" msgstr "Gushyiraho Nyabibiri Ubwoko ku" #: main.c:572 #, fuzzy msgid "no program text at all!" msgstr "Oya Porogaramu Umwandiko ku Byose" #: main.c:665 #, fuzzy, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Cyangwa IMISUSIRE Amahitamo F IDOSIYE" #: main.c:667 #, fuzzy, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Cyangwa IMISUSIRE Amahitamo IDOSIYE" #: main.c:672 #, fuzzy msgid "POSIX options:\t\tGNU long options:\n" msgstr "Amahitamo Amahitamo" #: main.c:673 #, fuzzy msgid "\t-f progfile\t\t--file=progfile\n" msgstr "-F IDOSIYE" #: main.c:674 #, fuzzy msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "-Umwanya Mutandukanya" #: main.c:675 #, fuzzy msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "-v VAR Kugenera... VAR" #: main.c:676 #, fuzzy msgid "\t-m[fr] val\n" msgstr "-M" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "" #: main.c:680 #, fuzzy msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "-Ibihinduka IDOSIYE Ibihinduka IDOSIYE" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr "-Ibijyana IDOSIYE Ibijyana IDOSIYE" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "" #: main.c:686 #, fuzzy msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "-NYACUMI NYACUMI" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "" #: main.c:693 #, fuzzy msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "-Ibijyana IDOSIYE Ibijyana IDOSIYE" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "" #: main.c:696 #, fuzzy msgid "\t-W source=program-text\t--source=program-text\n" msgstr "-Inkomoko Porogaramu Inkomoko Porogaramu" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "" #: main.c:703 #, fuzzy msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "Icyegeranyo in Na in i Byacapwe Verisiyo" #: main.c:707 #, fuzzy msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "ni a Ishusho Na Inonosora Ururimi Mburabuzi Bisanzwe Iyinjiza Na Bisanzwe " "Ibisohoka" #: main.c:711 #, fuzzy msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "Igiteranyo Gucapa Igiteranyo Gucapa" #: main.c:731 #, fuzzy, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "C Porogaramu ni Kigenga Na Cyangwa i Bya i Nka Verisiyo 2. Bya i ku Ihitamo " "Verisiyo" #: main.c:739 #, fuzzy 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Porogaramu ni in i ATARIIGIHARWE i Cyangwa A kugirango Birenzeho Birambuye" #: main.c:745 #, fuzzy msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "BYAKIRIWE a Gukoporora Bya i Na: iyi Porogaramu NIBA OYA Kwandika Kuri i" #: main.c:781 #, fuzzy msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-OYA Gushyiraho Kuri Isunika in" #: main.c:1018 #, fuzzy, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "%s:`%s'Kuri OYA in VAR" #: main.c:1038 #, fuzzy, c-format msgid "`%s' is not a legal variable name" msgstr "`%s'ni OYA a By'amategeko IMPINDURAGACIRO Izina:" #: main.c:1041 #, fuzzy, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s'ni OYA a IMPINDURAGACIRO Izina: kugirango IDOSIYE" #: main.c:1074 #, fuzzy msgid "floating point exception" msgstr "Bihindagurika Akadomo Irengayobora(-)" #: main.c:1081 #, fuzzy msgid "fatal error: internal error" msgstr "Ikosa By'imbere Ikosa" #: main.c:1132 #, fuzzy, c-format msgid "no pre-opened fd %d" msgstr "Oya Byahawe imiterere mbere" #: main.c:1139 #, fuzzy, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "OYA Byahawe imiterere mbere Gufungura NTAGIHARI kugirango" #: main.c:1162 main.c:1171 #, fuzzy, c-format msgid "could not find groups: %s" msgstr "OYA Gushaka Amatsinda" #: msg.c:54 #, fuzzy, c-format msgid "cmd. line:" msgstr "Cmd+." #: msg.c:120 #, fuzzy msgid "warning: " msgstr "Iburira!" # starmath/source\smres.src:RID_ERR_IDENT.text #: msg.c:142 #, fuzzy msgid "error: " msgstr "IKOSA" #: msg.c:178 msgid "fatal: " msgstr "" #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 #, fuzzy msgid "can't convert string to float" msgstr "GUHINDURA Ikurikiranyanyuguti Kuri Kureremba" #: node.c:414 #, fuzzy msgid "backslash at end of string" msgstr "ku Impera Bya Ikurikiranyanyuguti" #: node.c:604 #, fuzzy msgid "POSIX does not allow `\\x' escapes" msgstr "OYA Kwemerera" #: node.c:610 #, fuzzy msgid "no hex digits in `\\x' escape sequence" msgstr "Oya in" #: node.c:644 #, fuzzy, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "Nka Byuzuye" #: posix/gawkmisc.c:172 #, fuzzy, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s%s`%s':OYA Gushyiraho Gufunga ku" #: profile.c:91 #, fuzzy, c-format msgid "could not open `%s' for writing: %s" msgstr "OYA Gufungura kugirango" #: profile.c:467 #, fuzzy, c-format msgid "internal error: %s with null vname" msgstr "By'imbere Ikosa Na: NTAGIHARI" #: profile.c:531 #, fuzzy msgid "# treated internally as `delete'" msgstr "#Nka" #: profile.c:1168 #, fuzzy, c-format msgid "# this is a dynamically loaded extension function" msgstr "#iyi ni a Umugereka Umumaro" #: profile.c:1199 #, fuzzy, c-format msgid "\t# gawk profile, created %s\n" msgstr "#Ibijyana Byaremwe" #: profile.c:1202 #, fuzzy, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "#Funga S" #: profile.c:1212 #, fuzzy, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "#S" #: profile.c:1218 #, fuzzy, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "#Funga S" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" #: profile.c:1453 #, fuzzy, c-format msgid "unexpected type %s in prec_level" msgstr "Ubwoko in" #: regcomp.c:160 msgid "Success" msgstr "Ibyatunganye" #: regcomp.c:163 #, fuzzy msgid "No match" msgstr "BIHUYE" #: regcomp.c:166 #, fuzzy msgid "Invalid regular expression" msgstr "Ibisanzwe imvugo" #: regcomp.c:169 #, fuzzy msgid "Invalid collation character" msgstr "Inyuguti" #: regcomp.c:172 #, fuzzy msgid "Invalid character class name" msgstr "Inyuguti ishuri Izina:" #: regcomp.c:175 msgid "Trailing backslash" msgstr "" #: regcomp.c:178 #, fuzzy msgid "Invalid back reference" msgstr "Inyuma Indango" #: regcomp.c:181 #, fuzzy msgid "Unmatched [ or [^" msgstr "Cyangwa" #: regcomp.c:184 #, fuzzy msgid "Unmatched ( or \\(" msgstr "Cyangwa" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "" #: regcomp.c:190 #, fuzzy msgid "Invalid content of \\{\\}" msgstr "Ibikubiyemo Bya" #: regcomp.c:193 #, fuzzy msgid "Invalid range end" msgstr "Urutonde Impera" #: regcomp.c:196 msgid "Memory exhausted" msgstr "" #: regcomp.c:199 #, fuzzy msgid "Invalid preceding regular expression" msgstr "Ibisanzwe imvugo" #: regcomp.c:202 #, fuzzy msgid "Premature end of regular expression" msgstr "Impera Bya Ibisanzwe imvugo" #: regcomp.c:205 #, fuzzy msgid "Regular expression too big" msgstr "imvugo" #: regcomp.c:208 #, fuzzy msgid "Unmatched ) or \\)" msgstr "Cyangwa" #: regcomp.c:688 #, fuzzy msgid "No previous regular expression" msgstr "Ibanjirije Ibisanzwe imvugo" #, fuzzy #~ msgid "function %s called\n" #~ msgstr "Umumaro" #, fuzzy #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "Umwanya in 0" EOF echo - 'sv.po' cat << 'EOF' > 'sv.po' # Swedish translation of gawk # Copyright (C) 2003 Free Software Foundation, Inc. # Martin Sjögren , 2001-2002. # # $Id: sv.po,v 1.23 2003/02/27 18:54:30 martin Exp $ # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.1m\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2003-02-27 19:54+0100\n" "Last-Translator: Martin Sjögren \n" "Language-Team: Swedish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: array.c:112 #, fuzzy, c-format msgid "attempt to use function `%s' as an array" msgstr "försök att använda funktionen \"%s\" som vektor" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "försök att använda skalärparametern \"%s\" som en vektor" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "försök att använda skalären \"%s\" som vektor" #: array.c:156 #, fuzzy, c-format msgid "from %s" msgstr "%s (från %s)" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "referens till ickeinitierat element \"%s[\"%s\"]\"" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "index i vektorn \"%s\" är en tom sträng" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: index \"%s\" finns inte i vektorn \"%s\"" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: tom (null)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: tom (noll)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: tabellstorlek = %d, vektorstorlek = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: är en parameter\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: vektorreferens till %s\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "%s-block måste ha en åtgärdsdel" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "varje regel måste ha ett mönster eller en åtgärdsdel" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "\"%s\" är en inbyggd funktion, den kan inte definieras om" #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "regexp-konstanten \"/%s/\" ser ut som en C-kommentar men är inte det" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "regexp-konstanten \"/%s/\" ser ut som en C-kommentar men är inte det" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "kommandot kanske inte har någon effekt" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "\"%s\" använd i %s-åtgärden" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "\"nextfile\" är en gawk-utökning" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "\"return\" använd utanför funktion" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "ensamt \"print\" i BEGIN eller END-regel bör troligen vara 'print \"\"'" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "\"delete array\" är en gawk-utökning" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "\"delete(array)\" är en icke portabel tawk-utökning" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "flerstegs dubbelriktade rör fungerar inte" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "reguljärt uttryck i högerledet av en tilldelning" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "reguljärt uttryck på vänster sida om en \"~\"- eller \"!~\"-operator" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "reguljärt uttryck i högerledet av en jämförelse" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "icke omdirigerad \"getline\" odefinierad inuti END-åtgärd" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "anrop av \"length\" utan parenteser är inte portabelt" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "anrop av \"length\" utan parenteser är föråldrat enligt POSIX" #: awkgram.y:962 msgid "use of non-array as array" msgstr "" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "ogiltig indexuttryck" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "oväntat nyradstecken eller slut på strängen" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "tom programtext på kommandoraden" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "kan inte öppna källfilen \"%s\" för läsning (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "kan inte läsa källfilen \"%s\" (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "källfilen \"%s\" är tom" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "källfilen slutar inte med en ny rad" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "oavslutat reguljärt uttryck slutar med \"\\\" i slutet av filen" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "oavslutat reguljärt uttryck" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "oavslutat reguljärt uttryck i slutet av filen" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "Användning av \"\\ #...\" för radfortsättning är inte portabelt" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "sista tecknet på raden är inte ett omvänt snedstreck" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX tillåter inte operatorn \"**=\"" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "gamla awk stöder inte operatorn \"**=\"" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX tillåter inte operatorn \"**\"" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "gamla awk stöder inte operatorn \"**\"" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "operatorn \"^=\" stöds inte i gamla awk" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "operatorn \"^\" stöds inte i gamla awk" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "oavslutad sträng" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "ogiltigt tecken \"%c\" i uttryck" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "\"%s\" är en gawk-utökning" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "\"%s\" är en Bell Labs-utökning" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX tillåter inte \"%s\"" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "\"%s\" stöds inte i gamla awk" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "\"goto\" anses skadlig!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d är ett ogiltigt antal argument för %s" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: tredje argumentet är en gawk-utökning" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: bokstavlig sträng som sista argument till ersättning har ingen effekt" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "%s: tredje argumentet är inte ett ändringsbart objekt" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: andra argumentet är en gawk-utökning" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "användandet av dcgettext(_\"...\") är felaktigt: ta bort det inledande " "understrykningstecknet" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "användandet av dcngettext(_\"...\") är felaktigt: ta bort det inledande " "understrykningstecknet" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "funktionen \"%s\": parameter %d, \"%s\", är samma som parameter %d" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funktionen \"%s\": parametern \"%s\" överskuggar en global variabel" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "kunde inte öpnna \"%s\" för skrivning (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "skickar profilen till standard fel" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: misslyckades att stänga (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() anropad två gånger!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "det fanns överskuggade variabler." #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funktionen \"%s\": kan inte använda funktionsnamn som parameternamn" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "funktionsnamnet \"%s\" är definierat sedan tidigare" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "funktionen \"%s\" anropad men aldrig definierad" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "funktionen \"%s\" definierad men aldrig anropad" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "konstant reguljärt uttryck för parameter %d ger ett booleskt värde" #: awkgram.y:3105 #, fuzzy, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "funktionen \"%s\" anropad med blanktecken mellan namnet och \"(\",\n" "%s" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s till \"%s\" misslyckades (%s)" #: builtin.c:146 msgid "standard output" msgstr "standard ut" #: builtin.c:147 msgid "reason unknown" msgstr "okänd anledning" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: fick ett ickenumeriskt argument" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argumentet %g är inte inom tillåten gräns" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: kan inte spola: röret \"%s\" öppnat för läsning, inte skrivning" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: kan inte spola: filen \"%s\" öppnad för läsning, inte skrivning" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: \"%s\" är inte en öppen fil, rör eller koprocess" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: första argumentet är inte en sträng" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: andra argumentet är inte en sträng" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: fick ett ickenumeriskt argument" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "\"delete array\" är en gawk-utökning" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: fick ett argument som inte är en sträng" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: fick ett ickenumeriskt argument" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: fick ett negativt argumentet %g" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "måste använda \"count$\" på alla eller inga format" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "\"$\" tillåts inte i awkformat" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "argumentantalet med \"$\" måste vara > 0" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "argumentantalet %ld är större än antalet givna argument" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "\"$\" tillåts inte efter en punkt i formatet" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "inget \"$\" bifogat för positionsangiven fältbredd eller precision" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "\"l\" är meningslös i awk-format, ignorerad" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "\"l\" tillåts inte i POSIX awk-format" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "\"L\" är meningslös i awk-format, ignorerad" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "\"L\" tillåts inte i POSIX awk-format" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "\"h\" är meningslös i awk-format, ignorerad" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "\"h\" tillåts inte i POSIX awk-format" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "för få argument för formatsträngen" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "^ tog slut här" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: formatspecifieraren har ingen kommandobokstav" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "för många argument för formatsträngen" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: inga argument" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: fick ickenumeriskt argument" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: anropad med negativt argument %g" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: startindex %g är ogiltigt, använder 1" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: startindex %g som inte är ett heltal kommer trunkeras" #: builtin.c:1353 #, fuzzy, c-format msgid "substr: length %g is not >= 1" msgstr "substr: längden %g är <= 0" #: builtin.c:1355 #, fuzzy, c-format msgid "substr: length %g is not >= 0" msgstr "substr: längden %g är <= 0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: längden %g som inte är ett heltal kommer trunkeras" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr: längden %g är för stor för strängindexering, trunkeras till %g" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: källsträngen är tom" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: startindex %g är bortom strängens slut" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: längden %g vid startindex %g överskrider det första argumentets " "längd (%lu)" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftime: fick ett första argument som inte är en sträng" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: fick en tom formatsträng" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: fick ett ickenumeriskt andra argument" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: fick ett argument som inte är en sträng" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: fick ett argument som inte är en sträng" #: builtin.c:1722 eval.c:2039 #, fuzzy, c-format msgid "reference to uninitialized field `$%d'" msgstr "referens till icke initierad variabel \"%s\"" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: fick ett argument som inte är en sträng" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: fick ett argument som inte är en sträng" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: fick ett ickenumeriskt första argument" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: fick ett ickenumeriskt andra argument" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: fick ett ickenumeriskt argument" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: fick ett ickenumeriskt argument" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: fick ett ickenumeriskt argument" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: tredje argumentet är inte en vektor" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: Nollan i tredje argumentet behandlad som en etta" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: fick ett ickenumeriskt första argument" #: builtin.c:2717 #, fuzzy msgid "lshift: received non-numeric second argument" msgstr "strftime: fick ett ickenumeriskt andra argument" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): negativa värden kommer ge konstiga resultat" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): flyttalsvärden kommer trunkeras" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): för stora skiftvärden kommer ge konstiga resultat" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: fick ett ickenumeriskt första argument" #: builtin.c:2755 #, fuzzy msgid "rshift: received non-numeric second argument" msgstr "strftime: fick ett ickenumeriskt andra argument" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): negativa värden kommer ge konstiga resultat" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): flyttalsvärden kommer trunkeras" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): för stora skiftvärden kommer ge konstiga resultat" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: fick ett ickenumeriskt första argument" #: builtin.c:2793 #, fuzzy msgid "and: received non-numeric second argument" msgstr "atan2: fick ett ickenumeriskt andra argument" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): negativa värden kommer ge konstiga resultat" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): flyttalsvärden kommer trunkeras" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: fick ett ickenumeriskt första argument" #: builtin.c:2829 #, fuzzy msgid "or: received non-numeric second argument" msgstr "atan2: fick ett ickenumeriskt andra argument" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): negativa värden kommer ge konstiga resultat" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): flyttalsvärden kommer trunkeras" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: fick ett ickenumeriskt första argument" #: builtin.c:2865 #, fuzzy msgid "xor: received non-numeric second argument" msgstr "atan2: fick ett ickenumeriskt andra argument" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): negativa värden kommer ge konstiga resultat" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): flyttalsvärden kommer trunkeras" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: fick ett ickenumeriskt argument" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): negativa värden kommer ge konstiga resultat" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): flyttalsvärden kommer trunkeras" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: \"%s\" är inte en giltig lokalkategori" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "okänd nodtyp %d" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "buffertöverflöd i genflags2str" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "försök att använda vektorn \"%s\" i skalärsammanhang" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "forslinga: vektorn \"%s\" ändrade storlek från %ld till %ld under " "slingexekvering" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "\"break\" utanför en slinga är inte portabelt" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "\"break\" utanför en slinga är inte tillåtet" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "\"continue\" utanför en slinga är inte portabelt" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "\"continue\" utanför en slinga är inte tillåtet" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "\"next\" kan inte anropas från en BEGIN-regel" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "\"next\" kan inte anropas från en END-regel" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "\"nextfile\" kan inte anropas från en BEGIN-regel" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "\"nextfile\" kan inte anropas från en END-regel" #: eval.c:875 msgid "statement has no effect" msgstr "kommandot har ingen effekt" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "kan inte använda funktionsnamnet \"%s\" som variabel eller vektor" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "referens till icke initierat argument \"%s\"" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "referens till icke initierad variabel \"%s\"" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenation: sidoeffekter i ett uttryck har ändrat längden av ett annat!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "tilldelning använt i jämförelsesammanhang" #: eval.c:1278 msgid "division by zero attempted" msgstr "försökte dividera med noll" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "försökte dividera med noll i \"%%\"" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "otillåten typ (%s) i tree_eval" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "försökte dividera med noll i \"/=\"" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "försökte dividera med noll i \"%%=\"" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "funktionen \"%s\" anropad med fler argument än vad som deklarerats" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "funktionen \"%s\" är inte definierad" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Funktionsanropsstack:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- main --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "försök att fältreferera från ickenumeriskt värde" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "försök att referera från tom sträng" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "försök att komma åt fält nummer %d" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "det är inte tillåtet att tilldela resultatet från en inbyggd funktion" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "\"IGNORECASE\" är en gawk-utökning" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "\"BINMODE\" är en gawk-utökning" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "felaktig \"%sFMT\"-specifikation \"%s\"" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "slår av \"--lint\" på grund av en tilldelning till \"LINT\"" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "\"extension\" är en gawk-utökning" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: kan inte öppna \"%s\" (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: bibliotek \"%s\": kan inte anropa funktionen \"%s\" (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "" #: ext.c:107 #, fuzzy, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: bibliotek \"%s\": kan inte anropa funktionen \"%s\" (%s)\n" #: ext.c:113 #, fuzzy, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: kan inte öppna \"%s\" (%s)\n" #: ext.c:117 #, fuzzy, c-format msgid "extension: function `%s' already defined" msgstr "funktionen \"%s\" är inte definierad" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" #: ext.c:124 #, fuzzy, c-format msgid "extension: function name `%s' previously defined" msgstr "funktionsnamnet \"%s\" är definierat sedan tidigare" #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funktionen \"%s\" definierad men aldrig anropad" #: ext.c:204 #, fuzzy, c-format msgid "function `%s': missing argument #%d" msgstr "funktionen \"%s\" är inte definierad" #: ext.c:214 #, fuzzy, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "försök att använda skalären \"%s\" som vektor" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" #: ext.c:243 msgid "Operation Not Supported" msgstr "Operationen stöds inte" #: field.c:326 msgid "NF set to negative value" msgstr "NF satt till ett negativt värde" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: andra argumentet är inte en vektor" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: tom sträng som tredje argument är en gawk-utökning" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "\"FIELDWIDTHS\" är en gawk-utökning" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "tom sträng som \"FS\" är en gawk-utökning" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: flaggan \"%s\" är tvetydig\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: flaggan \"--%s\" tillåter inte argument\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: flaggan \"%c%s\" tillåter inte argument\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: flaggan \"%s\" kräver ett argument\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: okänd flagga \"--%s\"\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: okänd flagga \"%c%s\"\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: otillåten flagga -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ogiltig flagga -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: flaggan kräver ett argument -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: flaggan \"-W %s\" är tvetydig\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: flaggan \"-W %s\" tillåter inte något argument\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "kan inte öppna filen \"%s\" för läsning (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "stängning av fd %d (\"%s\") misslyckades (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "ogiltig trädtyp %s i redirect()" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "uttrycket i \"%s\"-omdirigering har bara numeriskt värde" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "uttrycket för \"%s\"-omdirigering har en tom sträng som värde" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "filnamnet \"%s\" för \"%s\"-omdirigering kan vara resultatet av ett logiskt " "uttryck" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "onödig blandning av \">\" och \">>\" för filen \"%.*s\"" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "kan inte öppna röret \"%s\" för utmatning (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "kan inte öppna röret \"%s\" för inmatning (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "kan inte öppna tvåvägsuttaget \"%s\" för in-/utmatning (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "kan inte öppna tvåvägsröret \"%s\" för in-/utmatning (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "kan inte dirigera om från \"%s\" (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "kan inte dirigera om till \"%s\" (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "nådde systembegränsningen för öppna filer: börjar multiplexa fildeskriptorer" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "stängning av \"%s\" misslyckades (%s)" #: io.c:811 msgid "too many pipes or input files open" msgstr "för många rör eller indatafiler öppna" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: andra argumentet måste vara \"to\" eller \"from\"" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: \"%.*s\" är inte en öppen fil, rör eller koprocess" #: io.c:852 msgid "close of redirection that was never opened" msgstr "stängning av omdirigering som aldrig öppnades" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: omdirigeringen \"%s\" öppnades inte med \"|&\", andra argumentet " "ignorerat" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "felstatus (%d) från rörstängning av \"%s\" (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "felstatus (%d) från filstängning av \"%s\" (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "ingen explicit stängning av uttaget \"%s\" tillhandahållen" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "ingen explicit stängning av koprocessen \"%s\" tillhandahållen" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "ingen explicit stängning av röret \"%s\" tillhandahållen" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "ingen explicit stängning av filen \"%s\" tillhandahållen" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "fel vid skrivning till standard ut (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "fel vid skrivning till standard fel (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "rörspolning av \"%s\" misslyckades (%s)" #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "koprocesspolning av röret till \"%s\" misslyckades (%s)" #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "filspolning av \"%s\" misslyckades (%s)" #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "/inet/raw-klient är tyvärr inte klar än" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "bara root kan använda \"/inet/raw\"." #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "/inet/raw-server inte redo än, ledsen" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" "inget (känt) protokoll tillhandahållet i det speciella filnamnet \"%s\"" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "speciellt filnamn \"%s\" är ofullständigt" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "lokal port ogiltig i \"%s\"" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "måste tillhandahålla ett fjärrdatornamn till \"/inet\"" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "måste tillhandahålla en fjärrport till \"/inet\"" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "fjärrporten ogiltig i \"%s\"" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "TCP/IP-kommunikation stöds inte" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "filen \"%s\" är en katalog" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "använd \"PROCINFO[\"%s\"]\" istället för \"%s\"" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "använd \"PROCINFO[...]\" istället för \"dev/user\"" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "kunde inte öppna \"%s\", läge \"%s\"" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "stängning av huvudpty misslyckades (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "stängning av standard ut i barnet misslyckades (%s)" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "flyttandet av slavpty till standard ut i barnet misslyckades (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "stängning av standard in i barnet misslyckades (%s)" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "flyttandet av slavpty till standard in i barnet misslyckades (dup: %s)" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "stängning av slavpty misslyckades (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "flyttande av rör till standard ut i barnet misslyckades (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "flyttande av rör till standard in i barnet misslyckades (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "återställande av standard ut i förälderprocessen misslyckades\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "återställande av standard in i förälderprocessen misslyckades\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "stängning av röret misslyckades (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "\"|&\" stöds inte" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "kan inte öppna röret \"%s\" (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "kan inte skapa barnprocess för \"%s\" (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "datafilen \"%s\" är tom" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "kunde inte allokera mer indataminne" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "fel vid läsning av indatafilen \"%s\": %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "flerteckensvärdet av \"RS\" är en gawk-utökning" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "\"-m[fr]\"-flaggan är irrelevant i gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m-flaggans användning: \"-m[fr] nnn\"" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: flaggan \"-W %s\" okänd, ignorerad\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "tomt argument till \"--source\" ignorerat" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "miljövariabeln \"POSIXLY_CORRECT\" satt: slår på \"--posix\"" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "\"--posix\" åsidosätter \"--traditional\"" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "\"--posix\"/\"--traditional\" åsidosätter \"--non-decimal-data\"" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "att köra %s setuid root kan vara ett säkerhetsproblem" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "kan inte sätta binärläge på standard in (%s)" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "kan inte sätta binärläge på standard ut (%s)" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "kan inte sätta binärläge på standard fel (%s)" #: main.c:572 msgid "no program text at all!" msgstr "ingen programtext alls!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Användning: %s [POSIX- eller GNU-stilsflaggor] -f progfil [--] fil ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Användning: %s [POSIX- eller GNU-stilsflaggor] %cprogram%c fil ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "POSIX-flaggor:\t\tGNU långa flaggor:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f progfil\t\t--file=progfil\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=värde\t\t--assign=var=värde\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] värde\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "\t-W compat\t\t--compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "\t-W copyleft\t\t--copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "\t-W copyright\t\t--copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "\t-W dump-variables[=fil]\t--dump-variables[=fil]\n" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W profile[=fil]\t--profile[=fil]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "\t-W gen-po\t\t--gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "\t-W help\t\t\t--help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "\t-W lint-old\t\t--lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "\t-W non-decimal-data\t--non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "\t-W parsedebug\t\t--parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "\t-W profile[=fil]\t--profile[=fil]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "\t-W re-interval\t\t--re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "\t-W source=programtext\t--source=programtext\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "\t-W traditional\t\t--traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "\t-W usage\t\t--usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "\t-W version\t\t--version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "För att rapportera buggar, se noden \"Bugs\" i \"gawk.info\",\n" "vilket är sektionen \"Reporting Problems and Bugs\" i den utskrivna\n" "versionen.\n" "Rapportera synpunkter på översättningen till .\n" "\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk är ett mönsterskannande och -bearbetande språk.\n" "Normalt läser det från standard in och skriver till standard ut.\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "Exempel:\n" "\tgawk '{ sum += $1 }; END { print sum }' fil\n" "\tgawk -F: '{print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Copyright © 1989, 1991-%d Free Software Foundation.\n" "\n" "Detta program är fri programvara. Du kan distribuera det och/eller\n" "modifiera det under villkoren i GNU General Public License, publicerad\n" "av Free Software Foundation, antingen version 2 eller (om du så vill)\n" "någon senare version.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Detta program distribueras i hopp om att det ska vara användbart,\n" "men UTAN NÅGON SOM HELST GARANTI, även utan underförstådd garanti\n" "om SÄLJBARHET eller LÄMPLIGHET FÖR NÅGOT SPECIELLT ÄNDAMÅL. Se GNU\n" "General Public License för ytterligare information.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Du bör ha fått en kopia av GNU General Public License tillsammans\n" "med detta program. Om inte, skriv till Free Software Foundation,\n" "Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft sätter inte FS till tab i POSIX-awk" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "%s: Argumentet \"%s\" till \"-v\" är inte på formatet \"var=värde\"\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "\"%s\" är inte ett giltigt variabelnamn" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "\"%s\" är inte ett variabelnamn, letar efter filen \"%s=%s\"" #: main.c:1074 msgid "floating point exception" msgstr "flyttalsundantag" #: main.c:1081 msgid "fatal error: internal error" msgstr "ödesdigert fel: internt fel" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "ingen föröppnad fd %d" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "kunde inte föröppna /dev/null för fd %d" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "kunde inte hitta grupper: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "kommandorad:" #: msg.c:120 msgid "warning: " msgstr "varning: " #: msg.c:142 msgid "error: " msgstr "fel: " #: msg.c:178 msgid "fatal: " msgstr "ödesdigert: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "kan inte konvertera en sträng till flyttal" #: node.c:414 msgid "backslash at end of string" msgstr "omvänt snedstreck i slutet av strängen" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX tillåter inte \"\\x\"-kontrollsekvenser" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "inga hexadecimala siffror i \"\\x\"-kontrollsekvenser" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "kontrollsekvensen \"\\%c\" behandlad som bara \"%c\"" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s \"%s\": kunde inte sätta stäng-vid-exec (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "kunde inte öppna \"%s\" för skrivning: %s" #: profile.c:467 #, fuzzy, c-format msgid "internal error: %s with null vname" msgstr "internt fel: Node_var med null vname" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# behandlad internt som \"delete\"" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawkprofil, skapad %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# BEGIN-block\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Regel/regler\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# END-block\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Funktioner, listade alfabetiskt\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "oväntad typ %s i prec_level" #: regcomp.c:160 msgid "Success" msgstr "Lyckades" #: regcomp.c:163 msgid "No match" msgstr "Misslyckades" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Ogiltigt reguljärt uttryck" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Ogiltigt kollationeringstecken" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Ogiltigt teckenklassnamn" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Eftersläpande omvänt snedstreck" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Ogiltig bakåtrerefens" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "Obalanserad [ eller [^" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "Obalanserad ( eller \\(" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "Obalanserad \\{" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Ogiltigt innehåll i \\{\\}" #: regcomp.c:193 msgid "Invalid range end" msgstr "Ogiltigt omfångsslut" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Minnet slut" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Ogiltigt föregående reguljärt uttryck" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "För tidigt slut på reguljärt uttryck" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Reguljärt uttryck för stort" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr "Obalanserad ) eller \\)" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Inget föregående reguljärt uttryck" #~ msgid "function %s called\n" #~ msgstr "funktionen %s anropad\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "fält %d i FIELDWIDTHS måste vara > 0" #~ msgid "or used as a variable or an array" #~ msgstr "eller använd som variabel eller vektor" #~ msgid "regex match failed, not enough memory to match string \"%.*s%s\"" #~ msgstr "" #~ "regexmatchning misslyckades, inte tillräckligt mycket minne för att " #~ "matcha \"%.*s%s\"" #~ msgid "substr: length %g is < 0" #~ msgstr "substr: längden %g är < 0" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: otillåten användning av variabeln \"%s\" som vektor" #, fuzzy #~ msgid "%s: gvar_ref to %s\n" #~ msgstr "%s: vektorreferens till %s\n" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: första argumentet är inte en vektor" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: andra argumentet är inte en vektor" #, fuzzy #~ msgid "" #~ "attempt to use array parameter `%s' that was passed from global scalar `%" #~ "s'" #~ msgstr "försök att använda skalärparametern \"%s\" som en vektor" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "internt fel: Node_var_vektor med null vname" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "För att rapportera fel, se noden \"Bugs\" i \"gawk.info\" som är\n" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "ogiltig syntax i namnet \"%s\" för variabeltilldelning" #~ msgid "or used in other expression context" #~ msgstr "eller använt i andra uttryckssammanhang" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "\"%s\" är en funktion, tilldelning är inte tillåtet" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "BEGIN-block måste ha en åtgärdsdel" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "\"nextfile\" använd i BEGIN- eller END-åtgärd" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "icke omdirigerad \"getline\" odefinierade inuti BEGIN- eller END-åtgärd" #~ msgid "fptr %x not in tokentab\n" #~ msgstr "fptr %x är inte i tokentab\n" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "gsub: tredje argumentet är inte ett ändringsbart objekt" #~ msgid "Unfinished \\ escape" #~ msgstr "Oavslutad \\-kontrollsekvens" #~ msgid "unfinished repeat count" #~ msgstr "oavslutat upprepningsantal" #~ msgid "malformed repeat count" #~ msgstr "felaktigt utformat upprepningsantal" #~ msgid "Unbalanced [" #~ msgstr "Obalanserad [" #~ msgid "Unbalanced (" #~ msgstr "Obalanserad (" #~ msgid "No regexp syntax bits specified" #~ msgstr "Inga syntaxbitar för reguljära uttryck angivna" #~ msgid "Unbalanced )" #~ msgstr "Obalanserad )" #~ msgid "out of memory" #~ msgstr "slut på minne" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "internt fel: filen \"%s\", rad %d\n" EOF echo - 'tr.po' cat << 'EOF' > 'tr.po' # Turkish translations for GNU awk messages # Copyright (C) 2004 Free Software Foundation, Inc. # Nilgün Belma Bugüner , 2001, ..., 2004. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.3l\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2004-07-19 10:15+0300\n" "Last-Translator: Nilgün Belma Bugüner \n" "Language-Team: Turkish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0\n" #: array.c:112 #, c-format msgid "attempt to use function `%s' as an array" msgstr "`%s' iÅŸlevi dizi olarak kullanılmaya çalışılıyor" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "sayısal paramaetre `%s' bir dizi olarak kullanılmaya çalışılıyor" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "sayısal `%s' dizi olarak kullanılmaya çalışılıyor" #: array.c:156 #, c-format msgid "from %s" msgstr "%s'den" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "ilklendirilmemiÅŸ öğeye ( %s[\"%s\"] ) baÅŸvuru yapılıyor" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "dizinin indisi `%s' bir null dizge" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: `%s' indeksi `%s' dizisinde deÄŸil" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: boÅŸ (null)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: boÅŸ (sıfır)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: tablo_uzunluÄŸu = %d, dizi_indisi = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: parametredir\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: %s için dizi baÅŸvurusu\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "%s blokları bir eylem bölümü içermeli" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "her kural bir eylem bölümü veya bir kalıp içermeli" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s' bir yerleÅŸik iÅŸlevdir, yeniden atanamaz" #: awkgram.y:313 #, fuzzy msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "düzenli ifade sabiti `/%s/' bir C açıklaması gibi görünüyor ama deÄŸil" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "düzenli ifade sabiti `/%s/' bir C açıklaması gibi görünüyor ama deÄŸil" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "deyim bir etkiye sahip olmayabilir" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "`%s' %s eyleminde kullanılmış" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' bir gawk uzantısıdır" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "`return' iÅŸlev baÄŸlamının dışında kullanılmış" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "BEGIN veya END kuralındaki `print' aslında `print \"\"' olmalıydı" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "`delete array' bir gawk uzantısıdır" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete array' uyarlanabilir olmayan bir gawk uzantısıdır" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "switch içinde yinelenmiÅŸ case deÄŸerleri var: %s" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "switch içinde yinelenmiÅŸ `default' saptandı" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "çok katlı iki yönlü veriyolları çalışmaz" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "düzenli ifade atamanın sağında" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "düzenli ifade `~' ya da `!~' iÅŸlemiminin solunda" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "düzenli ifade karşılaÅŸtırmanın sağında" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "END eyleminin içinde yönlendirme yapmayan `getline' tanımsız" #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "parantezsiz `length' çaÄŸrısı taşınabilir deÄŸil" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "parantezsiz `length' çaÄŸrısı POSIX'e uygun deÄŸil" #: awkgram.y:962 msgid "use of non-array as array" msgstr "dizi olmayan deÄŸiÅŸken dizi olarak kullanılmış" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "indis ifadesi geçersiz" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "beklenmeyen satırsonu ya da dizge sonu" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "komut satırında boÅŸ program metni" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "kaynak dosyası `%s' okumak için açılamıyor (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "kaynak dosyası `%s' okunamıyor (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "kaynak dosyası `%s' boÅŸ" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "kaynak dosyasının sonunda satırsonu eksik" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "sonlandırılmamış düzenli ifade dosya sonunda `\\' ile bitiyor" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "sonlandırılmamış düzenli ifade" #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "dosya sonunda sonlandırılmamış düzenli ifade" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "`\\ #...' satır uzatma kullanımı taşınabilir deÄŸil" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "tersbölü satırdaki son karakter deÄŸil" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "`**=' iÅŸlemimi POSIX uyumlu deÄŸil" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "`**=' iÅŸlemimini eski awk desteklemiyor" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "`**' iÅŸlemimi POSIX uyumlu deÄŸil" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "`**' iÅŸlemimini eski awk desteklemiyor" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "`^=' iÅŸlemimini eski awk desteklemiyor" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "`^' iÅŸlemimini eski awk desteklemiyor" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "sonlandırılmamış dizge" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "ifade içinde '%c' karakteri geçersiz" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' bir gawk uzantısıdır" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' bir Bell Laboratuarları uzantısıdır" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "`%s' POSIX uyumlu deÄŸil" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' eski awk tarafından desteklemiyor" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "`goto' zararlı sayılır!\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d argüman sayısı olarak %s için geçersiz" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: üçüncü argüman bir gawk uzantısı" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: yerine kullanılan son argüman olarak dizge sabiti etkisiz" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "üçüncü %s parametresi deÄŸiÅŸtirilebilir bir nesne deÄŸil" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: ikinci argüman bir gawk uzantısı" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "dcgettext(_\"...\") kullanımı yanlış: altçizgiyi kaldırın" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "dcngettext(_\"...\") kullanımı yanlış: altçizgiyi kaldırın" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "`%s' iÅŸlevi: %d. parametre, `%s', %d. parametrenin tekrarı" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "`%s' iÅŸlevi: parametre, `%s'global deÄŸiÅŸkeni gölgeliyor" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "`%s' yazmak için açılamadı (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "profil standart hataya gönderiliyor" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: kapatma baÅŸarısız (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() iki kere çaÄŸrıldı!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "gölgeli deÄŸiÅŸkenler vardı." #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "iÅŸlev `%s': iÅŸlev ismi parametre ismi olarak kullanılamaz" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "iÅŸlev ismi `%s' önceden atanmış" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "`%s' iÅŸlevi çaÄŸrıldı ama hiç atanmamış" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "`%s' iÅŸlevi atanmış ama hiç çaÄŸrılmadı" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "%d numaralı argüman bir düzenli ifade sabiti" #: awkgram.y:3105 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "`%s' iÅŸlevi `(' ile isim arasında boÅŸlukla çaÄŸrılmış,\n" "ya da bir deÄŸiÅŸken veya bir dizi olarak kullanılmış" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s \"%s\"ya yazılamadı (%s)" #: builtin.c:146 msgid "standard output" msgstr "standart çıktı" #: builtin.c:147 msgid "reason unknown" msgstr "sebebi bilinmiyor" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: sayısal olmayan argüman alındı" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: %g kapsamdışı" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: kanala yazılamadı: veriyolu `%s' okumak için açıldı, yazmak için " "deÄŸil" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: kanala yazılamadı: dosya `%s' okumak için açıldı, yazmak için deÄŸil" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' bir açık dosya, veriyolu ya da bir yan iÅŸlem deÄŸil" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: ilk argüman dizge olmayan türde alındı" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: ikinci argüman dizge olmayan türde alındı" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: sayısal olmayan argüman alındı" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "`delete array' bir gawk uzantısıdır" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: dizge olmayan argüman alındı" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: sayısal olmayan argüman alındı" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: negatif argüman %g alındı" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "tüm biçemlerde ya `count$' kullanmalısınız ya da hiçbir ÅŸey" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "`$' awk biçemlerde kullanılmaz" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "`$' ile birlikte verilen argüman sayısı > 0 olmalıdır" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "argüman sayısı %ld saÄŸlanmış toplam argüman sayısından büyük" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "`$' biçem içinde noktadan sonra kullanılmaz" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "konumsal alan geniÅŸliÄŸi ya da duyarlığı için `$' kullanılmamış" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "`l' awk biçemlerde anlamsız; yoksayıldı" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "`l' POSIX awk biçemlerde kullanılmaz" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "`L' awk biçemlerde anlamsız; yoksayıldı" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "`L' POSIX awk biçemlerde kullanılmaz" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "`h' awk biçemlerde anlamsız; yoksayıldı" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "`h' POSIX awk biçemlerde kullanılmaz" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: %g deÄŸeri `%%%c' biçimi için kapsamdışı" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "biçem dizgesini oluÅŸturacak yeterli argüman yok" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "bir bunun için ^ tükendi" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: biçem belirteci denetim karakteri içermiyor" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "biçem dizgesi için çok fazla argüman saÄŸlanmış" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: argüman yok" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: sayısal olmayan argüman alındı" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: negatif argüman %g ile çaÄŸrıldı" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: baÅŸlangıç indeksi olarak %g geçersiz, 1 kullanılıyor" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "" "substr: tamsayı olmayan baÅŸlangıç indeksi %g den ondalık kısım çıkarılacak" #: builtin.c:1353 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: uzunluk %g >= 1 deÄŸil" #: builtin.c:1355 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: uzunluk %g => 0 deÄŸil" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: tamsayı olmayan uzunluk %g den ondalık kısım çıkarılacak" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" "substr: dizge indislemesi için uzunluk olarak %g çok fazla, %g den sonrası " "gözardı ediliyor" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: kaynak dizge sıfır uzunlukta" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: baÅŸlangıç indisi %g dizgenin sonundan sonra" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: uzunluk %g, %g baÅŸlangıç indisinde ilk argümanın uzunluÄŸunu (%lu) " "aÅŸar" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftime: ilk argüman dizge olmayan türde alındı" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: boÅŸ biçem dizgesi alındı" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: ikinci argüman sayısal olmayan türde alındı" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: dizge olmayan argüman alındı" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: dizge olmayan argüman alındı" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "ilklendirilmemiÅŸ `$%d' alanına baÅŸvuru" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: dizge olmayan argüman alındı" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: dizge olmayan argüman alındı" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: ilk argüman sayısal olmayan türde alındı" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: ikinci argüman sayısal olmayan türde alındı" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: sayısal olmayan argüman alındı" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: sayısal olmayan argüman alındı" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: sayısal olmayan argüman alındı" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: üçüncü argüman bir dizi deÄŸil" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: 0 olan 3. argüman 1 kabul edildi" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: ilk argüman sayısal olmayan türde alındı" #: builtin.c:2717 msgid "lshift: received non-numeric second argument" msgstr "lshift: ikinci argüman sayısal deÄŸil" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): negatif deÄŸerler tuhaf sonuçlar verecek" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): tamsayı kısım kalacak ÅŸekilde kalanı atılacak" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): çok büyük kaydırma deÄŸeri tuhaf sonuçlar verecek" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: ilk argüman sayısal olmayan türde alındı" #: builtin.c:2755 msgid "rshift: received non-numeric second argument" msgstr "rshift: ikinci argüman sayısal deÄŸil" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): negatif deÄŸerler tuhaf sonuçlar verecek" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): tamsayı kısım kalacak ÅŸekilde kalanı atılacak" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): çok büyük kaydırma deÄŸeri tuhaf sonuçlar verecek" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: ilk argüman sayısal olmayan türde alındı" #: builtin.c:2793 msgid "and: received non-numeric second argument" msgstr "and: ikinci argüman sayısal deÄŸil" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): negatif deÄŸerler tuhaf sonuçlar verecek" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): tamsayı kısım kalacak ÅŸekilde kalanı atılacak" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: ilk argüman sayısal olmayan türde alındı" #: builtin.c:2829 msgid "or: received non-numeric second argument" msgstr "or: ikinci argüman sayısal deÄŸil" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): negatif deÄŸerler tuhaf sonuçlar verecek" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): tamsayı kısım kalacak ÅŸekilde kalanı atılacak" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: ilk argüman sayısal olmayan türde alındı" #: builtin.c:2865 msgid "xor: received non-numeric second argument" msgstr "xor: ikinci argüman sayısal deÄŸil" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): negatif deÄŸerler tuhaf sonuçlar verecek" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): tamsayı kısım kalacak ÅŸekilde kalanı atılacak" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: sayısal olmayan argüman alındı" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): negatif deÄŸerler tuhaf sonuçlar verecek" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): tamsayı kısım kalacak ÅŸekilde kalanı atılacak" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' geçerli bir yerel kategori deÄŸil" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "%d. düğümtürü bilinmiyor" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "genflags2str içinde tampon taÅŸtı" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "`%s' dizisi bir sayısal baÄŸlamda kullanılmaya çalışılıyor" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "for loop: `%s' dizisinin boyu döngünün yorumlanması sırasında %ld iken %ld " "oldu" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "döngü dışında `break' kullanımı taşınabilir deÄŸil" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "döngü dışında `break' kullanımı yasak" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "döngü dışında `continue' kullanımı taşınabilir deÄŸil" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "döngü dışında `continue' kullanımı yasak" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "`next' bir BEGIN kuralından çaÄŸrılamaz" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "`next' bir END kuralından çaÄŸrılamaz" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "`nextfile' bir BEGIN kuralından çaÄŸrılamaz" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "`nextfile' bir END kuralından çaÄŸrılamaz" #: eval.c:875 msgid "statement has no effect" msgstr "deyim etkisiz" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "`%s' iÅŸlev ismi bir deÄŸiÅŸken ya da dizi olarak kullanılamaz" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "baÅŸlangıç deÄŸeri olmayan `%s' argümanına baÅŸvuru" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "öndeÄŸer ataması yapılmamış `%s' deÄŸiÅŸkenine baÅŸvuru" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "bitiÅŸtirme: bir ifadenin yan etkileri diÄŸerinin uzunluÄŸunu deÄŸiÅŸtirmiÅŸ!" #: eval.c:1200 msgid "assignment used in conditional context" msgstr "koÅŸul baÄŸlamında atama yapılmış" #: eval.c:1278 msgid "division by zero attempted" msgstr "sıfırla bölme hatası" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "`%%'de sıfırla bölme hatası" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "tree_eval içinde kuraldışı tür (%s)" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "`/='de sıfırla bölme hatası" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "`%%='de sıfırla bölme hatası" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "`%s' iÅŸlevi bildirilenden daha fazla argümanla çaÄŸrıldı" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "`%s' iÅŸlevi tanımsız" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Ä°ÅŸlev ÇaÄŸrı Yığını:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "\t# -- main --\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "sayısal olmayan deÄŸerden alan baÅŸvurusu" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "null dizgeden alan baÅŸvurusu" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "%d. alana eriÅŸilmeye çalışılıyor" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "deÄŸiÅŸken ismine yerleÅŸik iÅŸlevin sonucu atanamaz" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' bir gawk uzantısıdır" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' bir gawk uzantısıdır" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "`%sFMT' özelliÄŸi `%s' hatalı" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "`LINT' atamasından dolayı `--lint' kapatılıyor" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "`extension' bir gawk uzantısıdır" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: `%s' açılamıyor (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "extension: kitaplık `%s': `%s' iÅŸlevi çaÄŸrılamıyor (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "extension: iÅŸlev ismi eksik" #: ext.c:107 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: `%2$s' iÅŸlevindeki `%1$c' karakteri kuraldışı" #: ext.c:113 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: `%s' iÅŸlevi yeniden tanımlanamaz" #: ext.c:117 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: `%s' iÅŸlevi zaten tanımlı" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "extension: bir gawk yerleÅŸiÄŸi olan `%s' iÅŸlev ismi olamaz" #: ext.c:124 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: iÅŸlev ismi `%s' evvelce tanımlanmış" #: ext.c:201 #, fuzzy, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "`%s' iÅŸlevi en çok `%d' argüman alabilecek ÅŸekilde tanımlı" #: ext.c:204 #, c-format msgid "function `%s': missing argument #%d" msgstr "`%s' iÅŸlevi: %d. argüman eksik" #: ext.c:214 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "" "`%s' iÅŸlevi: %d. argüman: tek deÄŸerli deÄŸiÅŸken bir dizi olarak kullanılmaya " "çalışılıyor" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" "`%s' iÅŸlevi: %d. argüman: dizi tek deÄŸerli bir deÄŸiÅŸken olarak kullanılmaya " "çalışılıyor" #: ext.c:243 msgid "Operation Not Supported" msgstr "Ä°ÅŸlem Desteklenmiyor" #: field.c:326 msgid "NF set to negative value" msgstr "NF negatif deÄŸere ayarlı" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: ikinci argüman bir dizi deÄŸil" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "split: üçüncü argüman olan null dizge bir gawk uzantısı" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' bir gawk uzantısıdır" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "`FS' için null dizge bir gawk uzantısıdır" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: `%s' seçeneÄŸi belirsiz\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: `--%s' seçeneÄŸi argümansız kullanılır\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: seçenek `%c%s' argümansız kullanılır\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: `%s' seçeneÄŸi bir argümanla kullanılır\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: `--%s' seçeneÄŸi bilinmiyor\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: `%c%s' seçeneÄŸi bilinmiyor\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: kuraldışı seçenek -- %c\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: geçersiz seçenek -- %c\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: seçenek bir argümanla kullanılır -- %c\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: `-W %s' seçeneÄŸi belirsiz\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: `-W %s' seçeneÄŸi argümansız kullanılır\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "`%s' okumak için açılamıyor (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "dosya tanımlayıcı %d (`%s') baÅŸarısız (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "redirect() içindeki aÄŸaç türü %s geçersiz" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "`%s' yönlendirmesi içindeki ifade sadece sayısal deÄŸer içeriyor" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "`%s' yönlendirmesi içindeki ifade null dizge deÄŸeri içeriyor" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "`%s' dosya ismi (`%s' yönlendirmesi için) mantıksal ifadenin sonucu olabilir" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "`%.*s' dosyası için `>' ve `>>' karışımı gereksiz" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "`%s' veriyolu çıktı için açılamadı (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "`%s' veriyolu girdi için açılamadı (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "iki yönlü `%s' soketi G/Ç için açılamıyor (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "iki yönlü `%s' veriyolu G/Ç için açılamıyor (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "`%s'den yönlendirilemiyor (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "`%s'e yönlendirilemiyor (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "açık dosyalar için sistem sınırı aşıldı: çoÄŸul dosya tanımlayıcılara " "baÅŸlarken" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "`%s' kapatılamadı (%s)." #: io.c:811 msgid "too many pipes or input files open" msgstr "çok fazla veriyolu ya da dosya açık" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: ikinci argüman `to' ya da `from' olmalı" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: `%.*s' bir açık dosya, veriyolu ya da alt-iÅŸlem deÄŸil" #: io.c:852 msgid "close of redirection that was never opened" msgstr "hiç açılmamış bir yönlendirmenin kapatılması" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: `%s' yönlendirmesi bir `|&' ile açılmamış, ikinci argüman yoksayıldı" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "baÅŸarısızlık durumu (%d): `%s' veriyolunun kapatılması (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "baÅŸarısızlık durumu (%d): `%s' dosyasının kapatılması (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "`%s' soketinin açıkça kapatılması istenmedi" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "`%s' alt-iÅŸleminin açıkça kapatılması istenmedi" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "`%s' veriyolunun açıkça kapatılması istenmedi" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "`%s' dosyasının açıkça kapatılması istenmedi" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "standart çıktıya yazarken hata (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "standart hataya yazarken hata (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "`%s'in veriyolu ile veri aktarımı baÅŸarısız (%s)." #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "`%s'e veriyolunun alt-iÅŸlemi ile veri aktarımı baÅŸarısız (%s)." #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "`%s'in dosya ile veri aktarımı baÅŸarısız (%s)." #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "/inet/raw istemci henüz hazır deÄŸil" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "`/inet/raw' sadece root tarafından kullanılabilir" #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "/inet/raw sunucu henüz hazır deÄŸil" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "özel dosya ismi `%s' içinde (bilinen) bir protokol saÄŸlanmamış" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "özel dosya ismi `%s' tamamlanmamış" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "`%s' deki yerel port geçersiz" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "`/inet' e bir karşı makina ismi saÄŸlanmalı" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "`/inet' e bir karşı port saÄŸlanmalı" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "`%s' de karşı port geçersiz" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "TCP/IP haberleÅŸmesi desteklenmiyor" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "`%s' dosya deÄŸil dizin" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "`PROCINFO[\"%s\"]' kullanın (`%s' yerine)" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "`/dev/user' yerine `PROCINFO[...]' kullanın" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "`%s', `%s' kipinde açılamadı" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "ana pty kapatılamadı (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "ast süreçte stdÇ kapatılamadı (%s)" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "ast süreçte yardımcı pty standart çıktıya taşınamadı (dup: %s)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "ast süreçte stdG kapatılamadı (%s)" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "ast süreçte yardımcı pty standart girdiye taşınamadı (dup: %s)" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "yardımcı pty kapatılamadı (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "ast süreçte veriyolu standart çıktıya taşınamadı (dup: %s)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "ast süreçte veriyolu standart girdiye taşınamadı (dup: %s)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "üst süreçte stdÇ eski durumuna getirilemedi\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "üst süreçte stdG eski durumuna getirilemedi\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "veriyolu kapatılamadı (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "`|&' desteklenmiyor" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "`%s' veriyolu açılamıyor (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "`%s' için ast süreç oluÅŸturulamıyor (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "veri dosyası `%s' boÅŸ" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "daha fazla girdi belleÄŸi ayrılamadı" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "`%s' girdi dosyası okunurken hata: %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "`RS' çoklu karakter deÄŸeri bir gawk uzantısıdır" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "`-m[fr]' seçeneÄŸi gawk'da böyle kullanılmaz" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m seçeneÄŸinin kullanımı: `-m[fr] nnn'" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: `-W %s' seçeneÄŸi tanımlı deÄŸil, yok sayıldı\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "`--source' seçeneÄŸi için boÅŸ argüman yoksayıldı" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "ortam deÄŸiÅŸkeni `POSIXLY_CORRECT' var: `--posix' kullanılıyor" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "`--posix' seçeneÄŸi `--traditional' seçeneÄŸini etkisiz kılar" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "" "`--posix'/`--traditional' seçenekleri `--non-decimal-data' seçeneÄŸini " "etkisiz kılar" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "%s root yetkileriyle çalıştırıldığında güvenlik sorunları olabilir" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "standart girdi ikilik kipe ayarlanamaz (%s)" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "standart çıktı ikilik kipe ayarlanamaz (%s)" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "standart hata ikilik kipe ayarlanamaz (%s)" #: main.c:572 msgid "no program text at all!" msgstr "program metni hiç yok!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Kullanımı: %s [POSIX veya GNU tarzı seçenekler] -f progdosyası [--] " "dosya ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Kullanımı: %s [POSIX veya GNU tarzı seçenekler] %cprogram%c dosya ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "POSIX seçenekleri: GNU uzun seçenekleri:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr " -f progDosyası --file=progDosyası\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr " -F ayraç --field-separator=ayraç\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr " -v var=deÄŸer --assign=var=deÄŸer\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr " -m[fr] deÄŸer\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr " -W compat --compat\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr " -W copyleft --copyleft\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr " -W copyright --copyright\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr " -W dump-variables[=dosya] --dump-variables[=dosya]\n" #: main.c:681 #, fuzzy msgid "\t-W exec=file\t\t--exec=file\n" msgstr " -W profile[=dosya] --profile[=dosya]\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr " -W gen-po --gen-po\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr " -W help --help\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr " -W lint[=ölümcül] --lint[=ölümcül]\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr " -W lint-old --lint-old\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr " -W non-decimal-data --non-decimal-data\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr " -W nostalgia --nostalgia\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr " -W parsedebug --parsedebug\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr " -W profile[=dosya] --profile[=dosya]\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr " -W posix --posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr " -W re-interval --re-interval\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr " -W source=program-metni --source=program-metni\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr " -W traditional --traditional\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr " -W usage --usage\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr " -W version --version\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "Hataları raporlarken, `gawk.info' içindeki `Reporting Problems and Bugs'\n" "kısmının `Bugs' baÅŸlıklı bölümünden gerekli bilgileri alabilirsiniz.\n" "\n" "Çeviri hatalarını adresine bildiriniz.\n" "\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk bir dizge kalıplarını tarama ve iÅŸleme dilidir.\n" "Öntanımlı olarak standart girdiyi okur ve standart çıktıya yazar.\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "Örnekler:\n" "\tgawk '{ sum += $1 }; END { print sum }' dosya\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Telif hakkı (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "Bu program bir serbest yazılımdır. Bu yazılımı Free Software Foundation\n" "tarafından yayınlanmış olan GNU Genel Kamu Lisansının 2. ya da daha sonraki\n" "bir sürümünün koÅŸulları altında kopyalayabilir, dağıtabilir ve/veya\n" "üzerinde deÄŸiÅŸiklik yapabilirsiniz.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Bu program kullanışlı olabileceÄŸi umularak dağıtılmaktadır. Ancak,\n" "hiçbir GARANTÄ°SÄ° YOKTUR; hatta SATILABÄ°LÄ°RLİĞİ veya HERHANGÄ° BÄ°R\n" "AMACA UYGUNLUÄžU için bile garanti verilmez. Daha ayrıntılı bilgi\n" "edinmek için GNU Genel Kamu Lisansına bakınız.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "GNU Genel Kamu Lisansının bir kopyasını bu programla birlikte almış\n" "olacaksınız; yoksa Free Software Foundation, Inc., 51 Franklin Street\n" "Fifth Floor, Boston, MA 02110-1301, USA. adresinden isteyebilirsiniz.\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "POSIX awk -Ft ile dosya sistemini belirlemez" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" "%s: `-v' ile verilen `%s' argümanı `var=deÄŸer' biçiminde deÄŸil\n" "\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' kurala uygun bir deÄŸiÅŸken ismi deÄŸil" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%2$s=%3$s' için dosyaya bakınca, `%1$s' bir deÄŸiÅŸken ismi deÄŸil" #: main.c:1074 msgid "floating point exception" msgstr "Gerçel sayı istisnası" #: main.c:1081 msgid "fatal error: internal error" msgstr "ölümcül iç hata" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "ön açılışlı bir %d dosya tanımlayıcısı yok" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "%d dosya tanımlayıcısı için /dev/null ön açılışı yapılamadı" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "gruplar bulunamadı: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "komut satırı:" #: msg.c:120 msgid "warning: " msgstr "uyarı: " #: msg.c:142 msgid "error: " msgstr "hata: " #: msg.c:178 msgid "fatal: " msgstr "ölümcül: " #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "dizge gerçel sayıya dönüştürülemiyor" #: node.c:414 msgid "backslash at end of string" msgstr "dizge sonunda tersbölü" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX `\\x' öncelemelerine izin vermez" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "`\\x' önceleme dizgesinde onaltılık rakamlar yok" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "`\\%c' önceleme dizgesi `%c' olarak kullanıldı" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "%s %s `%s': close-on-exec belirlenemedi: (fcntl: %s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "`%s' yazmak için açılamadı: %s" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "iç hata: null vname'li %s" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# dahili olarak `delete' varsayıldı" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "# bu özdevimli olarak yüklenmiÅŸ bir ek iÅŸlevdir" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawk profili, oluÅŸturuldu: %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# BEGIN blokları\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Kurallar\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# END blokları\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Ä°ÅŸlevler, alfabetik sırayla\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "prec_level'da anlaşılamayan tür %s" #: regcomp.c:160 msgid "Success" msgstr "BaÅŸarılı" #: regcomp.c:163 msgid "No match" msgstr "EÅŸleÅŸmez" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Düzenli ifade geçersiz" #: regcomp.c:169 msgid "Invalid collation character" msgstr "KarşılaÅŸtırma karakteri geçersiz" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Karakter sınıf ismi geçersiz" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Ä°zleyen tersbölü" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Geriye baÅŸvuru geçersiz" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "[ ya da [^ eÅŸleÅŸmiyor" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "( ya da \\( eÅŸleÅŸmiyor" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "\\{ eÅŸleÅŸmiyor" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "\\{\\} içeriÄŸi geçersiz" #: regcomp.c:193 msgid "Invalid range end" msgstr "Kapsam sonu geçersiz" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Bellek tükendi" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "düzenli ifade önceliÄŸi geçersiz" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Düzenli ifade sonu eksik kalmış" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Düzenli ifade çok büyük" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr ") ya da \\) eÅŸleÅŸmiyor" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Daha önce düzenli ifade yok" #~ msgid "function %s called\n" #~ msgstr "%s iÅŸlevi çaÄŸrıldı\n" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "FIELDWIDTHS içindeki %d. alan > 0 olmalı" #~ msgid "or used as a variable or an array" #~ msgstr "ya da bir deÄŸiÅŸken ya da dizi olarak kullanılmış" #~ msgid "substr: length %g is < 0" #~ msgstr "substr: uzunluk %g < 0" #~ msgid "regex match failed, not enough memory to match string \"%.*s%s\"" #~ msgstr "" #~ "düzenli ifade eÅŸleÅŸmesi saÄŸlanamadı, \"%.*s%s\" dizgesini eÅŸleÅŸtirmek " #~ "için yeterli bellek yok" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: `%s' deÄŸiÅŸkeninin dizi olarak kullanımı kuraldışı" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: ilk argüman bir dizi deÄŸil" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: ikinci argüman bir dizi deÄŸil" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "iç hata: null vname'li node_var_array" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "deÄŸiÅŸken ismi `%s' de sözdizimi hatası" #~ msgid "or used in other expression context" #~ msgstr "ya da diÄŸer ifadenin içeriÄŸinde kullanılmış" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "`%s' bir iÅŸlevdir, bir deÄŸiÅŸken ismi olarak kullanılamaz" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "BEGIN blokları bir eylem bölümü içermeli" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "`nextfile' BEGIN ya da END eyleminde kullanılmış" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "BEGIN ya da END eyleminin içinde yönlendirme yapmayan `getline' tanımsız" #~ msgid "fptr %x not in tokentab\n" #~ msgstr "iÅŸlev imleyicisi %x iÅŸlev isim listesinde bulunamadı\n" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "üçüncü gsub parametresi deÄŸiÅŸtirilebilir bir nesne deÄŸil" #~ msgid "Unbalanced [" #~ msgstr "Dengesiz [" #~ msgid "Unfinished \\ escape" #~ msgstr "Tamamlanmamış \\ escape" #~ msgid "unfinished repeat count" #~ msgstr "Tamamlanmamış tekrar sayısı" #~ msgid "malformed repeat count" #~ msgstr "Tekrar sayısı hatalı" #~ msgid "Unbalanced (" #~ msgstr "Dengesiz (" #~ msgid "No regexp syntax bits specified" #~ msgstr "Düzenli ifade sözdizimi bitleri belirtilmemiÅŸ" #~ msgid "Unbalanced )" #~ msgstr "Karşılıksız )" #~ msgid "out of memory" #~ msgstr "bellek yetersiz" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "iç hata: dosya `%s', satır %d\n" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "Yazılım hatalarını bildirmek için `gawk.info' içindeki `Bugs' " #~ "bölümündeki\n" EOF echo - 'vi.po' cat << 'EOF' > 'vi.po' # Vietnamese translation for gawk. # Copyright © 2005 Free Software Foundation, Inc. # Clytie Siddall , 2005. # msgid "" msgstr "" "Project-Id-Version: gawk 3.1.4l\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" "POT-Creation-Date: 2005-07-06 17:20+0300\n" "PO-Revision-Date: 2005-06-28 14:46+0930\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0\n" #: array.c:112 #, c-format msgid "attempt to use function `%s' as an array" msgstr "cố dùng chức năng «%s» là má»™t mảng" #: array.c:115 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "cố dùng tham số vô hÆ°á»›ng «%s» là má»™t mảng" #: array.c:118 #, c-format msgid "attempt to use scalar `%s' as array" msgstr "cố dùng Ä‘iá»u cô hÆ°á»›ng «%s» là mảng" #: array.c:156 #, c-format msgid "from %s" msgstr "từ %s" #: array.c:511 #, c-format msgid "reference to uninitialized element `%s[\"%s\"]'" msgstr "tham chiếu đến phần tá»­ chÆ°a khởi Ä‘á»™ng «%s[\"%s\"]»" #: array.c:517 #, c-format msgid "subscript of array `%s' is null string" msgstr "chữ in dÆ°á»›i mảng «%s» là chuá»—i rá»—ng" #: array.c:621 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: (xóa bá») số chỉ mục «%s» không phải trong mảng «%s»" #: array.c:791 #, c-format msgid "%s: empty (null)\n" msgstr "%s: rá»—ng (vô giá trị)\n" #: array.c:796 #, c-format msgid "%s: empty (zero)\n" msgstr "%s: rá»—ng (số không)\n" #: array.c:800 #, c-format msgid "%s: table_size = %d, array_size = %d\n" msgstr "%s: cỡ_bảng = %d, cỡ_mảng = %d\n" #: array.c:829 #, c-format msgid "%s: is parameter\n" msgstr "%s: là tham số\n" #: array.c:834 #, c-format msgid "%s: array_ref to %s\n" msgstr "%s: «array_ref» (mảng tham chiếu) đến «%s»\n" #: awkgram.y:208 #, c-format msgid "%s blocks must have an action part" msgstr "Má»i khối «%s» phải có má»™t phần là hành Ä‘á»™ng" #: awkgram.y:211 msgid "each rule must have a pattern or an action part" msgstr "Má»i quy tắc phải có má»™t mẫu hoặc má»™t phần là hành Ä‘á»™ng" #: awkgram.y:267 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "«%s» là má»™t chức năng có sẵn nên không thể định nghÄ©a lái nó." #: awkgram.y:313 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "hằng biểu thức chính quy «//» hình nhÆ° má»™t chú thích C, nhÆ°ng mà không phải" #: awkgram.y:316 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "hằng biểu thức chính quy «/%s/» hình nhÆ° má»™t chú thích C, nhÆ°ng mà không phải" #: awkgram.y:343 awkgram.y:623 msgid "statement may have no effect" msgstr "có lẽ câu sẽ không có tác dụng" #: awkgram.y:440 awkgram.y:460 #, c-format msgid "`%s' used in %s action" msgstr "«%s» được dùng trong hành Ä‘á»™ng «%s»" #: awkgram.y:453 awkgram.y:456 msgid "`nextfile' is a gawk extension" msgstr "«nextfile» (tập tin kế tiếp) là má»™t phần mở rá»™ng gawk" #: awkgram.y:470 msgid "`return' used outside function context" msgstr "đã dùng «return» (trở vá») ở ngoại ngữ cảnh chức năng" #: awkgram.y:512 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "«print» (in) giản dị trong quy tắc «BEGIN» (bắt đầu) hay «END» (kết thức) " "thì rất có thể nên là «print\"\"»" #: awkgram.y:525 awkgram.y:532 msgid "`delete array' is a gawk extension" msgstr "«delete array» (xóa bá» mảng) là má»™t phần mở rá»™ng gawk" #: awkgram.y:540 awkgram.y:547 msgid "`delete(array)' is a non-portable tawk extension" msgstr "«delete array» (xóa bá» mảng) là má»™t phần mở rá»™ng tawk không thể mang" #: awkgram.y:591 #, c-format msgid "duplicate case values in switch body: %s" msgstr "giá trị trÆ°á»ng hợp trùng trong ná»™i dung câu chuyển đổi nhánh: %s" #: awkgram.y:601 msgid "Duplicate `default' detected in switch body" msgstr "Äã phát hiện «mặc định» trùng trong ná»™i dung câu chuyển đổi nhánh" #: awkgram.y:690 msgid "multistage two-way pipelines don't work" msgstr "Ä‘Æ°á»ng ống dẫn hai chiếu Ä‘a giai Ä‘oạn không hoạt Ä‘á»™ng được" #: awkgram.y:781 msgid "regular expression on right of assignment" msgstr "biểu thức chính quy bên phải Ä‘iá»u gán" #: awkgram.y:804 msgid "regular expression on left of `~' or `!~' operator" msgstr "biểu thức chính quy bên trái toán tá»­ «~» hay «!~»" #: awkgram.y:812 msgid "regular expression on right of comparison" msgstr "biểu thức chính quy bên phải so sánh" #: awkgram.y:879 msgid "non-redirected `getline' undefined inside END action" msgstr "" "trong hành Ä‘á»™ng «END» (kết thức) có «getline» (lấy dòng) không được chuyển " "hÆ°á»›ng và chÆ°a được định nghÄ©a." #: awkgram.y:906 msgid "call of `length' without parentheses is not portable" msgstr "không thể mang lá»i gá»i «length» (Ä‘á»™ dài) không có ngoặc" #: awkgram.y:909 msgid "call of `length' without parentheses is deprecated by POSIX" msgstr "POSIX phản đối lá»i gá»i «length» (Ä‘á»™ dài) không có ngoặc" #: awkgram.y:962 msgid "use of non-array as array" msgstr "đã dùng Ä‘iá»u là mảng mà không phải là mảng" #: awkgram.y:964 msgid "invalid subscript expression" msgstr "biểu thức in thấp không hợp lệ" #: awkgram.y:1171 msgid "unexpected newline or end of string" msgstr "dòng má»›i hay kết thức chuá»—i bất ngá»" #: awkgram.y:1267 msgid "empty program text on command line" msgstr "chữ chÆ°Æ¡ng trình rá»—ng trên dòng lệnh" #: awkgram.y:1320 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "không mở được tập tin nguồn «%s» để Ä‘á»c (%s)" #: awkgram.y:1397 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "không Ä‘á»c được tập tin nguồn «%s» (%s)" #: awkgram.y:1405 #, c-format msgid "source file `%s' is empty" msgstr "tập tin nguồn «%s» là rá»—ng" #: awkgram.y:1596 awkgram.y:1718 awkgram.y:1736 awkgram.y:2107 awkgram.y:2194 msgid "source file does not end in newline" msgstr "tập tin nguồn không kết thức vá»›i dòng má»›i" #: awkgram.y:1658 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" "biểu thức chính quy chÆ°a chấm dứt thì kết thức vá»›i «\\» tại kết thức tập tin" #: awkgram.y:1682 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: Ä‘iá»u sá»­a đổi biểu thức chính quy tawk «/.../%c» không hoạt Ä‘á»™ng " "trong trình gawk" #: awkgram.y:1686 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "Ä‘iá»u sá»­a đổi biểu thức chính quy tawk «/.../%c» không hoạt Ä‘á»™ng trong trình " "gawk" #: awkgram.y:1693 msgid "unterminated regexp" msgstr "biểu thức chính quy chÆ°a chấm dứt " #: awkgram.y:1696 msgid "unterminated regexp at end of file" msgstr "biểu thức chính quy chÆ°a chấm dứt tại kết thức tập tin" #: awkgram.y:1762 msgid "use of `\\ #...' line continuation is not portable" msgstr "không thể mang khi sá»­ dụng «\\#...» để tiếp tục dòng" #: awkgram.y:1774 msgid "backslash not last character on line" msgstr "xuyệc ngược không phải là ký tá»± cuối cùng trên dòng" #: awkgram.y:1819 msgid "POSIX does not allow operator `**='" msgstr "POSIX không cho phép toán tá»­ «**=»" #: awkgram.y:1821 msgid "old awk does not support operator `**='" msgstr "awk cÅ© không há»— trợ toán tá»­ «**=»" #: awkgram.y:1830 msgid "POSIX does not allow operator `**'" msgstr "POSIX không cho phép toán tá»­ «**»" #: awkgram.y:1832 msgid "old awk does not support operator `**'" msgstr "awk cÅ© không há»— trợ toán tá»­ «**»" #: awkgram.y:1863 msgid "operator `^=' is not supported in old awk" msgstr "awk cÅ© không há»— trợ toán tá»­ «^=»" #: awkgram.y:1871 msgid "operator `^' is not supported in old awk" msgstr "awk cÅ© không há»— trợ toán tá»­ «^»" #: awkgram.y:1955 awkgram.y:1970 msgid "unterminated string" msgstr "chuá»—i không được chấm dứt" #: awkgram.y:2155 #, c-format msgid "invalid char '%c' in expression" msgstr "có má»™t ký tá»± không hợp lệ «%c» trong biểu thức" #: awkgram.y:2203 #, c-format msgid "`%s' is a gawk extension" msgstr "«%s» là má»™t phần mở rá»™ng gawk" #: awkgram.y:2206 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "«%s» là má»™t phần mở rá»™ng Bell Labs (Phòng thí nghiệm Bell)" #: awkgram.y:2209 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX không cho phép «%s»" #: awkgram.y:2213 #, c-format msgid "`%s' is not supported in old awk" msgstr "awk cÅ© không há»— trợ «%s»" #: awkgram.y:2239 msgid "`goto' considered harmful!\n" msgstr "đã thấy là «goto» gây tai hại\n" #: awkgram.y:2301 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "«%d» không hợp lệ là số đối số cho «%s»" #: awkgram.y:2320 awkgram.y:2323 msgid "match: third argument is a gawk extension" msgstr "match: (khá»›p) đối số thứ ba là phần mở rá»™ng gawk" #: awkgram.y:2336 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: khi đối số cuối cùng của thay thế, hằng mã nguồn chuá»—i không có tác dụng" #: awkgram.y:2339 #, c-format msgid "%s third parameter is not a changeable object" msgstr "tham số thứ ba «%s» không phải là má»™t đối tượng có thể thay đổi" #: awkgram.y:2366 awkgram.y:2369 msgid "close: second argument is a gawk extension" msgstr "close: (đóng) đối số thứ hai là phần mở rá»™ng gawk" #: awkgram.y:2379 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "dùng «dcgettext(_\"...\")» không đúng: hãy loại bá» gạch dÆ°á»›i Ä‘i trÆ°á»›c" #: awkgram.y:2394 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "dùng «dcgettext(_\"...\")» không đúng: hãy loại bá» gạch dÆ°á»›i Ä‘i trÆ°á»›c" #: awkgram.y:2465 #, c-format msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "chức năng «%s»: tham số «#%d», «%s», nhân đôi tham số «#%d»" #: awkgram.y:2498 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "chức năng «%s»: tham số «%s» che biến toàn cục" #: awkgram.y:2610 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "không mở được «%s» để ghi (%s)" #: awkgram.y:2611 profile.c:93 msgid "sending profile to standard error" msgstr "Ä‘ang gởi tiểu sở sÆ¡ lược cho thiết bị lá»—i chuẩn" #: awkgram.y:2643 #, c-format msgid "%s: close failed (%s)" msgstr "%s: đóng thất bại (%s)" #: awkgram.y:2764 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() (chức năng bóng) được gá»i hai lần!" #: awkgram.y:2791 msgid "there were shadowed variables." msgstr "đã có má»™t số biến bị che" #: awkgram.y:2864 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "chức năng «%s»: không dùng được tên chức năng là tên tham số" #: awkgram.y:2874 #, c-format msgid "function name `%s' previously defined" msgstr "tên chức năng «%s» được định nghÄ©a trÆ°á»›c" #: awkgram.y:3025 awkgram.y:3031 #, c-format msgid "function `%s' called but never defined" msgstr "chức năng «%s» được gá»i nhÆ°ng mà chÆ°a định nghÄ©a" #: awkgram.y:3034 #, c-format msgid "function `%s' defined but never called" msgstr "chức năng «%s» được định nghÄ©a nhÆ°ng mà chÆ°a gá»i" #: awkgram.y:3061 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "hằng biểu thức chính quy cho tham số «#%d» làm giá trị luận lý" #: awkgram.y:3105 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" "chức năng «%s» được gá»i khi có dấu cách giữa tên và «(»\n" "hoặc được dùng là má»™t biến hay là má»™t mảng" #: builtin.c:145 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s đến «%s» thất bại (%s)" #: builtin.c:146 msgid "standard output" msgstr "thiết bị xuất chuẩn" #: builtin.c:147 msgid "reason unknown" msgstr "không biết sao" #: builtin.c:160 msgid "exp: received non-numeric argument" msgstr "exp: đã nhận đối số không phải thuá»™c số" #: builtin.c:166 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: đối số «%g» ở ngoại phạm vị" #: builtin.c:224 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: không thể xóa sạch: ống dẫn «%s» được mở để Ä‘á»c, không phải để ghi" #: builtin.c:227 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: không thể xóa sạch: tập tin «%s» được mở để Ä‘á»c, không phải để ghi" #: builtin.c:239 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "" "fflush: «%s» không phải là má»™t tập tin đã mở, má»™t ống dẫn hay má»™t đồng tiến " "trình" #: builtin.c:332 msgid "index: received non-string first argument" msgstr "index: (số chỉ mục) đã nhận đối số đầu không phải là chuá»—i" #: builtin.c:334 msgid "index: received non-string second argument" msgstr "index: (số chỉ mục) đã nhận đối số thứ hai không phải là chuá»—i" #: builtin.c:449 msgid "int: received non-numeric argument" msgstr "int: (số nguyên) đã nhận đối số không phải thuá»™c số" #: builtin.c:472 #, fuzzy msgid "`length(array)' is a gawk extension" msgstr "«delete array» (xóa bá» mảng) là má»™t phần mở rá»™ng gawk" #: builtin.c:481 msgid "length: received non-string argument" msgstr "length: (Ä‘á»™ dài) đã nhận đối số không phải chuá»—i" #: builtin.c:506 msgid "log: received non-numeric argument" msgstr "log: (bản ghi) đã nhận đối số không phải thuá»™c số" #: builtin.c:509 #, c-format msgid "log: received negative argument %g" msgstr "log: (bản ghi) đã nhận đối số âm «%g»" #: builtin.c:673 builtin.c:676 msgid "must use `count$' on all formats or none" msgstr "" "phải sá»­ dụng «count$» hoặc vá»›i má»i định dạng hoặc không vá»›i định dạng nào" #: builtin.c:778 msgid "`$' is not permitted in awk formats" msgstr "không cho phép «$» trong định dạng awk" #: builtin.c:784 msgid "arg count with `$' must be > 0" msgstr "khi dùng «$» thì số đếm đối số phải là >0" #: builtin.c:786 #, c-format msgid "arg count %ld greater than total number of supplied arguments" msgstr "số đếm đối số «%ld» lá»›n hÆ¡n tổng số đối số được cung cấp" #: builtin.c:788 msgid "`$' not permitted after period in format" msgstr "không cho phép «$» sau dấu chấm trong định dạng" #: builtin.c:801 msgid "no `$' supplied for positional field width or precision" msgstr "" "chÆ°a cung cấp «$» cho Ä‘á»™ rá»™ng trÆ°á»ng thuá»™c vị trí hoặc cho Ä‘á»™ chính xác" #: builtin.c:867 msgid "`l' is meaningless in awk formats; ignored" msgstr "chữ «l» không có nghÄ©a trong định dạng awk nên bị bá» qua" #: builtin.c:871 msgid "`l' is not permitted in POSIX awk formats" msgstr "không cho phép chữ «l» trong định dạng awk POSIX" #: builtin.c:882 msgid "`L' is meaningless in awk formats; ignored" msgstr "chữ «L» không có nghÄ©a trong định dạng awk nên bị bá» qua" #: builtin.c:886 msgid "`L' is not permitted in POSIX awk formats" msgstr "không cho phép chữ «L» trong định dạng awk POSIX" #: builtin.c:897 msgid "`h' is meaningless in awk formats; ignored" msgstr "chữ «h» không có nghÄ©a trong định dạng awk nên bị bá» qua" #: builtin.c:901 msgid "`h' is not permitted in POSIX awk formats" msgstr "không cho phép chữ «h» trong định dạng awk POSIX" #: builtin.c:1132 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: giá trị «%g» ở ngoại phạm vị cho định dạng «%%%c»" #: builtin.c:1198 msgid "not enough arguments to satisfy format string" msgstr "chÆ°a có đủ đối số để đáp ứng chuá»—i định dạng" #: builtin.c:1200 msgid "^ ran out for this one" msgstr "hết «^» cho Ä‘iá»u này" #: builtin.c:1205 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: Ä‘iá»u ghi rõ định dạng không có chữ Ä‘iá»u khiển" #: builtin.c:1208 msgid "too many arguments supplied for format string" msgstr "đã cung cấp quá nhiá»u đối số cho chuá»—i định dạng" #: builtin.c:1274 builtin.c:1277 msgid "printf: no arguments" msgstr "printf: không có đối số nào" #: builtin.c:1301 msgid "sqrt: received non-numeric argument" msgstr "sqrt: (căn bậc hai) đã nhận đối số không phải thuá»™c số" #: builtin.c:1305 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: (căn bậc hai) đã gá»i vá»›i đối số âm «%g»" #: builtin.c:1329 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: (chuá»—i con) số chỉ mục đầu «%g» không hợp lệ nên dùng «1»" #: builtin.c:1334 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: (chuá»—i con) sẽ cắt xén số chỉ mục không phải số nguyên «%g»" #: builtin.c:1353 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: (chuá»—i con) Ä‘á»™ dài «%g» không phải ≥1" #: builtin.c:1355 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: (chuá»—i con) Ä‘á»™ dài «%g» không phải ≥0" #: builtin.c:1362 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: (chuá»—i con) sẽ cắt xén Ä‘á»™ dài không phải số nguyên «%g»" #: builtin.c:1367 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" "substr: (chuá»—i con) Ä‘á»™ dài «%g» quá lá»›n cho chỉ mục chuá»—i nên cắt xén xuống " "«%g»" #: builtin.c:1379 msgid "substr: source string is zero length" msgstr "substr: (chuá»—i con) chuá»—i nguồn có Ä‘á»™ dài số không" #: builtin.c:1395 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: (chuá»—i con) chỉ mục đầu «%g» sau kết thức chuá»—i" #: builtin.c:1403 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" "substr: (chuá»—i con) Ä‘á»™ dài «%g» tại chỉ mục đầu «%g» thì vượt quá Ä‘á»™ dài của " "đối số đầu («%lu»)" #: builtin.c:1478 msgid "strftime: received non-string first argument" msgstr "strftime: đã nhận đối số đầu không phải chuá»—i" #: builtin.c:1484 msgid "strftime: received empty format string" msgstr "strftime: đã nhận chuá»—i định dạng rá»—ng" #: builtin.c:1493 msgid "strftime: received non-numeric second argument" msgstr "strftime: đã nhận đối số thứ hai không phải thuá»™c số" #: builtin.c:1556 msgid "mktime: received non-string argument" msgstr "mktime: đã nhận đối số không phải chuá»—i" #: builtin.c:1601 msgid "system: received non-string argument" msgstr "system: (hệ thống) đã nhận đối số không phải chuá»—i" #: builtin.c:1722 eval.c:2039 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "tham chiếu đến trÆ°á»ng chÆ°a khởi Ä‘á»™ng «$%d»" #: builtin.c:1827 msgid "tolower: received non-string argument" msgstr "tolower: (đến thấp hÆ¡n) đã nhận đối số không phải chuá»—i" #: builtin.c:1857 msgid "toupper: received non-string argument" msgstr "toupper: (đến cao hÆ¡n) đã nhận đối số không phải chuá»—i" #: builtin.c:1890 msgid "atan2: received non-numeric first argument" msgstr "atan2: đã nhận đối số đầu không phải thuá»™c số" #: builtin.c:1892 msgid "atan2: received non-numeric second argument" msgstr "atan2: đã nhận đối số thứ hai không phải thuá»™c số" #: builtin.c:1911 msgid "sin: received non-numeric argument" msgstr "sin: đã nhận đối số không phải thuá»™c số" #: builtin.c:1927 msgid "cos: received non-numeric argument" msgstr "cos: đã nhận đối số không phải thuá»™c số" #: builtin.c:1977 msgid "srand: received non-numeric argument" msgstr "srand: đã nhận đối số không phải thuá»™c số" #: builtin.c:2012 msgid "match: third argument is not an array" msgstr "match: (khá»›p) đối số thứ ba không phải là má»™t mảng" #: builtin.c:2555 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: (tạo Ä‘iá»u con) đối số thứ ba là «0» thì được xá»­ lý là «1»" #: builtin.c:2715 msgid "lshift: received non-numeric first argument" msgstr "lshift: (dịch trái) đã nhận đối số đầu không phải thuá»™c số" #: builtin.c:2717 msgid "lshift: received non-numeric second argument" msgstr "lshift: (dịch trái) đã nhận đối số thứ hai không phải thuá»™c số" #: builtin.c:2723 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): giá trị âm thì sẽ gây ra kết quả lạ" #: builtin.c:2725 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): giá trị thuá»™c phân số thì sẽ bị cắt xén" #: builtin.c:2727 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): giá trị dịch quá lá»›n thì sẽ gây ra kết quả lạ" #: builtin.c:2753 msgid "rshift: received non-numeric first argument" msgstr "rshift: đã nhận đối số đầu không phải thuá»™c số" #: builtin.c:2755 msgid "rshift: received non-numeric second argument" msgstr "rshift: (dịch phải) đã nhận đối số thứ hai không phải thuá»™c số" #: builtin.c:2761 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): giá trị âm thì sẽ gây ra kết quả lạ" #: builtin.c:2763 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): giá trị thuá»™c phân số thì sẽ bị cắt xén" #: builtin.c:2765 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): giá trị dịch quá lá»›n thì sẽ gây ra kết quả lạ" #: builtin.c:2791 msgid "and: received non-numeric first argument" msgstr "and: (và) đã nhận đối số đầu không phải thuá»™c số" #: builtin.c:2793 msgid "and: received non-numeric second argument" msgstr "and: (và) đã nhận đối số thứ hai không phải thuá»™c số" #: builtin.c:2799 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): (và) giá trị âm thì sẽ gây ra kết quả lạ" #: builtin.c:2801 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): (và) giá trị thuá»™c phân số thì sẽ bị cắt xén" #: builtin.c:2827 msgid "or: received non-numeric first argument" msgstr "or: (hoặc) đã nhận đối số đầu không phải thuá»™c số" #: builtin.c:2829 msgid "or: received non-numeric second argument" msgstr "or: (hoặc) đã nhận đối số thứ hai không phải thuá»™c số" #: builtin.c:2835 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): (hoặc) giá trị âm thì sẽ gây ra kết quả lạ" #: builtin.c:2837 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): (hoặc) giá trị thuá»™c phân số thì sẽ bị cắt xén" #: builtin.c:2863 msgid "xor: received non-numeric first argument" msgstr "xor: (không hoặc) đã nhận đối số đầu không phải thuá»™c số" #: builtin.c:2865 msgid "xor: received non-numeric second argument" msgstr "xor: (không hoặc) đã nhận đối số thứ hai không phải thuá»™c số" #: builtin.c:2871 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): (không hoặc) giá trị âm thì sẽ gây ra kết quả lạ" #: builtin.c:2873 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): (không hoặc) giá trị thuá»™c phân số thì sẽ bị cắt xén" #: builtin.c:2897 msgid "compl: received non-numeric argument" msgstr "compl: (biên dịch) đã nhận đối số không phải thuá»™c số" #: builtin.c:2903 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): (biên dịch) giá trị âm thì sẽ gây ra kết quả lạ" #: builtin.c:2905 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): (biên dịch) giá trị thuá»™c phân số thì sẽ bị cắt xén" #: builtin.c:3078 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: «%s» không phải là má»™t phân loại miá»n địa phÆ°Æ¡ng hợp lệ" #: eval.c:303 #, c-format msgid "unknown nodetype %d" msgstr "không biết kiểu nút «%d»" #: eval.c:353 msgid "buffer overflow in genflags2str" msgstr "vùng đệm vượt quá trong «genflags2str» (tạo ra cỠđến chuá»—i)" #: eval.c:385 eval.c:391 profile.c:838 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "cố dùng mảng «%s» trong má»™t ngữ cảnh vô hÆ°á»›ng" #: eval.c:733 #, c-format msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" msgstr "" "for loop: (cho vòng lặp) mảng «%s» đã thay đổi kích thÆ°á»›c từ «%ld» đến «%ld» " "trong khi thá»±c hiện vòng lặp" #: eval.c:754 msgid "`break' outside a loop is not portable" msgstr "không thể mang «break» (ngắt) ở ngoại má»™t vòng lặp" #: eval.c:758 msgid "`break' outside a loop is not allowed" msgstr "không cho phép «break» (ngắt) ở ngoại má»™t vòng lặp" #: eval.c:775 msgid "`continue' outside a loop is not portable" msgstr "không thể mang «continue» (tiếp tục) ở ngoại má»™t vòng lặp" #: eval.c:779 msgid "`continue' outside a loop is not allowed" msgstr "không cho phép «continue» (tiếp tục) ở ngoại má»™t vòng lặp" #: eval.c:813 msgid "`next' cannot be called from a BEGIN rule" msgstr "không gá»i được «next» (kế tiếp) từ má»™t quy tắc «BEGIN» (bắt đầu)" #: eval.c:815 msgid "`next' cannot be called from an END rule" msgstr "không gá»i được «next» (kế tiếp) từ má»™t quy tắc «END» kết thức)" #: eval.c:824 msgid "`nextfile' cannot be called from a BEGIN rule" msgstr "" "không gá»i được «nextfile» (tập tin kế tiếp) từ má»™t quy tắc «BEGIN» (bắt đầu)" #: eval.c:826 msgid "`nextfile' cannot be called from an END rule" msgstr "" "không gá»i được «nextfile» (tập tin kế tiếp) từ má»™t quy tắc «END» kết thức)" #: eval.c:875 msgid "statement has no effect" msgstr "câu không có tác dụng" #: eval.c:952 eval.c:1893 #, c-format msgid "can't use function name `%s' as variable or array" msgstr "không thể dùng tên chức năng «%s» vá»›i là biến hay mảng" #: eval.c:959 eval.c:965 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "tham chiếu đến đối số chÆ°a khởi Ä‘á»™ng «%s»" #: eval.c:974 eval.c:1902 #, c-format msgid "reference to uninitialized variable `%s'" msgstr "tham chiếu đến biến chÆ°a khởi Ä‘á»™ng «%s»" #: eval.c:1120 msgid "" "concatenation: side effects in one expression have changed the length of " "another!" msgstr "" "concatenation: (nối chuá»—i) hiệu ứng khác trong má»™t biểu thức nào đó đã thay " "đổi Ä‘á»™ dài của má»™t biểu thức khác." #: eval.c:1200 msgid "assignment used in conditional context" msgstr "đã dùng Ä‘iá»u gán trong ngữ cảnh chỉ Ä‘iá»u kiện" #: eval.c:1278 msgid "division by zero attempted" msgstr "cố chia cho số không" #: eval.c:1293 #, c-format msgid "division by zero attempted in `%%'" msgstr "cố chia cho số không trong «%%»" #: eval.c:1308 profile.c:714 #, c-format msgid "illegal type (%s) in tree_eval" msgstr "không cho phép kiểu (%s) trong «tree_eval» (Æ°á»›c lượng cây)" #: eval.c:1471 msgid "division by zero attempted in `/='" msgstr "cố chia cho số không trong «/=»" #: eval.c:1493 #, c-format msgid "division by zero attempted in `%%='" msgstr "cố chia cho số không trong «%%=»" #: eval.c:1758 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "đã gá»i chức năng «%s» vá»›i nhiá»u đối số hÆ¡n được tuyên bố" #: eval.c:1802 #, c-format msgid "function `%s' not defined" msgstr "chÆ°a định nghÄ©a chức năng «%s»" #: eval.c:1865 #, c-format msgid "" "\n" "\t# Function Call Stack:\n" "\n" msgstr "" "\n" "\t# Äống gá»i chức năng:\n" "\n" #: eval.c:1868 #, c-format msgid "\t# -- main --\n" msgstr "" "\t# -- main --\n" "(chính)\n" #: eval.c:2023 msgid "attempt to field reference from non-numeric value" msgstr "cố tham chiếu trÆ°á»ng từ giá trị không thuá»™c số" #: eval.c:2025 msgid "attempt to reference from null string" msgstr "cố tham chiếu từ chuá»—i vô giá trị" #: eval.c:2031 #, c-format msgid "attempt to access field %d" msgstr "cố truy cập trÆ°á»ng «%d»" #: eval.c:2052 eval.c:2059 profile.c:935 msgid "assignment is not allowed to result of builtin function" msgstr "không cho phép gán cho kết quả của chức năng «builtin» (có sẵn)" #: eval.c:2123 msgid "`IGNORECASE' is a gawk extension" msgstr "«IGNORECASE» (bá» qua chữ hoa/thÆ°á»ng) là má»™t phần mở rá»™ng gawk" #: eval.c:2153 msgid "`BINMODE' is a gawk extension" msgstr "«BINMODE» (chế Ä‘á»™ nhị phân) là má»™t phần mở rá»™ng gawk" #: eval.c:2275 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "Ä‘iá»u ghi rõ «%s» «%sFMT» sai" #: eval.c:2353 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "Ä‘ang tắt «--lint» vì gán cho «LINT»" #: ext.c:60 ext.c:64 msgid "`extension' is a gawk extension" msgstr "«extension» là má»™t phần mở rá»™ng gawk" #: ext.c:74 #, c-format msgid "extension: cannot open `%s' (%s)\n" msgstr "extension: (phần mở rá»™ng) không mở được «%s» (%s)\n" #: ext.c:82 #, c-format msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "extension: (phần mở rá»™ng) thÆ° viên «%s»: không gá»i được chức năng «%s» (%s)\n" #: ext.c:102 msgid "extension: missing function name" msgstr "extension: (phần mở rá»™ng) thiếu tên chức năng" #: ext.c:107 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "" "extension: (phần mở rá»™ng) không cho phép ký tá»± «%c» trong tên chức năng «%s»" #: ext.c:113 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: (phần mở rá»™ng) không thể định nghÄ©a lại chức nắng «%s»" #: ext.c:117 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: (phần mở rá»™ng) đã định nghÄ©a chức năng «%s» rồi" #: ext.c:122 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "extension: (phần mở rá»™ng) không thể dùng «%s» có sẵn gawk là tên chức năng" #: ext.c:124 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: (phần mở rá»™ng) tên chức năng «%s» được định nghÄ©a trÆ°á»›c" #: ext.c:201 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "chức năng «%s» được định nghÄ©a để chấp nhận nhiá»u nhất «%d» đối số" #: ext.c:204 #, c-format msgid "function `%s': missing argument #%d" msgstr "chức năng «%s» thiếu đối số «#%d»" #: ext.c:214 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "chức năng «%s»: đối số «#%d»: cố dùng Ä‘iá»u vô hÆ°á»›ng là má»™t mảng" #: ext.c:218 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "chức năng «%s»: đối số «#%d»: cố dùng mảng là má»™t Ä‘iá»u vô hÆ°á»›ng" #: ext.c:243 msgid "Operation Not Supported" msgstr "Không há»— trợ thao tác ấy" #: field.c:326 msgid "NF set to negative value" msgstr "đã lập «NF» là giá trị âm" #: field.c:819 msgid "split: second argument is not an array" msgstr "split: (chia tách) đối số thứ hai không phải là má»™t mảng" #: field.c:853 msgid "split: null string for third arg is a gawk extension" msgstr "" "split: (chia tách) chuá»—i vô giá trị cho đối số thứ ba là má»™t phần mở rá»™ng " "gawk" #: field.c:905 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "«FIELDWIDTHS» (Ä‘á»™ rá»™ng trÆ°á»ng) là má»™t phần mở rá»™ng gawk" #: field.c:935 field.c:946 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "Giá trị «FIELDWIDTHS» (Ä‘á»™ rá»™ng trÆ°á»ng) không hợp lệ, gần «%s»" #: field.c:1027 msgid "null string for `FS' is a gawk extension" msgstr "chuá»—i vô giá trị cho «FS» là má»™t phần mở rá»™ng gawk" #: getopt.c:571 getopt.c:590 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: tùy chá»n «%s» là mÆ¡ hồ\n" #: getopt.c:623 getopt.c:627 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: tùy chá»n «--%s» không cho phép đối số\n" #: getopt.c:636 getopt.c:641 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: tùy chá»n «%c%s» không cho phép đối số\n" #: getopt.c:687 getopt.c:709 getopt.c:1040 getopt.c:1062 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: tùy chá»n «%s» cần đến đối số\n" #: getopt.c:747 getopt.c:750 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: không chấp nhận tùy chá»n «--%s»\n" #: getopt.c:758 getopt.c:761 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: không chấp nhận tùy chá»n «%c%s»\n" #: getopt.c:816 getopt.c:819 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: không cho phép tùy chá»n «-- %c»\n" #: getopt.c:825 getopt.c:828 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: tùy chá»n không hợp lệ «-- %c»\n" #: getopt.c:883 getopt.c:902 getopt.c:1115 getopt.c:1136 main.c:448 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: tùy chá»n cần đến đối số «-- %c»\n" #: getopt.c:955 getopt.c:974 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: tùy chá»n «-W %s» là mÆ¡ hồ\n" #: getopt.c:998 getopt.c:1019 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: tùy chá»n «-W %s» không cho phép đối số\n" #: io.c:307 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "không mở được tập tin «%s» để ghi (%s)" #: io.c:398 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "đóng «fd %d» («%s») thất bại (%s)" #: io.c:536 #, c-format msgid "invalid tree type %s in redirect()" msgstr "kiểu cây không hợp lệ «%s» trong «redirect()»" #: io.c:542 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "biểu thức trong Ä‘iá»u chuyển hÆ°á»›ng «%s» chỉ có giá trị thuá»™c số" #: io.c:548 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "biểu thức cho Ä‘iá»u chuyển hÆ°á»›ng «%s» có giá trị chuá»—i vô giá trị" #: io.c:553 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "tên tập tin «%s» cho Ä‘iá»u chuyển hÆ°á»›ng «%s» có lẽ là kết quả của biểu thức " "luận lý" #: io.c:591 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "không cần hợp «>» vào «>>» cho tập tin «%.*s»" #: io.c:643 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "không mở được ống dẫn «%s» để xuất (%s)" #: io.c:652 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "không mở được ống dẫn «%s» để gõ (%s)" #: io.c:665 #, c-format msgid "can't open two way socket `%s' for input/output (%s)" msgstr "không mở được ổ cắm hai chiá»u «%s» để gõ/xuất (%s)" #: io.c:669 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "không mở được ống dẫn hai chiá»u «%s» để gõ/xuất (%s)" #: io.c:745 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "không thể chuyển hÆ°á»›ng từ «%s» (%s)" #: io.c:748 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "không thể chuyển hÆ°á»›ng đến «%s» (%s)" #: io.c:787 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "đã gặp giá»›i hạn hệ thống cho tập tin Ä‘ang mở nên bắt đầu phối hợp nhiá»u dòng " "Ä‘iá»u diá»…n tả tâp tin" #: io.c:803 #, c-format msgid "close of `%s' failed (%s)." msgstr "đóng «%s» thất bại (%s)" #: io.c:811 msgid "too many pipes or input files open" msgstr "quá nhiá»u ống dẫn hay tập tin gõ Ä‘ang mở" #: io.c:834 msgid "close: second argument must be `to' or `from'" msgstr "close: (đóng) đối số thứ hai phải là «to» (đến) hay «from» (từ)" #: io.c:848 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "" "close: (đóng) «%.*s» không phải là má»™t tập tin Ä‘ang mở, má»™t ống dẫn hay tiến " "trình vá»›i nhau" #: io.c:852 msgid "close of redirection that was never opened" msgstr "đã đóng Ä‘iá»u chuyển hÆ°á»›ng chÆ°a mở" #: io.c:948 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: (đóng) Ä‘iá»u chuyển hÆ°á»›ng «%s» không do «|&» mở nên đối số thứ hai bị " "bá» qua" #: io.c:964 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "trạng thái thất bại (%d) khi đóng ống dẫn «%s» (%s)" #: io.c:967 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "trạng thái thất bại (%d) khi đóng tập tin «%s» (%s)" #: io.c:987 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "chÆ°a cung cấp Ä‘iá»u đóng ổ cắm «%s» dứt khoát" #: io.c:990 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "chÆ°a cung cấp Ä‘iá»u đóng tiến trình vá»›i nhau «%s» dứt khoát" #: io.c:993 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "chÆ°a cung cấp Ä‘iá»u đóng ống dẫn «%s» dứt khoát" #: io.c:996 #, c-format msgid "no explicit close of file `%s' provided" msgstr "chÆ°a cung cấp Ä‘iá»u đóng tập tin «%s» dứt khoát" #: io.c:1025 io.c:1080 main.c:718 main.c:756 #, c-format msgid "error writing standard output (%s)" msgstr "gặp lá»—i khi ghi thiết bị xụất chuẩn (%s)" #: io.c:1029 io.c:1085 #, c-format msgid "error writing standard error (%s)" msgstr "gặp lá»—i khi ghi thiết bị lá»—i chuẩn (%s)" #: io.c:1037 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "xóa sạch ống dẫn «%s» thất bại (%s)" #: io.c:1040 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "xóa sạch ống dẫn đồng tiến trình đến «%s» thất bại (%s)" #: io.c:1043 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "xóa sạch tập tin «%s» thất bại (%s)" #: io.c:1205 msgid "/inet/raw client not ready yet, sorry" msgstr "tiếc là trình khách «/inet/raw» chÆ°a sẵn sàng" #: io.c:1207 io.c:1244 msgid "only root may use `/inet/raw'." msgstr "chỉ ngÆ°á»i chủ (root) có thể sá»­ dụng «/inet/raw» thôi" #: io.c:1242 msgid "/inet/raw server not ready yet, sorry" msgstr "tiếc là trình phục vụ «/inet/raw» chÆ°a sẵn sàng" #: io.c:1332 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "trong tên tập tin đặc biệt «%s» không cung cấp giao thức (đã biết) nào" #: io.c:1350 #, c-format msgid "special file name `%s' is incomplete" msgstr "tên tập tin đặc biệt «%s» chÆ°a xong" #: io.c:1362 #, c-format msgid "local port invalid in `%s'" msgstr "trong «%s» cổng địa phÆ°Æ¡ng không hợp lệ" #: io.c:1374 msgid "must supply a remote hostname to `/inet'" msgstr "phải cung cấp má»™t tên máy từ xa cho «/inet»" #: io.c:1389 msgid "must supply a remote port to `/inet'" msgstr "phải cung cấp má»™t cổng từ xa cho «/inet»" #: io.c:1395 #, c-format msgid "remote port invalid in `%s'" msgstr "trong «%s» cổng từ xa không hợp lệ" #: io.c:1405 msgid "TCP/IP communications are not supported" msgstr "không há»— trợ truyá»n thông TCP/IP" #: io.c:1414 io.c:1595 #, c-format msgid "file `%s' is a directory" msgstr "tập tin «%s» là má»™t thÆ° mục" #: io.c:1484 #, c-format msgid "use `PROCINFO[\"%s\"]' instead of `%s'" msgstr "hãy dùng «PROCINFO[\"%s\"]» (thông tin tiến trình) thay vào «%s»" #: io.c:1516 msgid "use `PROCINFO[...]' instead of `/dev/user'" msgstr "hãy dùng «PROCINFO[...]» (thông tin tiến trình) thay vào «/dev/user»" #: io.c:1581 io.c:1763 #, c-format msgid "could not open `%s', mode `%s'" msgstr "không mở được «%s», chế Ä‘á»™ «%s»" #: io.c:1814 #, c-format msgid "close of master pty failed (%s)" msgstr "đóng pty cái thất bại (%s)" #: io.c:1816 io.c:1968 io.c:2119 #, c-format msgid "close of stdout in child failed (%s)" msgstr "đóng thiết bị xuất chuẩn trong tiến trình con thất bại (%s)" #: io.c:1819 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "di chuyển pty phụ đến thiết bị xuất chuẩn thất bại trong tiến trình con " "(dup: %s) (nhân đôi)" #: io.c:1821 io.c:1973 #, c-format msgid "close of stdin in child failed (%s)" msgstr "đóng thiết bị gõ chuẩn trong tiến trình con thất bại (%s)" #: io.c:1824 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "di chuyển Ä‘iá»u phụ đến thiết bị gõ chuẩn thất bại trong tiến trình con (dup: " "%s) (nhân đôi)" #: io.c:1826 io.c:1845 #, c-format msgid "close of slave pty failed (%s)" msgstr "đóng Ä‘iá»u phụ thất bại (%s)" #: io.c:1919 io.c:1971 io.c:2100 io.c:2122 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" "di chuyển ống dẫn đến thiết bị xuất chuẩn thất bại trong tiến trình con " "(dup: %s) (nhân đôi)" #: io.c:1923 io.c:1976 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "di chuyển ống dẫn đến thiết bị gõ chuẩn thất bại trong tiến trình con (dup: %" "s) (nhân đôi)" #: io.c:1940 io.c:2113 msgid "restoring stdout in parent process failed\n" msgstr "phục hồi thiết bị xuất chuẩn trong tiến trình mẹ thất bại\n" #: io.c:1945 msgid "restoring stdin in parent process failed\n" msgstr "phục hồi thiết bị gõ chuẩn trong tiến trình mẹ thất bại\n" #: io.c:1979 io.c:2124 io.c:2135 #, c-format msgid "close of pipe failed (%s)" msgstr "đóng ống dẫn thất bại (%s)" #: io.c:2024 msgid "`|&' not supported" msgstr "không há»— trợ «|&»" #: io.c:2090 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "không mở được «%s» (%s)" #: io.c:2131 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "không tạo được tiến trình con cho «%s» (fork: %s)" #: io.c:2506 #, c-format msgid "data file `%s' is empty" msgstr "tập tin dữ liệu «%s» là rá»—ng" #: io.c:2547 io.c:2555 msgid "could not allocate more input memory" msgstr "không thể cấp phát bá»™ nhá»› gõ nhiá»u hÆ¡n" #: io.c:2919 io.c:2984 #, c-format msgid "error reading input file `%s': %s" msgstr "gặp lá»—i khi Ä‘á»c tập tin gõ «%s»: %s" #: io.c:3109 msgid "multicharacter value of `RS' is a gawk extension" msgstr "giá trị Ä‘a ký tá»± của «RS» là má»™t phần mở rá»™ng gawk" #: main.c:338 msgid "`-m[fr]' option irrelevant in gawk" msgstr "«-m[fr]» tùy chá»n không thích Ä‘ang trong gawk" #: main.c:340 msgid "-m option usage: `-m[fr] nnn'" msgstr "cách sá»­ dụng tùy chá»n «-m»: «-m[fr] nnn»" #: main.c:357 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: tùy chá»n «-W %s» không được nhận diện nên bị bá» qua\n" #: main.c:394 msgid "empty argument to `--source' ignored" msgstr "đối số rá»—ng tá»›i «--source» (nguồn) bị bá» qua" #: main.c:467 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "đã lập biến môi trÆ°á»ng «POSIXLY_CORRECT» (đúng cách POSIX) thì Ä‘ang bật tùy " "chá»n «--posix»" #: main.c:472 msgid "`--posix' overrides `--traditional'" msgstr "tùy chá»n «--posix» đè «--traditional» (truyá»n thống)" #: main.c:483 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "" "«--posix»/«--traditional» (truyá»n thống) đè «--non-decimal-data» (dữ liệu " "không phải thập phân)" #: main.c:487 #, c-format msgid "running %s setuid root may be a security problem" msgstr "chạy «%s» vá»›i tÆ° cách «setuid root» thì có lẽ sẽ rủi rá» bảo mật" #: main.c:528 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "không lập được chế Ä‘á»™ nhị phân trên thiết bị gõ chuẩn (%s)" #: main.c:531 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "không lập được chế Ä‘á»™ nhị phân trên thiết bị xuất chuẩn (%s)" #: main.c:533 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "không lập được chế Ä‘á»™ nhị phân trên thiết bị lá»—i chuẩn (%s)" #: main.c:572 msgid "no program text at all!" msgstr "không có chữ chÆ°Æ¡ng trình nào cả!" #: main.c:665 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Cách sá»­ dụng: %s [tùy chá»n kiểu POSIX hay GNU] -f tập_tin_chÆ°Æ¡ng_trình [--] " "tập_tin ...\n" #: main.c:667 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Cách sá»­ dụng: %s [tùy chá»n kiểu POSIX hay GNU] [--] %cchÆ°Æ¡ng_trình%c " "tập_tin ...\n" #: main.c:672 msgid "POSIX options:\t\tGNU long options:\n" msgstr "tùy chá»n POSIX:\t\ttùy chá»n dài GNU:\n" #: main.c:673 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f tập_tin_chÆ°Æ¡ng_trình\t\t--tập_tin=tập_tin_chÆ°Æ¡ng_trình\n" #: main.c:674 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\t\tÄ‘iá»u phân cách trÆ°á»ngs\n" #: main.c:675 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "" "\t-v var=val\t\t--assign=var=val\n" "(var là viết tắt cho variable: biến\n" "val là viết tắt cho value: giá trị\n" "assign: gán)\n" #: main.c:676 msgid "\t-m[fr] val\n" msgstr "\t-m[fr] val\n" #: main.c:677 msgid "\t-W compat\t\t--compat\n" msgstr "" "\t-W compat\t\t--compat\n" "(compat là viết tắt cho compatible: tÆ°Æ¡ng thích)\n" #: main.c:678 msgid "\t-W copyleft\t\t--copyleft\n" msgstr "" "\t-W copyleft\t\t--copyleft\n" "(sao chép trái)\n" #: main.c:679 msgid "\t-W copyright\t\t--copyright\n" msgstr "" "\t-W copyright\t\t--copyright\n" "(sao chép phải hoặc bản quyá»n)\n" #: main.c:680 msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n" msgstr "" "\t-W dump-variables[=tập_tin]\t--dump-variables[=tập_tin]\n" "(đổ các biến)\n" #: main.c:681 msgid "\t-W exec=file\t\t--exec=file\n" msgstr "\t-W exec=file\t\t--exec=file\n" #: main.c:682 msgid "\t-W gen-po\t\t--gen-po\n" msgstr "" "\t-W gen-po\t\t--gen-po\n" "(gen là viết tắt cho generate: tạo ra)\n" #: main.c:683 msgid "\t-W help\t\t\t--help\n" msgstr "" "\t-W help\t\t\t--help\n" "(trợ giúp)\n" #: main.c:684 msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n" msgstr "" "\t-W lint[=fatal]\t\t--lint[=fatal]\n" "(l? int là viết tắt cho integer: số nguyên\n" "fatal: nghiêm trá»ng)\n" #: main.c:685 msgid "\t-W lint-old\t\t--lint-old\n" msgstr "" "\t-W lint-old\t\t--lint-old\n" "(old: cÅ©)\n" #: main.c:686 msgid "\t-W non-decimal-data\t--non-decimal-data\n" msgstr "" "\t-W non-decimal-data\t--non-decimal-data\n" "(dữ liệu không phải thập phân)\n" #: main.c:688 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "" "\t-W nostalgia\t\t--nostalgia\n" "(ná»—i luyến tiếc quá khứ)\n" #: main.c:691 msgid "\t-W parsedebug\t\t--parsedebug\n" msgstr "" "\t-W parsedebug\t\t--parsedebug\n" "(parse: phân tách\n" "debug: gỡ lá»—i)\n" #: main.c:693 msgid "\t-W profile[=file]\t--profile[=file]\n" msgstr "" "\t-W profile[=tập_tin]\t--profile[=tập_tin]\n" "(profile: tiểu sá»­ sÆ¡ lược)\n" #: main.c:694 msgid "\t-W posix\t\t--posix\n" msgstr "\t-W posix\t\t--posix\n" #: main.c:695 msgid "\t-W re-interval\t\t--re-interval\n" msgstr "" "\t-W re-interval\t\t--re-interval\n" "(re-[Ä‘á»™ng từ]: [làm] lại\n" "interval: thá»i gian giữa hai lúc)\n" #: main.c:696 msgid "\t-W source=program-text\t--source=program-text\n" msgstr "" "\t-W source=program-text\t--source=program-text\n" "(source: nguồn\n" "program-text: các văn bản trong chÆ°Æ¡ng trình)\n" #: main.c:697 msgid "\t-W traditional\t\t--traditional\n" msgstr "" "\t-W traditional\t\t--traditional\n" "(truyá»n thống)\n" #: main.c:698 msgid "\t-W usage\t\t--usage\n" msgstr "" "\t-W usage\t\t--usage\n" "(cách sá»­ dụng)\n" #: main.c:699 msgid "\t-W version\t\t--version\n" msgstr "" "\t-W version\t\t--version\n" "(phiên bản)\n" #: main.c:703 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" "section `Reporting Problems and Bugs' in the printed version.\n" "\n" msgstr "" "\n" "Äể thông báo lá»—i, hãy xem phần «Bugs» (Lá»—i) trong tập tin «gawk.info»\n" "trong phần «Reporting Problems and Bugs» (thông báo vấn Ä‘á» và lá»—i)\n" "trong bản in.\n" #: main.c:707 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" "gawk là má»™t ngôn ngữ quét mẫu và xá»­ lý.\n" "Mặc định là nó Ä‘á»c từ thiết bị gõ chuẩn và ghi vào thiết bị xuất chuẩn.\n" "\n" #: main.c:711 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" "Thí dụ:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" #: main.c:731 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" "\n" "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n" "\n" msgstr "" "Bản quyá»n © 1989, 1991-%d Tổ chức Phần má»m Tá»± do.\n" "\n" "ChÆ°Æ¡ng trình này là phần má»m tá»± do; bạn có thể phân phối lại nó\n" "và/hay sá»­a đổi nó vá»›i Ä‘iá»u kiện của Quyá»n Công Chung GNU (GPL)\n" "nhÆ° do Tổ chức Phần má»m Tá»± do xuất bản, hoặc phiên bản 2\n" "của Quyá»n ấy, hoặc (tùy chá»n) bất cứ phiên bản sau nào.\n" "\n" #: main.c:739 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" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" msgstr "" "Chúng tôi phân phối chÆ°Æ¡ng trình này vì mong muốn nó hữu ích,\n" "nhÆ°ng mà KHÔNG BẢO ÄẢM GÃŒ CẢ, không ngay cả ngụ ý bảo đảm\n" "KHẢ NÄ‚NG BÃN hoặc KHẢ NÄ‚NG LÀM VIỆC DỨT KHOÃT.\n" "Hãy xem Quyá»n Công Chung GNU (GNU General Public Licence)\n" "để tìm chi tiết.\n" "\n" #: main.c:745 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, " "USA.\n" msgstr "" "Bện nên đã nhận má»™t bản sao của Quyá»n Công Chung GNU\n" "cÅ©ng vá»›i chÆ°Æ¡ng trình này; nếu không thì hãy viết cho\n" "Tổ chức Phần má»m Tá»± do:\n" "Free Software Foundation, Inc.,\n" "51 Franklin Street, Fifth Floor,\n" "Boston, MA 02110-1301, USA. (Mỹ)\n" #: main.c:781 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft không lập FS là tab trong awk POSIX" #: main.c:1018 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" "%s: đối số «%s» vá»›i «-v» không phải có dạng «biến=giá_trị» \n" "\n" #: main.c:1038 #, c-format msgid "`%s' is not a legal variable name" msgstr "«%s» không phải là má»™t tên biến cho phép" #: main.c:1041 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "«%s» không phải là má»™t tên biến nên Ä‘ang tìm tập tin «%s=%s»" #: main.c:1074 msgid "floating point exception" msgstr "ngoại lệ Ä‘iểm phù Ä‘á»™ng" #: main.c:1081 msgid "fatal error: internal error" msgstr "lá»—i nghiêm trá»ng: lá»—i ná»™i bá»™" #: main.c:1132 #, c-format msgid "no pre-opened fd %d" msgstr "không có «fd %d» đã mở trÆ°á»›c" #: main.c:1139 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "không mở được «/dev/null» trÆ°á»›c cho «fd %d»" #: main.c:1162 main.c:1171 #, c-format msgid "could not find groups: %s" msgstr "không tìm được nhóm: %s" #: msg.c:54 #, c-format msgid "cmd. line:" msgstr "dòng lệnh:" #: msg.c:120 msgid "warning: " msgstr "cảnh báo:" #: msg.c:142 msgid "error: " msgstr "lá»—i: " #: msg.c:178 msgid "fatal: " msgstr "nghiêm trá»ng:" #: node.c:59 node.c:66 node.c:75 node.c:90 node.c:119 msgid "can't convert string to float" msgstr "không thể chuyển đổi chuá»—i sang Ä‘iá»u lÆ¡ lá»­ng" #: node.c:414 msgid "backslash at end of string" msgstr "xuyệc ngoặc tại kết thức chuá»—i" #: node.c:604 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX không cho phép Ä‘iá»u thoát «\\x»" #: node.c:610 msgid "no hex digits in `\\x' escape sequence" msgstr "không có số thập lúc phân trong dây thoát «\\x»" #: node.c:644 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "dây thoát «\\%c» được xá»­ lý là «%c» giản dị" #: posix/gawkmisc.c:172 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)" msgstr "" "%s %s «%s»: không lập được «close-on-exec» (đóng má»™t khi thá»±c hiện) (fcntl: %" "s)" #: profile.c:91 #, c-format msgid "could not open `%s' for writing: %s" msgstr "không mở được «%s» để ghi: %s" #: profile.c:467 #, c-format msgid "internal error: %s with null vname" msgstr "lá»—i ná»™i bá»™: «%s» vá»›i vname (tên biến) vô giá trị" #: profile.c:531 msgid "# treated internally as `delete'" msgstr "# được xá»­ lý ná»™i bá»™ là «xóa bá»Â»" #: profile.c:1168 #, c-format msgid "# this is a dynamically loaded extension function" msgstr "# đây là má»™t chức năng mở rá»™ng được tải má»™t cách Ä‘á»™ng" #: profile.c:1199 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# tiểu sở sÆ¡ lược gawk, được tạo %s\n" #: profile.c:1202 #, c-format msgid "" "\t# BEGIN block(s)\n" "\n" msgstr "" "\t# khối BEGIN (bắt đầu)\n" "\n" #: profile.c:1212 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" "\t# Quy tắc\n" "\n" #: profile.c:1218 #, c-format msgid "" "\t# END block(s)\n" "\n" msgstr "" "\t# khối END (kết thức)\n" "\n" #: profile.c:1238 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" "\n" "\t# Các chức năng theo thứ tá»± abc\n" #: profile.c:1453 #, c-format msgid "unexpected type %s in prec_level" msgstr "gặp kiểu bất ngỠ«%s» trong «prec_level» (cấp trÆ°á»›c?)" #: regcomp.c:160 msgid "Success" msgstr "Thành công" #: regcomp.c:163 msgid "No match" msgstr "Không khá»›p vá»›i gì" #: regcomp.c:166 msgid "Invalid regular expression" msgstr "Biểu thức chính quy không hợp lệ" #: regcomp.c:169 msgid "Invalid collation character" msgstr "Ký tá»± đối chiếu không hợp lệ" #: regcomp.c:172 msgid "Invalid character class name" msgstr "Tên hạng ký tá»± không hợp lệ" #: regcomp.c:175 msgid "Trailing backslash" msgstr "Có xuyệc ngược theo sau" #: regcomp.c:178 msgid "Invalid back reference" msgstr "Tham chiếu trở lại không hợp lệ" #: regcomp.c:181 msgid "Unmatched [ or [^" msgstr "ChÆ°a khá»›p «[» hay «[^»" #: regcomp.c:184 msgid "Unmatched ( or \\(" msgstr "ChÆ°a khá»›p «(» hay «\\(»" #: regcomp.c:187 msgid "Unmatched \\{" msgstr "ChÆ°a khá»›p «\\{»" #: regcomp.c:190 msgid "Invalid content of \\{\\}" msgstr "Ná»™i dụng «\\{\\}» không hợp lệ" #: regcomp.c:193 msgid "Invalid range end" msgstr "Kết thức miá»n không hợp lệ" #: regcomp.c:196 msgid "Memory exhausted" msgstr "Hết bá»™ nhá»› rồi" #: regcomp.c:199 msgid "Invalid preceding regular expression" msgstr "Biểu thức chính quy Ä‘i trÆ°á»›c không hợp lệ" #: regcomp.c:202 msgid "Premature end of regular expression" msgstr "Kết thức quá sá»›m của biểu thức chính quy" #: regcomp.c:205 msgid "Regular expression too big" msgstr "Biểu thức chính quy quá lá»›n" #: regcomp.c:208 msgid "Unmatched ) or \\)" msgstr "ChÆ°a khá»›p «)» hay «\\)»" #: regcomp.c:688 msgid "No previous regular expression" msgstr "Không có biểu thức chính quy Ä‘i trÆ°á»›c" #~ msgid "delete: illegal use of variable `%s' as array" #~ msgstr "delete: (xóa bá») không cho phép cách dùng biến «%s» là mảng" #~ msgid "asort: first argument is not an array" #~ msgstr "asort: (sắp xếp) đối số đầu không phải là má»™t mảng" #~ msgid "asort: second argument is not an array" #~ msgstr "asort: (sắp xếp) đối số thứ hai không phải là má»™t mảng" #~ msgid "" #~ "\n" #~ "To report bugs, see node `Bugs' in `gawk.info', which is\n" #~ msgstr "" #~ "\n" #~ "Äể thông báo lá»—i, hãy xem phần «Bugs» (lá»—i) trong tập tin «gawk.info», \n" #~ msgid "invalid syntax in name `%s' for variable assignment" #~ msgstr "cú pháp không hợp lệ trong tên «%s» trong Ä‘iá»u gán biến" #~ msgid "internal error: Node_var_array with null vname" #~ msgstr "lá»—i ná»™i bá»™: «Node_var_array» vá»›i vname (tên biến) vô giá trị" #~ msgid "or used in other expression context" #~ msgstr "hoặc được dùng trong ngữ cảnh biểu thức khác" #~ msgid "`%s' is a function, assignment is not allowed" #~ msgstr "«%s» là má»™t chức năng thì không cho phép gán" #~ msgid "BEGIN blocks must have an action part" #~ msgstr "Má»i khối BEGIN (bắt đầu) phải có má»™t phần là hành Ä‘á»™ng" #~ msgid "`nextfile' used in BEGIN or END action" #~ msgstr "" #~ "đã dùng «nextfile» (tập tin kế tiếp) trong hành Ä‘á»™ng «BEGIN» (bắt đầu) " #~ "hay «END» (kết thức)" #~ msgid "non-redirected `getline' undefined inside BEGIN or END action" #~ msgstr "" #~ "trong hành Ä‘á»™ng «BEGIN» (đầu) hay «END» (kết thức), có «getline» (lấy " #~ "dòng) không được chuyển hÆ°á»›ng và chÆ°a được định nghÄ©a." #~ msgid "fptr %x not in tokentab\n" #~ msgstr "«fptr %x» không phải trong «tokentab»\n" #~ msgid "gsub third parameter is not a changeable object" #~ msgstr "tham số thứ ba gsub không phải là má»™t đối tượng có thể thay đổi" #~ msgid "Unfinished \\ escape" #~ msgstr "«\\ escape» chÆ°a xong" #~ msgid "unfinished repeat count" #~ msgstr "việc đếm lần nữa chÆ°a xong" #~ msgid "malformed repeat count" #~ msgstr "việc đếm lần nữa dạng sai" #~ msgid "Unbalanced [" #~ msgstr "ChÆ°a cân bằng «[»" #~ msgid "Unbalanced (" #~ msgstr "ChÆ°a cân bằng «(»" #~ msgid "No regexp syntax bits specified" #~ msgstr "ChÆ°a ghi rõ bit cú pháp biểu thức chính quy" #~ msgid "Unbalanced )" #~ msgstr "ChÆ°a cân bằng «)»" #~ msgid "out of memory" #~ msgstr "hết bá»™ nhá»›" #~ msgid "field %d in FIELDWIDTHS, must be > 0" #~ msgstr "trÆ°á»ng %d trong «FIELDWIDTHS», phải > 0" #~ msgid "function %s called\n" #~ msgstr "đã gá»i chức năng «%s»\n" #~ msgid "internal error: file `%s', line %d\n" #~ msgstr "lá»—i ná»™i bá»™: tập tin «%s», dòng %d\n" EOF cd .. # Now, apply the patch patch -p1 << \EOF diff -urN gawk-3.1.4/ABOUT-NLS gawk-3.1.5/ABOUT-NLS --- gawk-3.1.4/ABOUT-NLS 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/ABOUT-NLS 2005-05-11 18:28:11.000000000 +0300 @@ -1,10 +1,11 @@ -Notes on the Free Translation Project -************************************* +1 Notes on the Free Translation Project +*************************************** Free software is going international! The Free Translation Project is a way to get maintainers of free software, translators, and users all -together, so that will gradually become able to speak many languages. -A few packages already provide translations for their messages. +together, so that free software will gradually become able to speak many +languages. A few packages already provide translations for their +messages. If you found this `ABOUT-NLS' file inside a distribution, you may assume that the distributed package does use GNU `gettext' internally, @@ -15,15 +16,15 @@ Installers will find here some useful hints. These notes also explain how users should proceed for getting the programs to use the available translations. They tell how people wanting to contribute and -work at translations should contact the appropriate team. +work on translations can contact the appropriate team. When reporting bugs in the `intl/' directory or bugs which may be related to internationalization, you should tell about the version of `gettext' which is used. The information can be found in the `intl/VERSION' file, in internationalized packages. -Quick configuration advice -========================== +1.1 Quick configuration advice +============================== If you want to exploit the full power of internationalization, you should configure it using @@ -45,8 +46,8 @@ you have installed a recent copy of the GNU gettext package with the included `libintl'. -INSTALL Matters -=============== +1.2 INSTALL Matters +=================== Some packages are "localizable" when properly installed; the programs they contain can be made to speak your own native language. Most such @@ -55,27 +56,27 @@ By default, this package will be installed to allow translation of messages. It will automatically detect whether the system already -provides the GNU `gettext' functions. If not, the GNU `gettext' own -library will be used. This library is wholly contained within this -package, usually in the `intl/' subdirectory, so prior installation of -the GNU `gettext' package is _not_ required. Installers may use -special options at configuration time for changing the default -behaviour. The commands: +provides the GNU `gettext' functions. If not, the included GNU +`gettext' library will be used. This library is wholly contained +within this package, usually in the `intl/' subdirectory, so prior +installation of the GNU `gettext' package is _not_ required. +Installers may use special options at configuration time for changing +the default behaviour. The commands: ./configure --with-included-gettext ./configure --disable-nls -will respectively bypass any pre-existing `gettext' to use the +will, respectively, bypass any pre-existing `gettext' to use the internationalizing routines provided within this package, or else, _totally_ disable translation of messages. When you already have GNU `gettext' installed on your system and run configure without an option for your new package, `configure' will probably detect the previously built and installed `libintl.a' file and -will decide to use this. This might be not what is desirable. You -should use the more recent version of the GNU `gettext' library. I.e. -if the file `intl/VERSION' shows that the library which comes with this -package is more recent, you should use +will decide to use this. This might not be desirable. You should use +the more recent version of the GNU `gettext' library. I.e. if the file +`intl/VERSION' shows that the library which comes with this package is +more recent, you should use ./configure --with-included-gettext @@ -86,7 +87,7 @@ emulation of `gettext' on top of `catgets' could not provide all the extensions of the GNU `gettext' library. - Internationalized packages have usually many `po/LL.po' files, where + Internationalized packages usually have many `po/LL.po' files, where LL gives an ISO 639 two-letter code identifying the language. Unless translations have been forbidden at `configure' time by using the `--disable-nls' switch, all available translations are installed @@ -95,8 +96,8 @@ `LINGUAS' should then contain a space separated list of two-letter codes, stating which languages are allowed. -Using This Package -================== +1.3 Using This Package +====================== As a user, if your language has been installed for this package, you only have to set the `LANG' environment variable to the appropriate @@ -144,8 +145,8 @@ to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT' (Portuguese as spoken in Portugal) in this context. -Translating Teams -================= +1.4 Translating Teams +===================== For the Free Translation Project to be a success, we need interested people who like their own language and write it well, and who are also @@ -174,562 +175,779 @@ the terminology in use. Proven linguistic skill are praised more than programming skill, here. -Available Packages -================== +1.5 Available Packages +====================== Languages are not equally supported in all packages. The following -matrix shows the current state of internationalization, as of January -2004. The matrix shows, in regard of each package, for which languages +matrix shows the current state of internationalization, as of April +2005. The matrix shows, in regard of each package, for which languages PO files have been submitted to translation coordination, with a translation percentage of at least 50%. - Ready PO files af am ar az be bg bs ca cs da de el en en_GB eo es - +----------------------------------------------------+ - a2ps | [] [] [] [] | - aegis | () | - ant-phone | () | - anubis | | - ap-utils | | - aspell | [] | - bash | [] [] [] [] | - batchelor | | - bfd | [] [] | - binutils | [] [] | - bison | [] [] [] | - bluez-pin | [] [] [] | - clisp | | - clisp | [] [] [] | - console-tools | [] [] | - coreutils | [] [] [] [] | - cpio | [] [] [] | - darkstat | [] () [] | - diffutils | [] [] [] [] [] [] [] | - e2fsprogs | [] [] [] | - enscript | [] [] [] [] | - error | [] [] [] [] [] | - fetchmail | [] () [] [] [] [] | - fileutils | [] [] [] | - findutils | [] [] [] [] [] [] [] | - flex | [] [] [] [] | - fslint | | - gas | [] | - gawk | [] [] [] [] | - gbiff | [] | - gcal | [] | - gcc | [] [] | - gettext | [] [] [] [] [] | - gettext-examples | [] [] [] [] | - gettext-runtime | [] [] [] [] [] | - gettext-tools | [] [] [] | - gimp-print | [] [] [] [] [] | - gliv | | - glunarclock | [] [] | - gnubiff | [] | - gnucash | [] () [] [] | - gnucash-glossary | [] () [] | - gnupg | [] () [] [] [] [] | - gpe-aerial | [] | - gpe-beam | [] [] | - gpe-calendar | [] [] | - gpe-clock | [] [] | - gpe-conf | [] [] | - gpe-contacts | [] [] | - gpe-edit | [] | - gpe-go | [] | - gpe-login | [] [] | - gpe-ownerinfo | [] [] | - gpe-sketchbook | [] [] | - gpe-su | [] [] | - gpe-taskmanager | [] [] | - gpe-timesheet | [] | - gpe-today | [] [] | - gpe-todo | [] [] | - gphoto2 | [] [] [] [] | - gprof | [] [] [] | - gpsdrive | () () () | - gramadoir | [] | - grep | [] [] [] [] [] [] | - gretl | [] | - gtick | [] () | - hello | [] [] [] [] [] [] | - id-utils | [] [] | - indent | [] [] [] [] | - iso_3166 | [] [] [] [] [] [] [] [] [] [] | - iso_3166_1 | [] [] [] [] [] [] | - iso_3166_2 | | - iso_3166_3 | [] | - iso_4217 | [] [] [] [] | - iso_639 | | - jpilot | [] [] [] | - jtag | | - jwhois | [] | - kbd | [] [] [] [] [] | - latrine | () | - ld | [] [] | - libc | [] [] [] [] [] [] | - libgpewidget | [] [] | - libiconv | [] [] [] [] [] | - lifelines | [] () | - lilypond | [] | - lingoteach | | - lingoteach_lessons | () () | - lynx | [] [] [] [] | - m4 | [] [] [] [] | - mailutils | [] [] | - make | [] [] [] | - man-db | [] () [] [] () | - minicom | [] [] [] | - mysecretdiary | [] [] [] | - nano | [] () [] [] [] | - nano_1_0 | [] () [] [] [] | - opcodes | [] | - parted | [] [] [] [] [] | - ptx | [] [] [] [] [] | - python | | - radius | [] | - recode | [] [] [] [] [] [] [] | - rpm | [] [] | - screem | | - scrollkeeper | [] [] [] [] [] [] | - sed | [] [] [] [] [] [] | - sh-utils | [] [] [] | - shared-mime-info | | - sharutils | [] [] [] [] [] [] | - silky | () | - skencil | [] () [] | - sketch | [] () [] | - soundtracker | [] [] [] | - sp | [] | - tar | [] [] [] [] | - texinfo | [] [] [] | - textutils | [] [] [] [] | - tin | () () | - tp-robot | | - tuxpaint | [] [] [] [] [] [] [] | - unicode-han-tra... | | - unicode-transla... | | - util-linux | [] [] [] [] [] | - vorbis-tools | [] [] [] [] | - wastesedge | () | - wdiff | [] [] [] [] | - wget | [] [] [] [] [] [] | - xchat | [] [] [] [] | - xfree86_xkb_xml | [] [] | - xpad | [] | - +----------------------------------------------------+ - af am ar az be bg bs ca cs da de el en en_GB eo es - 4 0 0 1 9 4 1 40 41 60 78 17 1 5 13 68 - - et eu fa fi fr ga gl he hr hu id is it ja ko lg + Ready PO files af am ar az be bg bs ca cs cy da de el en en_GB +-------------------------------------------------+ - a2ps | [] [] [] () () | - aegis | | - ant-phone | [] | - anubis | [] | - ap-utils | [] | - aspell | [] [] | - bash | [] [] | - batchelor | [] [] | - bfd | [] | - binutils | [] [] | - bison | [] [] [] [] | - bluez-pin | [] [] [] [] [] | - clisp | | - clisp | [] | - console-tools | | - coreutils | [] [] [] [] [] [] | - cpio | [] [] [] [] | - darkstat | () [] [] [] | - diffutils | [] [] [] [] [] [] [] | - e2fsprogs | | - enscript | [] [] | - error | [] [] [] [] | - fetchmail | [] | - fileutils | [] [] [] [] [] [] | - findutils | [] [] [] [] [] [] [] [] [] [] [] | - flex | [] [] [] | - fslint | [] | - gas | [] | - gawk | [] [] [] | - gbiff | [] | - gcal | [] | - gcc | [] | - gettext | [] [] [] | - gettext-examples | [] [] | - gettext-runtime | [] [] [] [] [] | - gettext-tools | [] [] [] | - gimp-print | [] [] | - gliv | () | - glunarclock | [] [] [] [] | - gnubiff | [] | - gnucash | () [] | - gnucash-glossary | [] | - gnupg | [] [] [] [] [] [] [] | - gpe-aerial | [] | - gpe-beam | [] | - gpe-calendar | [] [] [] | - gpe-clock | [] | - gpe-conf | [] | - gpe-contacts | [] [] | - gpe-edit | [] [] | - gpe-go | [] | - gpe-login | [] [] | - gpe-ownerinfo | [] [] [] | - gpe-sketchbook | [] | - gpe-su | [] | - gpe-taskmanager | [] | - gpe-timesheet | [] [] [] | - gpe-today | [] [] | - gpe-todo | [] [] | - gphoto2 | [] [] [] | - gprof | [] [] | - gpsdrive | () () () | - gramadoir | [] [] | - grep | [] [] [] [] [] [] [] [] [] [] [] | - gretl | [] [] | - gtick | [] [] [] | - hello | [] [] [] [] [] [] [] [] [] [] [] [] [] | - id-utils | [] [] [] [] | - indent | [] [] [] [] [] [] [] [] [] | - iso_3166 | [] [] [] [] [] [] [] | - iso_3166_1 | [] [] [] [] [] | + GNUnet | | + a2ps | [] [] [] [] [] | + aegis | () | + ant-phone | () | + anubis | [] | + ap-utils | | + aspell | [] [] [] [] | + bash | [] [] | + batchelor | [] | + bfd | | + bibshelf | [] | + binutils | [] | + bison | [] [] | + bluez-pin | [] [] [] [] | + clisp | [] [] | + console-tools | [] [] | + coreutils | [] [] [] [] | + cpio | | + cpplib | [] [] [] | + darkstat | [] () [] | + dialog | [] [] [] [] [] [] | + diffutils | [] [] [] [] [] | + doodle | [] | + e2fsprogs | [] [] | + enscript | [] [] [] [] | + error | [] [] [] [] | + fetchmail | [] () [] [] [] | + fileutils | [] [] | + findutils | [] [] [] | + flex | [] [] [] | + fslint | [] | + gas | | + gawk | [] [] [] | + gbiff | [] | + gcal | [] | + gcc | [] | + gettext-examples | [] [] [] [] | + gettext-runtime | [] [] [] [] | + gettext-tools | [] [] | + gimp-print | [] [] [] [] | + gip | | + gliv | [] | + glunarclock | | + gmult | [] [] | + gnubiff | () | + gnucash | [] () () [] | + gnucash-glossary | [] () | + gpe-aerial | [] [] | + gpe-beam | [] [] | + gpe-calendar | [] [] | + gpe-clock | [] [] | + gpe-conf | [] [] | + gpe-contacts | | + gpe-edit | [] | + gpe-go | [] | + gpe-login | [] [] | + gpe-ownerinfo | [] [] | + gpe-sketchbook | [] [] | + gpe-su | [] [] | + gpe-taskmanager | [] [] | + gpe-timesheet | [] | + gpe-today | [] [] | + gpe-todo | [] [] | + gphoto2 | [] [] [] [] | + gprof | [] [] | + gpsdrive | () () | + gramadoir | [] [] | + grep | [] [] [] [] [] [] | + gretl | | + gsasl | [] | + gss | | + gst-plugins | [] [] [] [] [] [] | + gstreamer | [] [] [] [] [] | + gtick | [] () | + gtkspell | [] [] [] | + hello | [] [] [] [] | + id-utils | [] [] | + impost | | + indent | [] [] | + iso_3166 | | + iso_3166_1 | [] [] [] [] [] | iso_3166_2 | | - iso_3166_3 | | - iso_4217 | [] [] [] [] [] [] | + iso_3166_3 | [] | + iso_4217 | | iso_639 | | - jpilot | [] () | - jtag | [] | - jwhois | [] [] [] [] | - kbd | [] | - latrine | [] | - ld | [] | - libc | [] [] [] [] [] [] | - libgpewidget | [] [] [] [] | - libiconv | [] [] [] [] [] [] [] [] [] | - lifelines | () | - lilypond | [] | - lingoteach | [] [] | - lingoteach_lessons | | - lynx | [] [] [] [] | - m4 | [] [] [] [] | - mailutils | | - make | [] [] [] [] [] [] | - man-db | () () | - minicom | [] [] [] [] | - mysecretdiary | [] [] | - nano | [] [] [] [] | - nano_1_0 | [] [] [] [] | - opcodes | [] | - parted | [] [] [] | - ptx | [] [] [] [] [] [] [] | + jpilot | [] | + jtag | | + jwhois | | + kbd | [] [] [] [] | + latrine | () | + ld | [] | + libc | [] [] [] [] [] | + libextractor | | + libgpewidget | [] [] [] | + libgsasl | | + libiconv | [] [] [] [] [] | + libidn | | + lifelines | [] () | + lilypond | [] | + lingoteach | | + lynx | [] [] [] [] | + m4 | [] [] [] [] | + mailutils | [] | + make | [] [] | + man-db | [] () [] [] | + minicom | [] [] | + mysecretdiary | [] [] | + nano | [] () [] | + nano_1_0 | [] () [] [] | + opcodes | [] | + parted | [] [] [] [] | + psmisc | | + ptx | [] [] [] | + pwdutils | | python | | - radius | [] | - recode | [] [] [] [] [] [] | - rpm | [] [] | + radius | [] | + recode | [] [] [] [] [] | + rpm | [] [] | screem | | - scrollkeeper | [] | - sed | [] [] [] [] [] [] [] [] [] | - sh-utils | [] [] [] [] [] [] [] | - shared-mime-info | [] [] [] | - sharutils | [] [] [] [] [] | - silky | () [] () () | - skencil | [] | - sketch | [] | - soundtracker | [] [] | - sp | [] () | - tar | [] [] [] [] [] [] [] [] [] | - texinfo | [] [] [] [] | - textutils | [] [] [] [] [] [] | - tin | [] () | - tp-robot | [] | - tuxpaint | [] [] [] [] [] [] [] [] [] | + scrollkeeper | [] [] [] [] [] [] [] [] | + sed | [] [] | + sh-utils | [] [] | + shared-mime-info | [] [] | + sharutils | [] [] [] [] [] | + silky | | + skencil | [] () | + sketch | [] () | + solfege | [] | + soundtracker | [] [] | + sp | [] | + stardict | [] | + tar | | + texinfo | [] [] | + textutils | [] [] [] | + tin | () () | + tp-robot | [] | + tuxpaint | [] [] [] [] [] [] [] | unicode-han-tra... | | - unicode-transla... | [] [] | - util-linux | [] [] [] [] () [] | - vorbis-tools | [] | - wastesedge | () | - wdiff | [] [] [] [] [] [] | - wget | [] [] [] [] [] [] [] | - xchat | [] [] [] | - xfree86_xkb_xml | [] [] | - xpad | [] [] | + unicode-transla... | | + util-linux | [] [] [] [] | + vorbis-tools | [] [] [] [] | + wastesedge | () | + wdiff | [] [] [] [] | + wget | [] [] [] [] [] [] | + xchat | [] [] [] [] | + xkeyboard-config | | + xpad | | +-------------------------------------------------+ - et eu fa fi fr ga gl he hr hu id is it ja ko lg - 22 2 1 26 106 28 24 8 10 41 33 1 26 33 12 0 - - lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru - +-----------------------------------------------------+ - a2ps | [] [] () () [] [] [] | - aegis | () () () | - ant-phone | [] [] | - anubis | [] [] [] [] [] [] | - ap-utils | [] () [] | - aspell | [] | - bash | [] [] [] | - batchelor | [] | - bfd | [] | - binutils | [] | - bison | [] [] [] [] [] | - bluez-pin | [] [] [] | - clisp | | - clisp | [] | - console-tools | [] | - coreutils | [] [] | - cpio | [] [] [] [] [] | - darkstat | [] [] [] [] | - diffutils | [] [] [] [] [] [] | - e2fsprogs | [] | - enscript | [] [] [] [] | - error | [] [] [] | - fetchmail | [] [] () [] | - fileutils | [] [] [] | - findutils | [] [] [] [] [] | - flex | [] [] [] [] | - fslint | [] [] | - gas | | - gawk | [] [] [] | - gbiff | [] [] | - gcal | | - gcc | | - gettext | [] [] [] | - gettext-examples | [] [] [] | - gettext-runtime | [] [] [] [] | - gettext-tools | [] [] | - gimp-print | [] | - gliv | [] [] [] | - glunarclock | [] [] [] [] | - gnubiff | [] | - gnucash | [] [] () [] | - gnucash-glossary | [] [] | - gnupg | [] | - gpe-aerial | [] [] [] [] | - gpe-beam | [] [] [] [] | - gpe-calendar | [] [] [] [] | - gpe-clock | [] [] [] [] | - gpe-conf | [] [] [] [] | - gpe-contacts | [] [] [] [] | - gpe-edit | [] [] [] [] | - gpe-go | [] [] [] | - gpe-login | [] [] [] [] | - gpe-ownerinfo | [] [] [] [] | - gpe-sketchbook | [] [] [] [] | - gpe-su | [] [] [] [] | - gpe-taskmanager | [] [] [] [] | - gpe-timesheet | [] [] [] [] | - gpe-today | [] [] [] [] | - gpe-todo | [] [] [] [] | - gphoto2 | [] | - gprof | [] [] | - gpsdrive | () () [] | - gramadoir | () [] | - grep | [] [] [] [] [] | - gretl | | - gtick | [] [] [] | - hello | [] [] [] [] [] [] [] [] [] [] | - id-utils | [] [] [] [] | - indent | [] [] [] [] | - iso_3166 | [] [] [] | - iso_3166_1 | [] [] | - iso_3166_2 | | - iso_3166_3 | [] | - iso_4217 | [] [] [] [] [] [] [] [] | - iso_639 | [] | - jpilot | () () | - jtag | | - jwhois | [] [] [] [] () | - kbd | [] [] [] | - latrine | [] | - ld | | - libc | [] [] [] [] | - libgpewidget | [] [] [] | - libiconv | [] [] [] [] [] | - lifelines | | - lilypond | | - lingoteach | | - lingoteach_lessons | | - lynx | [] [] [] | - m4 | [] [] [] [] [] | - mailutils | [] [] [] | - make | [] [] [] [] | - man-db | [] | - minicom | [] [] [] [] | - mysecretdiary | [] [] [] | - nano | [] [] [] [] [] | - nano_1_0 | [] [] [] [] [] [] | - opcodes | [] [] | - parted | [] [] [] [] | - ptx | [] [] [] [] [] [] [] [] | - python | | - radius | [] [] | - recode | [] [] [] [] | - rpm | [] [] [] | - screem | | - scrollkeeper | [] [] [] [] [] | - sed | [] [] [] | - sh-utils | [] [] | - shared-mime-info | [] [] | - sharutils | [] [] | - silky | () | - skencil | [] [] | - sketch | [] [] | - soundtracker | | - sp | | - tar | [] [] [] [] [] [] | - texinfo | [] [] [] [] | - textutils | [] [] | - tin | | - tp-robot | [] | - tuxpaint | [] [] [] [] [] [] [] [] | - unicode-han-tra... | | - unicode-transla... | | - util-linux | [] [] [] | - vorbis-tools | [] [] [] | - wastesedge | | - wdiff | [] [] [] [] [] | - wget | [] [] [] | - xchat | [] [] [] | - xfree86_xkb_xml | [] [] | - xpad | [] [] | - +-----------------------------------------------------+ - lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru - 1 2 0 3 12 0 10 69 6 7 1 40 26 36 76 63 - - sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu - +-----------------------------------------------------+ - a2ps | [] [] [] [] | 16 - aegis | | 0 - ant-phone | | 3 - anubis | [] [] | 9 - ap-utils | () | 3 - aspell | | 4 - bash | | 9 - batchelor | | 3 - bfd | [] [] | 6 - binutils | [] [] [] | 8 - bison | [] [] | 14 - bluez-pin | [] [] [] | 14 - clisp | | 0 - clisp | | 5 - console-tools | | 3 - coreutils | [] [] [] [] | 16 - cpio | [] [] | 14 - darkstat | [] [] [] () () | 12 - diffutils | [] [] [] | 23 - e2fsprogs | [] [] | 6 - enscript | [] [] | 12 - error | [] [] [] | 15 - fetchmail | [] [] | 11 - fileutils | [] [] [] [] [] | 17 - findutils | [] [] [] [] [] [] | 29 - flex | [] [] | 13 - fslint | | 3 - gas | [] | 3 - gawk | [] [] | 12 - gbiff | | 4 - gcal | [] [] | 4 - gcc | [] | 4 - gettext | [] [] [] [] [] | 16 - gettext-examples | [] [] [] [] [] | 14 - gettext-runtime | [] [] [] [] [] [] [] [] | 22 - gettext-tools | [] [] [] [] [] [] | 14 - gimp-print | [] [] | 10 - gliv | | 3 - glunarclock | [] [] [] | 13 - gnubiff | | 3 - gnucash | [] [] | 9 - gnucash-glossary | [] [] [] | 8 - gnupg | [] [] [] [] | 17 - gpe-aerial | [] | 7 - gpe-beam | [] | 8 - gpe-calendar | [] [] [] [] | 13 - gpe-clock | [] [] [] | 10 - gpe-conf | [] [] | 9 - gpe-contacts | [] [] [] | 11 - gpe-edit | [] [] [] [] [] | 12 - gpe-go | | 5 - gpe-login | [] [] [] [] [] | 13 - gpe-ownerinfo | [] [] [] [] | 13 - gpe-sketchbook | [] [] | 9 - gpe-su | [] [] [] | 10 - gpe-taskmanager | [] [] [] | 10 - gpe-timesheet | [] [] [] [] | 12 - gpe-today | [] [] [] [] [] | 13 - gpe-todo | [] [] [] [] | 12 - gphoto2 | [] [] [] | 11 - gprof | [] [] | 9 - gpsdrive | [] [] | 3 - gramadoir | [] | 5 - grep | [] [] [] [] | 26 - gretl | | 3 - gtick | | 7 - hello | [] [] [] [] [] | 34 - id-utils | [] [] | 12 - indent | [] [] [] [] | 21 - iso_3166 | [] [] [] [] [] [] [] | 27 - iso_3166_1 | [] [] [] | 16 - iso_3166_2 | | 0 - iso_3166_3 | | 2 - iso_4217 | [] [] [] [] [] [] | 24 - iso_639 | | 1 - jpilot | [] [] [] [] [] | 9 - jtag | [] | 2 - jwhois | () [] [] | 11 - kbd | [] [] | 11 - latrine | | 2 - ld | [] [] | 5 - libc | [] [] [] [] | 20 - libgpewidget | [] [] [] [] | 13 - libiconv | [] [] [] [] [] [] [] [] | 27 - lifelines | [] | 2 - lilypond | [] | 3 - lingoteach | | 2 - lingoteach_lessons | () | 0 - lynx | [] [] [] | 14 - m4 | [] [] | 15 - mailutils | | 5 - make | [] [] [] | 16 - man-db | [] | 5 - minicom | | 11 - mysecretdiary | [] [] | 10 - nano | [] [] [] [] | 17 - nano_1_0 | [] [] [] | 17 - opcodes | [] [] | 6 - parted | [] [] [] | 15 - ptx | [] [] | 22 - python | | 0 - radius | | 4 - recode | [] [] [] | 20 - rpm | [] [] | 9 - screem | [] [] | 2 - scrollkeeper | [] [] [] | 15 - sed | [] [] [] [] [] [] | 24 - sh-utils | [] [] | 14 - shared-mime-info | [] [] | 7 - sharutils | [] [] [] [] | 17 - silky | () | 3 - skencil | [] | 6 - sketch | [] | 6 - soundtracker | [] [] | 7 - sp | [] | 3 - tar | [] [] [] [] [] | 24 - texinfo | [] [] [] | 14 - textutils | [] [] [] [] | 16 - tin | | 1 - tp-robot | | 2 - tuxpaint | [] [] [] [] [] | 29 - unicode-han-tra... | | 0 - unicode-transla... | | 2 - util-linux | [] [] | 15 - vorbis-tools | | 8 - wastesedge | | 0 - wdiff | [] [] [] | 18 - wget | [] [] [] [] [] [] [] [] | 24 - xchat | [] [] [] [] [] | 15 - xfree86_xkb_xml | [] [] [] [] [] | 11 - xpad | | 5 - +-----------------------------------------------------+ - 63 teams sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu - 131 domains 47 19 28 83 0 0 59 13 1 1 11 0 22 22 0 1373 + af am ar az be bg bs ca cs cy da de el en en_GB + 10 0 0 2 7 4 0 41 43 3 52 90 20 1 15 + + eo es et eu fa fi fr ga gl he hr hu id is it + +-----------------------------------------------+ + GNUnet | | + a2ps | [] [] [] () | + aegis | | + ant-phone | [] | + anubis | [] | + ap-utils | [] | + aspell | [] [] | + bash | [] [] [] [] | + batchelor | [] [] | + bfd | [] | + bibshelf | [] [] [] | + binutils | [] [] | + bison | [] [] [] [] [] [] | + bluez-pin | [] [] [] [] [] [] | + clisp | [] [] | + console-tools | | + coreutils | [] [] [] [] [] | + cpio | [] [] | + cpplib | [] [] | + darkstat | [] () [] [] [] | + dialog | [] [] [] [] [] [] [] [] | + diffutils | [] [] [] [] [] [] [] [] [] [] | + doodle | [] [] | + e2fsprogs | [] [] [] | + enscript | [] [] | + error | [] [] [] [] [] | + fetchmail | [] | + fileutils | [] [] [] [] [] [] | + findutils | [] [] [] [] [] | + flex | [] [] [] | + fslint | [] | + gas | [] [] | + gawk | [] [] [] [] | + gbiff | [] | + gcal | [] [] | + gcc | [] | + gettext-examples | [] [] [] [] | + gettext-runtime | [] [] [] [] [] [] | + gettext-tools | [] [] [] | + gimp-print | [] [] | + gip | [] [] [] | + gliv | () | + glunarclock | [] [] [] | + gmult | [] [] [] | + gnubiff | () () | + gnucash | [] () [] | + gnucash-glossary | [] [] | + gpe-aerial | [] [] | + gpe-beam | [] [] | + gpe-calendar | [] [] [] [] | + gpe-clock | [] [] [] | + gpe-conf | [] | + gpe-contacts | [] | + gpe-edit | [] [] | + gpe-go | [] [] | + gpe-login | [] [] [] | + gpe-ownerinfo | [] [] [] [] [] | + gpe-sketchbook | [] [] | + gpe-su | [] [] [] | + gpe-taskmanager | [] [] [] | + gpe-timesheet | [] [] [] [] | + gpe-today | [] [] [] [] | + gpe-todo | [] [] [] | + gphoto2 | [] [] [] [] [] | + gprof | [] [] [] | + gpsdrive | () () [] () | + gramadoir | [] [] | + grep | [] [] [] [] [] [] [] [] [] [] [] [] | + gretl | [] [] [] | + gsasl | [] [] [] | + gss | [] | + gst-plugins | [] [] [] | + gstreamer | [] | + gtick | [] [] [] [] [] | + gtkspell | [] [] [] [] [] [] | + hello | [] [] [] [] [] [] [] [] [] [] [] [] [] [] | + id-utils | [] [] [] [] | + impost | [] [] | + indent | [] [] [] [] [] [] [] [] [] [] [] | + iso_3166 | [] [] [] | + iso_3166_1 | [] [] [] [] [] [] [] | + iso_3166_2 | [] | + iso_3166_3 | [] | + iso_4217 | [] [] [] | + iso_639 | [] [] [] [] | + jpilot | [] [] | + jtag | [] | + jwhois | [] [] [] [] [] | + kbd | [] [] | + latrine | [] [] [] | + ld | [] [] | + libc | [] [] [] [] [] | + libextractor | | + libgpewidget | [] [] [] [] [] | + libgsasl | [] [] | + libiconv | [] [] [] [] [] [] [] [] [] [] [] | + libidn | [] [] | + lifelines | () | + lilypond | [] | + lingoteach | [] [] [] | + lynx | [] [] [] | + m4 | [] [] [] [] | + mailutils | [] [] | + make | [] [] [] [] [] [] [] | + man-db | () | + minicom | [] [] [] [] | + mysecretdiary | [] [] [] | + nano | [] [] () [] [] | + nano_1_0 | [] [] [] [] [] | + opcodes | [] [] | + parted | [] [] [] [] | + psmisc | [] [] | + ptx | [] [] [] [] [] [] [] [] [] | + pwdutils | | + python | | + radius | [] [] | + recode | [] [] [] [] [] [] [] [] | + rpm | [] | + screem | | + scrollkeeper | [] [] [] | + sed | [] [] [] [] [] | + sh-utils | [] [] [] [] [] [] [] | + shared-mime-info | [] [] [] [] [] [] | + sharutils | [] [] [] [] [] [] [] | + silky | [] | + skencil | [] [] | + sketch | [] [] | + solfege | [] | + soundtracker | [] [] [] | + sp | [] | + stardict | [] | + tar | [] [] [] [] [] | + texinfo | [] [] [] | + textutils | [] [] [] [] [] | + tin | [] () | + tp-robot | [] [] | + tuxpaint | [] [] [] [] [] [] [] [] [] | + unicode-han-tra... | | + unicode-transla... | [] [] | + util-linux | [] [] [] [] [] [] | + vorbis-tools | [] [] | + wastesedge | () | + wdiff | [] [] [] [] [] [] [] [] | + wget | [] [] [] [] [] [] [] [] [] [] | + xchat | [] [] [] [] [] | + xkeyboard-config | | + xpad | [] [] [] | + +-----------------------------------------------+ + eo es et eu fa fi fr ga gl he hr hu id is it + 13 85 21 15 2 35 115 45 17 8 6 40 27 1 45 + + ja ko ku lg lt lv mk mn ms mt nb nl nn no nso + +-----------------------------------------------+ + GNUnet | | + a2ps | () [] [] () | + aegis | () | + ant-phone | [] | + anubis | [] [] [] | + ap-utils | | + aspell | [] [] | + bash | [] | + batchelor | [] | + bfd | | + bibshelf | | + binutils | | + bison | [] [] [] | + bluez-pin | [] | + clisp | [] | + console-tools | | + coreutils | [] [] | + cpio | | + cpplib | | + darkstat | [] [] | + dialog | [] | + diffutils | [] [] [] | + doodle | | + e2fsprogs | | + enscript | [] | + error | [] | + fetchmail | [] [] | + fileutils | [] [] | + findutils | [] | + flex | [] [] | + fslint | [] | + gas | | + gawk | [] [] | + gbiff | [] | + gcal | | + gcc | | + gettext-examples | [] [] | + gettext-runtime | [] [] [] | + gettext-tools | [] [] | + gimp-print | [] [] | + gip | [] | + gliv | [] | + glunarclock | [] [] | + gmult | [] | + gnubiff | | + gnucash | () () [] | + gnucash-glossary | [] | + gpe-aerial | [] | + gpe-beam | [] | + gpe-calendar | [] | + gpe-clock | [] | + gpe-conf | [] | + gpe-contacts | | + gpe-edit | [] | + gpe-go | [] | + gpe-login | [] | + gpe-ownerinfo | [] | + gpe-sketchbook | [] | + gpe-su | [] | + gpe-taskmanager | [] [] | + gpe-timesheet | [] | + gpe-today | [] | + gpe-todo | [] | + gphoto2 | [] [] | + gprof | | + gpsdrive | () () () | + gramadoir | () | + grep | [] [] [] | + gretl | | + gsasl | [] | + gss | | + gst-plugins | [] | + gstreamer | [] | + gtick | [] | + gtkspell | [] [] | + hello | [] [] [] [] [] [] [] [] | + id-utils | [] | + impost | | + indent | [] [] | + iso_3166 | [] | + iso_3166_1 | [] [] | + iso_3166_2 | [] | + iso_3166_3 | [] | + iso_4217 | [] [] [] | + iso_639 | [] [] [] | + jpilot | () () () | + jtag | | + jwhois | [] | + kbd | [] | + latrine | [] | + ld | | + libc | [] [] [] [] [] | + libextractor | | + libgpewidget | [] | + libgsasl | [] | + libiconv | [] | + libidn | | + lifelines | [] | + lilypond | [] | + lingoteach | [] | + lynx | [] [] | + m4 | [] [] | + mailutils | | + make | [] [] [] | + man-db | () | + minicom | [] | + mysecretdiary | [] | + nano | [] [] | + nano_1_0 | [] [] [] | + opcodes | [] | + parted | [] [] | + psmisc | [] [] | + ptx | [] [] [] | + pwdutils | | + python | | + radius | | + recode | [] | + rpm | [] [] | + screem | [] | + scrollkeeper | [] [] [] | + sed | [] [] | + sh-utils | [] [] | + shared-mime-info | [] [] [] [] | + sharutils | [] [] | + silky | [] | + skencil | | + sketch | | + solfege | [] [] | + soundtracker | | + sp | () | + stardict | [] [] | + tar | [] [] | + texinfo | [] [] [] | + textutils | [] [] [] | + tin | | + tp-robot | [] | + tuxpaint | [] [] [] [] [] [] | + unicode-han-tra... | | + unicode-transla... | | + util-linux | [] [] | + vorbis-tools | [] | + wastesedge | [] | + wdiff | [] [] | + wget | [] [] | + xchat | [] [] [] [] | + xkeyboard-config | [] | + xpad | [] | + +-----------------------------------------------+ + ja ko ku lg lt lv mk mn ms mt nb nl nn no nso + 33 11 1 1 1 2 2 3 11 0 15 96 7 5 0 + + or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta + +-------------------------------------------------+ + GNUnet | | + a2ps | () [] [] [] [] [] [] | + aegis | () () | + ant-phone | [] | + anubis | [] [] [] | + ap-utils | () | + aspell | [] [] | + bash | [] [] [] | + batchelor | [] | + bfd | | + bibshelf | | + binutils | [] [] | + bison | [] [] [] [] [] | + bluez-pin | [] [] [] [] [] [] [] [] | + clisp | [] | + console-tools | [] | + coreutils | [] [] [] [] | + cpio | [] [] | + cpplib | | + darkstat | [] [] [] [] [] [] | + dialog | [] [] [] [] [] [] [] | + diffutils | [] [] [] [] [] [] | + doodle | [] | + e2fsprogs | [] [] | + enscript | [] [] [] [] | + error | [] [] [] | + fetchmail | [] () [] [] [] | + fileutils | [] [] [] [] [] | + findutils | [] [] [] [] [] [] | + flex | [] [] [] [] [] | + fslint | [] [] [] | + gas | | + gawk | [] [] [] [] | + gbiff | [] | + gcal | [] | + gcc | | + gettext-examples | [] [] [] [] [] [] | + gettext-runtime | [] [] [] [] [] [] [] | + gettext-tools | [] [] [] [] [] [] [] | + gimp-print | [] [] | + gip | [] [] [] | + gliv | [] [] [] | + glunarclock | [] [] [] [] [] [] | + gmult | [] [] [] [] | + gnubiff | () [] | + gnucash | () [] [] [] [] | + gnucash-glossary | [] [] [] | + gpe-aerial | [] [] [] [] [] [] | + gpe-beam | [] [] [] [] [] [] | + gpe-calendar | [] [] [] [] [] [] [] | + gpe-clock | [] [] [] [] [] [] [] | + gpe-conf | [] [] [] [] [] [] | + gpe-contacts | [] [] [] | + gpe-edit | [] [] [] [] [] [] [] | + gpe-go | [] [] [] [] [] | + gpe-login | [] [] [] [] [] [] [] | + gpe-ownerinfo | [] [] [] [] [] [] [] | + gpe-sketchbook | [] [] [] [] [] [] [] | + gpe-su | [] [] [] [] [] [] [] | + gpe-taskmanager | [] [] [] [] [] [] [] | + gpe-timesheet | [] [] [] [] [] [] [] | + gpe-today | [] [] [] [] [] [] [] | + gpe-todo | [] [] [] [] [] [] [] | + gphoto2 | [] [] [] [] | + gprof | [] [] [] | + gpsdrive | [] | + gramadoir | [] | + grep | [] [] [] [] [] [] [] | + gretl | [] | + gsasl | [] [] [] [] [] | + gss | [] [] [] | + gst-plugins | [] [] [] [] | + gstreamer | [] [] [] [] | + gtick | [] [] [] | + gtkspell | [] [] [] [] [] [] | + hello | [] [] [] [] [] [] [] | + id-utils | [] [] [] [] | + impost | | + indent | [] [] [] [] [] [] | + iso_3166 | [] [] [] [] [] | + iso_3166_1 | [] [] [] [] | + iso_3166_2 | | + iso_3166_3 | [] [] [] | + iso_4217 | [] [] | + iso_639 | [] [] [] | + jpilot | | + jtag | [] | + jwhois | [] [] [] () () | + kbd | [] [] [] | + latrine | [] [] | + ld | [] | + libc | [] [] [] [] [] | + libextractor | [] | + libgpewidget | [] [] [] [] [] [] | + libgsasl | [] [] [] | + libiconv | [] [] [] [] [] [] [] [] [] [] | + libidn | [] () | + lifelines | [] [] | + lilypond | [] | + lingoteach | [] | + lynx | [] [] [] | + m4 | [] [] [] [] [] | + mailutils | [] [] [] | + make | [] [] [] [] | + man-db | [] [] | + minicom | [] [] [] [] | + mysecretdiary | [] [] [] [] | + nano | [] [] [] | + nano_1_0 | [] [] [] [] | + opcodes | [] [] | + parted | [] [] [] [] | + psmisc | [] [] | + ptx | [] [] [] [] [] [] | + pwdutils | [] | + python | | + radius | [] [] | + recode | [] [] [] [] [] [] | + rpm | [] [] [] [] | + screem | | + scrollkeeper | [] [] [] [] [] [] [] | + sed | [] [] [] [] [] [] [] [] | + sh-utils | [] [] [] | + shared-mime-info | [] [] [] [] [] | + sharutils | [] [] [] | + silky | [] | + skencil | [] [] [] | + sketch | [] [] [] | + solfege | | + soundtracker | [] [] | + sp | | + stardict | [] [] | + tar | [] [] [] [] | + texinfo | [] [] [] [] | + textutils | [] [] [] | + tin | | + tp-robot | [] | + tuxpaint | [] [] [] [] [] [] [] [] | + unicode-han-tra... | | + unicode-transla... | | + util-linux | [] [] [] | + vorbis-tools | [] [] | + wastesedge | | + wdiff | [] [] [] [] [] [] | + wget | [] [] [] [] [] [] [] [] [] | + xchat | [] [] [] [] [] [] | + xkeyboard-config | | + xpad | | + +-------------------------------------------------+ + or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta + 1 0 48 30 58 6 79 71 5 45 13 12 50 86 0 + + tg th tk tr uk ven vi wa xh zh_CN zh_TW zu + +--------------------------------------------+ + GNUnet | | 0 + a2ps | [] [] [] | 19 + aegis | | 0 + ant-phone | [] | 4 + anubis | [] | 9 + ap-utils | () | 1 + aspell | [] [] [] | 13 + bash | | 10 + batchelor | [] [] | 7 + bfd | | 1 + bibshelf | [] | 5 + binutils | [] | 6 + bison | [] | 17 + bluez-pin | [] [] [] [] [] | 24 + clisp | | 7 + console-tools | [] | 4 + coreutils | [] | 16 + cpio | [] [] | 6 + cpplib | [] [] | 7 + darkstat | [] () () | 15 + dialog | [] [] [] | 25 + diffutils | [] [] [] [] | 28 + doodle | [] | 5 + e2fsprogs | [] | 8 + enscript | [] | 12 + error | [] [] [] | 16 + fetchmail | [] | 12 + fileutils | [] [] [] | 18 + findutils | [] [] | 17 + flex | [] [] | 15 + fslint | [] | 7 + gas | [] | 3 + gawk | [] | 14 + gbiff | | 4 + gcal | [] | 5 + gcc | [] | 3 + gettext-examples | [] [] [] [] | 20 + gettext-runtime | [] [] [] [] [] | 25 + gettext-tools | [] [] [] | 17 + gimp-print | [] | 11 + gip | [] | 8 + gliv | [] | 6 + glunarclock | [] [] | 13 + gmult | [] [] [] | 13 + gnubiff | [] | 3 + gnucash | () [] | 10 + gnucash-glossary | [] | 8 + gpe-aerial | [] [] | 13 + gpe-beam | [] [] | 13 + gpe-calendar | [] [] [] [] | 18 + gpe-clock | [] [] [] [] | 17 + gpe-conf | [] [] | 12 + gpe-contacts | [] [] | 6 + gpe-edit | [] [] [] [] | 15 + gpe-go | [] [] | 11 + gpe-login | [] [] [] [] [] | 18 + gpe-ownerinfo | [] [] [] [] | 19 + gpe-sketchbook | [] [] | 14 + gpe-su | [] [] [] | 16 + gpe-taskmanager | [] [] [] | 17 + gpe-timesheet | [] [] [] [] | 17 + gpe-today | [] [] [] [] [] | 19 + gpe-todo | [] [] [] | 16 + gphoto2 | [] [] | 17 + gprof | [] [] | 10 + gpsdrive | | 2 + gramadoir | [] | 6 + grep | [] [] [] [] | 32 + gretl | | 4 + gsasl | [] [] | 12 + gss | [] | 5 + gst-plugins | [] [] | 16 + gstreamer | [] [] [] | 14 + gtick | [] | 11 + gtkspell | [] [] [] | 20 + hello | [] [] [] [] | 37 + id-utils | [] [] | 13 + impost | [] | 3 + indent | [] [] [] | 24 + iso_3166 | [] [] [] | 12 + iso_3166_1 | [] [] | 20 + iso_3166_2 | | 2 + iso_3166_3 | [] [] | 8 + iso_4217 | [] [] | 10 + iso_639 | [] [] | 12 + jpilot | [] [] [] | 6 + jtag | | 2 + jwhois | [] [] [] | 12 + kbd | [] [] | 12 + latrine | [] [] | 8 + ld | [] | 5 + libc | [] [] | 22 + libextractor | | 1 + libgpewidget | [] [] | 17 + libgsasl | [] | 7 + libiconv | [] [] [] [] [] | 32 + libidn | [] [] | 5 + lifelines | | 4 + lilypond | [] | 5 + lingoteach | | 5 + lynx | [] [] | 14 + m4 | [] [] | 17 + mailutils | [] | 7 + make | [] [] | 18 + man-db | | 5 + minicom | | 11 + mysecretdiary | [] [] | 12 + nano | | 11 + nano_1_0 | [] [] | 17 + opcodes | [] | 7 + parted | [] [] [] | 17 + psmisc | [] | 7 + ptx | [] [] | 23 + pwdutils | | 1 + python | | 0 + radius | [] | 6 + recode | [] [] | 22 + rpm | [] [] | 11 + screem | | 1 + scrollkeeper | [] [] | 23 + sed | [] [] | 19 + sh-utils | [] | 15 + shared-mime-info | [] [] | 19 + sharutils | [] [] [] | 20 + silky | | 3 + skencil | | 6 + sketch | | 6 + solfege | | 4 + soundtracker | [] | 8 + sp | [] | 3 + stardict | [] [] [] [] | 10 + tar | [] [] | 13 + texinfo | [] [] | 14 + textutils | [] [] [] | 17 + tin | | 1 + tp-robot | [] [] | 7 + tuxpaint | [] [] [] [] | 34 + unicode-han-tra... | | 0 + unicode-transla... | | 2 + util-linux | [] [] | 17 + vorbis-tools | [] | 10 + wastesedge | | 1 + wdiff | [] [] | 22 + wget | [] [] [] [] | 31 + xchat | [] [] [] | 22 + xkeyboard-config | | 1 + xpad | [] | 5 + +--------------------------------------------+ + 72 teams tg th tk tr uk ven vi wa xh zh_CN zh_TW zu + 147 domains 0 0 1 78 29 0 71 16 0 41 20 0 1711 Some counters in the preceding matrix are higher than the number of visible blocks let us expect. This is because a few extra PO files are @@ -742,13 +960,13 @@ lag between the mere existence a PO file and its wide availability in a distribution. - If January 2004 seems to be old, you may fetch a more recent copy of + If April 2005 seems to be old, you may fetch a more recent copy of this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date matrix with full percentage details can be found at `http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'. -Using `gettext' in new packages -=============================== +1.6 Using `gettext' in new packages +=================================== If you are writing a freely available program and want to internationalize it you are welcome to use GNU `gettext' in your diff -urN gawk-3.1.4/COPYING gawk-3.1.5/COPYING --- gawk-3.1.4/COPYING 2003-03-06 11:11:50.000000000 +0200 +++ gawk-3.1.5/COPYING 2005-05-11 18:28:11.000000000 +0300 @@ -2,7 +2,7 @@ Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -305,7 +305,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. diff -urN gawk-3.1.4/ChangeLog gawk-3.1.5/ChangeLog --- gawk-3.1.4/ChangeLog 2004-08-02 12:18:21.000000000 +0300 +++ gawk-3.1.5/ChangeLog 2005-07-26 21:46:32.000000000 +0300 @@ -1,3 +1,799 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + +Tue Jul 26 21:44:54 2005 Arnold D. Robbins + + Copyright dates on all relevant files updated to 2005. + +Wed Jul 6 17:09:02 2005 Arnold D. Robbins + + Minor cleanups: + + * io.c (do_index): Remove unused variables `mbclen', `mbs1' and `mbs2'. + * node.c (wstrstr): Remove unsed variable `j'. + (dump_wstr): `#ifdef' out, not currently needed. + * eval.c (op_assign): Move decl of `t1' and `t2' into a separate block for + the `! HAVE_FMOD' case. Keeps the compiler quiet. Similar for `ltemp'. + +Wed Jul 6 16:51:31 2005 Arnold D. Robbins + + * io.c (close_io): Now takes pointer to boolean parameter indicating + if there was a problem closing standard output or standard error. + Update it in the right places. + * awk.h (close_io): Update the declaration. + * main.c (main): New variable `stdio_problem'. Pass it to `close_io'. + Check the result and exit non-zero if there was a problem. + (usage, version): Print warning message if problems with stdout. + + Unrelated: + + * main.c (main): For call to `setlocale' for LC_MESSAGES, just use + `#ifdef LC_MESSAGES'. Per Bruno Haible . + +Wed Jul 6 16:44:58 2005 Jim Meyering + + * main.c (init_fds): If any of the STDIN_FILENO, STDOUT_FILENO, + STDERR_FILENO are initially closed, reopen them with permissions + contrary to common usage so that any reasonable attempt to use + them will evoke the same sort of error as reading or writing to + a closed file descriptor would. + +Mon Jul 4 09:38:29 2005 Arnold D. Robbins + + More multibyte fixes from Kimura Koichi, . + + * node.c (format_val, r_dupnode): Spell `wstptr' correctly. + * regex_internal.c (build_wcs_upper_buffer): Label `offsets_needed' should not + be inside `#ifdef _LIBC'. + * regcomp.c (build_charclass): Fix declaration of `class_name' in prototype to + not be unsigned. + +Thu Jun 30 11:52:34 2005 Arnold D. Robbins + + * profile.c (tree_eval): Node_not: Remember to print the exclamation + point! Thanks to Dan Nielsen + for the bug report. + * mbsupport.h: Fix spelling of HAVE_ISWUPPER. Thanks to + Kimura Koichi, . + +Sun Jun 26 16:37:59 2005 Arnold D. Robbins + + Unrelated changes: + + * builtin.c (do_length): Allow array argument to length(). + Returns number of elements in array. + + * awkgram.y (yylex): Ignore carriage returns in source code. Sigh. + +Wed Jun 15 22:12:15 2005 Arnold D. Robbins + + * node.c (isnondecimal): Check loc.decimal_point before using it. + Avoids problems with command line assignment when locale info may + not be set up all the way yet. + +Wed Jun 15 21:59:54 2005 Arnold D. Robbins + + * node.c (make_str_node): If working with multibyte characters, while + parsing string constants, keep multibyte characters together. This avoids + problems in cases where one of the bytes is backslash. Initial patch + supplied by Kimura Koichi, . + +Tue Jun 14 21:50:37 2005 Andrew J. Schorr + + Use Exponentiation By Squaring for integer powers for ^ and ^=. + + * eval.c (calc_exp, cal_exp_posint): New functions. + (r_tree_eval): Use them. + +Fri Jun 3 12:15:54 2005 Arnold D. Robbins + + * configure.ac: Further change the hack at the end so that + it works on Mac OS X `sed'. Sigh. + +Thu Jun 2 22:44:01 2005 Arnold D. Robbins + + * configure.ac (TYPE_SOCKLEN_T): Use `int' as default type if can't + figure one out. + * awkgram.y: Warn that `//' is not a C++ comment. (:-) + +Thu Jun 2 20:55:27 2005 Arnold D. Robbins + + From: Benno Schulenberg + + * eval.c (func_call): Take message out of gettext call since it's for debugging. + * ext.c (get_actual_argument): Fix formatting of message. + +Wed May 25 09:19:37 2005 Arnold D. Robbins + + * configure.ac: Change hack at end that fixes Makefile to keep + version.c to use `sed' and not `ed'. More portable to OS/2, probably + other systems. + +Mon May 23 09:01:26 2005 Arnold D. Robbins + + Portability help from Jim Meyering. + + * io.c: Rework ifdefs for and . Test them + individually. + * configure.ac: Add AC_C_RESTRICT and code for socklen_t from rsync. + Check for isascii and btowc for regex. + +Sat May 14 22:49:54 2005 Arnold D. Robbins + + * wait_any (errno): Remove decl. + * gawk_popen: The pipe-simulated but not VMS or DOS version. Remove + decl/use of `strdup' in favor of `emalloc' and `strcpy'. + +Wed May 11 18:33:30 2005 Arnold D. Robbins + + All files: Updated address of FSF to: + + 51 Franklin Street, Fifth Floor + Cambridge, MA 02110-1301 + +Wed May 11 18:19:03 2005 Jim Meyering + + * configure.ac: Use AM_GNU_GETTEXT([external]). + Reflect upgrade to gettext-0.14.4. + Reflect renaming of `jm_'-prefixed macros. + (AC_CONFIG_FILES): Remove intl/Makefile. + + * Makefile.am (SUBDIRS): Remove intl. + (AM_CPPFLAGS): Remove -Iintl. + +Wed May 11 11:42:06 2005 Arnold D. Robbins + + Straighten out mess with `isblank' which is C99 function. + + * configure.ac: Remove check for `isblank' in call to AC_CHECK_FUNCS. + * regex_internal.h: #ifdef out definition of `isblank' and provide `is_blank' + function a la dfa.c. + * field.c: Ditto. + * regcomp.c: #ifdef use of `isblank' and add `is_blank' use instead. + +Mon May 9 08:29:37 2005 Arnold D. Robbins + + * configure.ac: Add type check for `socklen_t', fixes compile + warning on AMD/64 Linux. + * io.c (socketopen): Change type of socket lenght variables + to `socklen_t' from `size_t'. + +Thu May 5 22:00:03 2005 John E. Haque + + * io.c (iop_alloc): Let a input processor hook installed via + `register_open_hooks' open its own fd in case gawk does not know + how to open it. + (iop_open): Call `os_close_on_exec' after `iop_alloc'. + ADR: If `iop_alloc' returns NULL but the fd is valid, close + the fd to avoid an fd leak. + +Mon May 2 08:05:59 2005 Arnold D. Robbins + + * eval.c (update_ERRNO): Don't use `return' in a `void' function. + * awk.h (AWKNUM): Back out use of `long double' based on LDBL_MANT_DIG. + * builtin.c (tmp_integer): Back out extra ifdefs. + +Fri Apr 29 13:01:05 2005 Arnold D. Robbins + + * configure.ac: Look for `isblank' function. + * field.c: Add define for `isblank' if we don't have it. + +Fri Apr 29 12:01:33 2005 Julian Foad + + From grep. Doesn't seem to affect awk. + + * dfa.c (lex): Fix bug #9519: "echo do^re | grep do^re" was + failing to find a match. [Towards end, set `lasttok' before + returning `c'.] + +Fri Apr 29 00:28:46 2005 Arnold D. Robbins + + * configure.ac: Jump through an amazingly convoluted hoop to get + config.status to keep version.c upon `make distclean'. Seems to + work though. + +Thu Apr 28 23:40:02 2005 Stepan Kasal + + * configure.ac (PRINTF_HAS_F_FORMAT): Some cosmetic changes. + (custom.h): Don't cat custom.h at the end of config.h; instead, use + AH_BOTTOM([#include "custom.h"]) + * awklib/Makefile.am (AM_CPPFLAGS): Add $(top_srcdir) so that + custom.h can be found. + +Thu Apr 28 23:21:22 2005 Jim Meyering + + * field.c (set_FIELDWIDTHS): Tighten up the code to accept FIELDWIDTHS + values in [1..INT_MAX], e.g., detect overflow and invalid strings, + and reject strings starting with `-'. + +Thu Apr 28 23:05:33 2005 Stepan Kasal + + * dfa.c (parse_bracket_exp_mb): Shorten one part of the code, to get + closer to grep's copy. + +Thu Apr 28 23:00:58 2005 Pat Rankin + + * builtin.c (format_tree) [#if VAXCRTL]: For floating point + formatting, reject zero_flag if using old VAXCRTL run-time + library to avoid getting erroneous results which appear as if + numerically incorrect (due to an embedded space in some cases, + extra trailing zeroes in others) rather than just misformatted. + `hsprint' test still fails, but not as badly. + +Thu Apr 28 19:12:03 2005 Arnold D. Robbins + + * re.c (reflags2str): Add three new RE_ flags from current regex.h + to bring the table up to date. + + * builtin.c (format_tree): Save 2 spare bytes instead of one. Suggested + by Stepan Kasal. + +Thu Apr 28 18:16:09 2005 Andrew J. Schorr + + * awk.h (IOBUF): Add new fields `opaque', `get_record', and `close_func', + to support insertion of an alternate input processor. This is used + by the XML extension. + (register_deferred_variable, register_open_hook, update_ERRNO_saved): + Declare new functions. + (load_environ, load_procinfo): Remove declarations -- these functions + are no longer global, since we use register_deferred_variable instead. + * awkgram.y (register_deferred_variable): New function to allow + calling code to register special variable names that trigger a callback + upon the first reference. This is now used to implement ENVIRON + and PROCINFO. + (variable): Search the list of deferred variables instead of hardcoded + tests for ENVIRON and PROCINFO. + * eval.c (set_BINMODE): Fix spelling of "arbitrary" in warning message. + (update_ERRNO_saved): New function that allows the caller to specify + the errno value instead of using the current value. + (update_ERRNO): Implement by calling update_ERRNO_saved(errno). + * io.c (iop_close): Call `iop->close_func' if non-NULL. + (close_redir): Should save `errno' value, otherwise `lintwarn' messages + might update it. Then use `update_ERRNO_saved' to set ERRNO. + (do_getline): Call `update_ERRNO_saved' to set ERRNO based on the + error code returned by the redirect function (instead of the current + value of errno). Similarly, use `update_ERRNO_saved' to set ERRNO + based on the value returned by `get_a_record'. But add a special + check to avoid updating ERRNO if `get_a_record' returns an error + code value of -1 (this is used by the XML extension which already + sets ERRNO before returning). + (register_open_hook): New function to register a function to be + called whenever a new data file is opened. This can be used to + install a special input processor (as in the XML extension). + (iop_alloc): Call registered open hook. + (get_a_record): If a `get_record' method has been set, call that instead. + * main.c (init_vars): Use `register_deferred_variable' to implement + ENVIRON and PROCINFO. + (load_environ, load_procinfo): Now static instead of global. + * doc/gawk.texi: Document new internal functions `update_ERRNO_saved', + `register_deferred_variable', and `register_open_hook'. + +Thu Apr 28 10:50:10 2005 Arnold D. Robbins + + * array.c (assoc_find, do_delete): Change incorrect uses of STREQN + to memcmp. + * builtin.c (do_index): Same. + * field.c (set_FS): Same. + * io.c (redirect, getredirect, do_close, set_RS): Same. + * re.c (reisstring): Same. + +Wed Apr 27 21:35:57 2005 Arnold D. Robbins + + Allow for long double. Initial changes from Jean-Marc Saffroy + . + + * awk.h (AWKNUM): If have long doubles (LDBL_MANT_DIG), define AWKNUM + as long double, otherwise just use double. + * builtin.c (format_tree): Change type of tmpval to double. + (do_strtonum): Same for `d' and types used in casts. + (tmp_integer): Don't do bit shifting if have long doubles. + + Unrelated, from Andrew J. Schorr: + + * io.c (close_one): Check for RED_FILE|RED_WRITE, not just RED_FILE. + +Mon Apr 25 12:23:18 2005 Andrew J. Schorr + + * eval.c (r_tree_eval): In Node_assign_concat case, when copying string + constants, include the terminating zero byte. + +Fri Apr 1 06:26:31 2005 Arnold D. Robbins + + Update to Automake 1.9.5. + + * INSTALL, aclocal.m4, depcomp, install-sh, missing, + mkinstalldirs, ylwrap: Updated. + + Unrelated: + + * builtin.c (do_tolower, do_toupper): Remove old code + based on 8-bit character table. + +Wed Feb 23 08:23:22 2005 Arnold D. Robbins + + * bisonfix.awk: New file, fixes continued #ifdef for dumb compilers. + * Makefile.am (awkgram.c): Fix rule to use it. + (EXTRA_DIST): Include bisonfix.awk. + +Tue Feb 22 21:18:50 2005 Arnold D. Robbins + + * random.h: Remove include of config.h and move it to ... + * random.c: Here. Move include of random.h back to where it was. + + * regcomp.c, regex.c, regexec.c: NUKED all use of alloca not inside + `_LIBC' ifdef. Hooray! + +Sat Feb 19 20:13:28 2005 Pat Rankin + + Workarounds for bugs and missing C89 features in old VAX C compiler. + + * regex_internal.h "mbsupport.h": Suppress inclusion if NO_MBSUPPORT + is defined. + [MB_CUR_MAX]: Define as 1 if mbsupport.h hasn't defined it. + [ER_ERRMSG, ERRMSG_TYPE, ERRMSG_OFFSET, ERRMSG_SEPARATOR]: New macros + conditionalized upon gawk's NO_TOKEN_PASTING macro. + * regcomp.c: Use them. + (parse_dup_op): Use alternate initialization of start_token if + RE_TOKEN_INIT_BUG is defined. + * regexec.c (proceed_next_node): Compare push_fail_stack() result + explicitly against REG_NOERROR rather than implicitly against 0. + +Sat Feb 19 20:05:50 2005 Pat Rankin + + * dfa.c "mbsupport.h": Suppress inclusion if NO_MBSUPPORT is defined. + +Wed Feb 16 20:43:07 2005 Pat Rankin + + * awk.h "mbsupport.h": Suppress inclusion if NO_MBSUPPORT is defined. + * regex.h : Guard inclusion with HAVE_SYS_TYPES_H. + * regex.c : Likewise. + * random.c "random.h": include this first to get config.h setup. + : Guard inclusion with HAVE_FCNTL_H. + : Guard inclusion with HAVE_UNISTD_H. + * io.c [#if defined(MSDOS) ||... defined(__CYGWIN__)]: Splice the + backslash continuation back into one long line. + +Wed Feb 16 10:11:21 2005 Arnold D. Robbins + + * node.c (unref, format_val): Add assertions checking that both + `tmp->wstptr != NULL' and `(tmp->flags & WSTRCUR) != 0' before + freeing `tmp->wstptr'. Thanks to kimura.koichi@canon.co.jp. + + * random.c (HAVE_UNISTD_H): Conditionalize include of . + Thanks to Scott Deifik . + +Sun Feb 13 18:24:50 2005 Arnold D. Robbins + + * io.c (socketopen): Move `#ifdef MSG_PEEK' up to above + declarations too. Thanks to Michal Jaegermann. + + * config.guess, config.sub: Updated from Savannah. + +Thu Feb 10 15:48:48 2005 Arnold D. Robbins + + * regex_internal.c (re_dfa_add_node): Remove variable `type' + and just use `token.type' directly in RE_ENABLE_I18N code below. + Saves a compiler warning, and a good compiler will handle it anyway. + * regexec.c (check_arrival_add_next_nodes): Move decl of `err' + inside #ifdef RE_ENABLE_I18N code where it's used. + * awkgram.y (yylex): Add casts to int before use of `strlen' results + for printf-style precision. Avoid a compiler warning. + * io.c (redirect, do_close): Same for use of tmp->stlen. + + Thanks to Michal Jaegermann . + +Wed Feb 9 10:19:15 2005 Stepan Kasal + + * Makefile.am (datadir, libexecdir): Removed. + (awkdatadir): Renamed to pkgdatadir. + (pkgdatadir, LDADD): Use the make syntax to refer to other variables, + not @...@. + +Wed Feb 9 10:05:46 2005 Arnold D. Robbins + + * node.c (r_dupnode): Assign NULL to r->wstr after `getnode'. + Fix count of bytes to copy in call to `memcpy'. + Thanks to Kimura Koichi, . + +Tue Feb 8 19:26:22 2005 Pat Rankin + + * regcomp.c (init_dfa): Avoid strcasecmp() since regex.c doesn't + use awk.h and none of the assorted other included header files + are guaranteed to declare it. + (parse_expression): Modify casts for the string arguments passed to + build_charclass_op() to fix char * vs unsigned char * mismatch. + (parse_bracket_exp): Likewise add cast for the string argument + passed to build_charclass(). + +Mon Feb 7 15:04:09 2005 Arnold D. Robbins + + * eval.c (make_scalar): Don't use P() macro in definition. + Thanks to Juergen Kahrs . + +Wed Feb 2 16:36:19 2005 Arnold D. Robbins + + * main.c (main): Call `close_io', without its result affecting + the exit status. Super small, super dark corner. + + See test/exitval2.awk. + +Tue Feb 1 11:58:29 2005 Arnold D. Robbins + + * regex.h (__APPLE_CC__): Removed test and definition of __restrict. + Not needed for current MacOS X compiler. + +Sun Jan 30 13:56:37 2005 Arnold D. Robbins + + Fresh merge with CVS regex routines. Fixes handling of \B. + See tests/gnureop3.awk and also + http://sources.redhat.com/bugzilla/show_bug.cgi?id=693. + + CVS base versions: + + * regcomp.c: Version 1.92, Thu Jan 27 19:05:20 2005. + * regexec.c: Version 1.77, Thu Jan 27 19:06:34 2005. + * regex_internal.c: Version 1.49, Thu Jan 27 19:07:15 2005. + * regex_internal.h: Version 1.60, Wed Jan 26 22:40:50 2005. + * regexec.c: Version 1.77, Thu Jan 27 19:06:34 2005. + +Sat Jan 22 22:30:40 2005 Arnold D. Robbins + + Reinstate patch of 18 Nov 2001, for VMS, at least: + + * random.c (srandomdev): ifdef-out. Lots of compile time + problems on multiple platforms, and gawk doesn't even + use the routine. The heck with fine-grained solutions. + +Thu Jan 20 14:15:32 2005 Arnold D. Robbins + + * awkgram.y (LEX_FOR): Free NAME tokens in transformation of + `for (iggy in foo) delete foo[iggy]' into `delete foo'. + Thanks and a tip of the hatlo to Valgrind. + + * dfa.c (_): Clean up stuff here by just including "gettext.h". + Per Bruno Haible. + +Wed Jan 19 18:29:23 2005 Arnold D. Robbins + + * awkgram.y (yylex): Improve parsing of numeric constants + and hex values, via a push from Paul Eggert. See test/hex.awk. + + * regex_internal.c (re_node_set_alloc): If `size' is 0, just + zero out the structure. From valgrind. + +Tue Jan 18 17:23:25 2005 Arnold D. Robbins + + Make gawk multibyte aware. This means that index(), length(), + substr() and match() all work in terms of characters, not bytes. + + * awk.h (NODE): Add `wsp' and `wslen' elements to value for wide + string. + (WSTRCUR, wstptr, wstlen, force_wstring): New macros. + (str2wstr, wstrstr, wcasestrstr): New declarations. + * builtin.c (do_index, do_length, do_substr, do_match): Handle wide + strings. + * eval.c (flags2str): Add WSTRCUR. + * node.c (format_val, r_dupnode, mk_number, make_str_node, unref): + Add code to deal with wide strings. + (str2wstr, dump_wstr, wstrstr, wcasestrstr): New functions. + +Sun Jan 16 15:10:35 2005 Arnold D. Robbins + + * random.h (int32_t): Define this type. + +Thu Jan 13 14:38:13 2005 Arnold D. Robbins + + Cause `configure --disable-nls' to still allow locale-correct + formating of numeric values. + + * builtin.c (format_tree): Change #ifdefs to only test HAVE_LOCALE_H. + Improve code for ' flag so that extraneous separator is not included if + number of digits is multiple of locale separater count (3, 6, 9, etc.) + * dfa.c (dfaparse): Change ifdef to only test #ifdef LC_COLLATE. + * eval.c (fmt_ok): Remove ENABLE_NLS from #ifdef test. + * gettext.h: Include on both sides of test. Should really + be factored out. + * main.c (loc): Remove ENABLE_NLS from #ifdef test. + (main): Same in call to localeconv(). + * node.c (isnondecimal): Remove ENABLE_NLS from #ifdef test. + + Unrelated: + + * regcomp.c (init_dfa): Change `codeset' to `codeset_name' in two + places. + +Mon Jan 10 11:49:56 2005 Arnold D. Robbins + + Annual sync with glibc. + + * getopt_int.h: New file. + * Makefile.am (base_sources): Add it. + * getopt.h, getopt.c, getopt1.c: Updated. + * regcomp.c, regex.c, regex.h, regex_internal.c, regex_internal.h, + regexec.c: Updated. + + Original versions: + + getopt_int.h, 1.1, Tue Mar 9 10:31:19 2004 + getopt1.c, 1.10, Tue Mar 9 10:35:37 2004 + getopt.h, 1.21, Fri Mar 19 00:19:32 2004 + getopt.c, 1.53, Wed Mar 10 23:13:26 2004 + regcomp.c, 1.87, Mon Dec 6 02:56:42 2004 + regex.c, 1.126, Fri Jan 30 05:19:58 2004 + regex.h, 1.33, Thu Nov 18 23:50:57 2004 + regex_internal.c, 1.46, Thu Jan 6 20:59:49 2005 + regex_internal.h, 1.57, Mon Dec 27 16:29:05 2004 + regexec.c, 1.75, Mon Dec 27 16:29:52 2004 + + * regex.h: Add check for __APPLE_CC__ and definition of __restrict. + * regex.c: Add check for _MSC_VER and include . + * regex_internal.h (_RE_ENABLE_I18N): Change test. + (re_realloc): Add check/fix for SunOS 4.1.x. + * regex_internal.c (build_wcs_upper_buffer): ifdef label + `offsets_needed', add cast in call to `wcrtomb'. + * regcomp.c (build_charclass, build_charclass_op): Remove `unsigned' + from declarations of `char *' params. + (regerror): Remove use of mempcpy. + (peek_token): Disallow \s and \S for gawk. + (build_charclass): Change decl of `class_name' and use it directly. + Nuke variable `name'. + (build_charclass_op): Change decl of `class_name' and `extra'. + +Thu Jan 6 16:44:32 2005 Arnold D. Robbins + + Improve autoconfiscation stuff for wide character use. + + * builtin.c (do_tolower, do_toupper): Conditionally compile + call to `wide_tolower_toupper'. + (wide_tolower_toupper): Conditionally compile typedefs and function. + * mbsupport.h: Add check for having `wint_t', and `iswlower', + `iswupper', `towlower' and `towupper'. + * configure.ac (HAVE_WINT_T): Add test. + (AC_CHECK_FUNCS): Add `wint_t', `iswlower', `iswupper', `towlower' + and `towupper'. + + Unrelated change: + + * hard-locale.h (hard_locale): Add decl of `xmalloc' to prevent + redeclaration problems on some compilers. + +Wed Jan 5 10:20:17 2005 Arnold D. Robbins + + Update to Bison 2.0. + + * bisonfix.sed: Removed, no longer needed. + * Makefile.am (EXTRA_DIST): Removed bisonfix.sed. + (awkgram.c): Fix build rule. + * awkgram.c: Regenerated. + +Tue Jan 4 18:47:56 2005 Arnold D. Robbins + + Update to Automake 1.9.4. + + * alocal.m4, config.guess, config.sub, install-sh: Updated. + +Mon Jan 3 14:08:27 2005 Arnold D. Robbins + + Update to Automake 1.9.3. + + * INSTALL, alocal.m4, config.guess, config.sub, depcomp, + install-sh, missing, ylwrap: Updated. + +Mon Jan 3 11:23:36 2005 Arnold D. Robbins + + Fix obscure issue. ^ in RS should only match at the very + beginning of the input. Essentially, the file is one long + string. To do this, use the `not_bol' flag in the `struct + pattern_buffer'. Thanks to Stepan Kasal for pointing out the + problem and to Andreas Schwab for pointing out the mechanism + for a solution. + + * awk.h (RE_NEED_START, RE_NO_BOL): New flags for `research'. + (IOP_AT_START): New flag for IOBUF. + (research): Last parameter is now `flags'. + * builtin.c (do_match, sub_common): Change calls to `research'. + * eval.c (interpret, match_op): Same. + * field.c (re_parse_field): Same. + * io.c (spec_setup): Add IOP_AT_START flag. + (iop_alloc): Same. + (rsrescan): Modify logic to check IOP_AT_START and if not on to + add RE_NO_BOL to flags value in call to `research'. + (get_a_record): Clear IOP_AT_START upon return from `*matchrec'. + (iopflags2str): Add IOP_AT_START to table. Also IOP_CLOSED, + which was missing. (Ooops.) + * re.c (research): Last paramater is now flags. Modify logic to + handle RE_NO_BOL case by setting the right bit initially. Clean + up control flow so that it's cleared before returning. If RE_NO_BOL, + don't bother with the dfa matcher, as it doesn't have an analogous + capability. + +Wed Dec 22 12:33:48 2004 Arnold D. Robbins + + For --exec, don't allow x=y assignments where filenames would be. + Do allow -v. This is because we assume --exec is used mainly for + CGI stuff and we don't want var assigns to affect the code. + + Suggested by Stepan Kasal; motivated by reading about web security. + + * main.c (disallow_var_assigns): New variable. + (main): Set the var for --exec. + (arg_assign): Check it appropriately. + +Sun Dec 19 17:27:09 2004 Arnold D. Robbins + + * builtin.c (do_gensub): Make `global' flag smarter, such that + a string numeric constant (e.g., "3") acts like a numeric + constant. + * node.c (r_force_number): Not really related: Only set NUMCUR + if we actually convert some digits. + +Sun Dec 19 16:08:50 2004 Arnold D. Robbins + + * dfa.h, dfa.c: Synchronize with what's happening in GNU grep + development. Effectively only minor whitespace changes and some + slight code motion of ifdefs and includes. + * hard-locale.h: New file, extracted from old dfa.c. + * Makefile.am (base_sources): Add hard-locale.h. + +Sun Dec 19 11:13:45 2004 Arnold D. Robbins + + * io.c (socketopen): Change type of `readle' and `namelen' + variables to size_t. For QNX, but a good idea anyway. Thanks + to `Anthony' (rz1a@mail.ru). + +Mon Dec 6 11:11:22 2004 Arnold D. Robbins + + Undid change of Mar 9 2004, to add gofast patch. It gets things + wrong for gawk. This removes the bandaid of ifdef-ing out the + main check. Eventually this'll all get straightened out in the + GNU grep code. + + * dfa.c (buf_offset): Removed. + (SKIP_REMAINS_MB_IF_INITIAL_STATE): Removed use of buf_offset, do + free `mblen_buf', `inputwcs'. + (match_anychar, match_mb_charset, transit_state_consume_1char, + transit_state): Remove use of buf_offset in mblen_buf. + (dfaexec): Use `free' and `malloc', not `realloc'. + +Mon Dec 6 10:55:37 2004 Fumitoshi UKAI + + Forwarded from james@nocrew.org, the Debian contact. + + * dfa.c (parse_bracket_exp_mb): + 1. Build range correctly when IGNORECASE for [a-a] to also get 'A'. + 2. For [:lower:] and [:upper:], if ignoring case, set type string + to "alpha". This parallels code in the regex routines. + 3. Reset wc1 to EOF when parsing bracket expressions. + +Mon Nov 29 18:36:25 2004 Arnold D. Robbins + + * io.c (redirect): When allocating a new struct redirect, set + rp->pid to -1, not 0, so that code checking for EOF on an + input pipe works correctly. + +Thu Nov 25 14:22:41 2004 Stepan Kasal + + * Makefile.am (MAINTAINERCLEANFILES): Add. + * version.in (version_string): Use PACKAGE_STRING. + +Tue Nov 23 17:27:38 2004 Stepan Kasal + + * re.c: Fix a typo in a comment. + +Mon Nov 22 16:47:00 2004 Arnold D. Robbins + + * awkgram.y (yylex): Add lint check for tawk style modifiers on + regexes, /.../i and /.../s. Not that it'll help anyone. + +Wed Oct 27 14:25:18 2004 Stepan Kasal + + * builtin.c (do_tolower, do_toupper): Fix the wide char handling, + especially when the lowercased char doesn't ocuppy the same + number of bytes as its uppercase equivalent. Make use of ... + (wide_tolower_toupper): ... this new static function. + +Mon Oct 25 11:51:14 2004 Arnold D. Robbins + + * builtin.c (bchunk, bchunk_one, cksize): Change type of `olen' + to size_t from long. It is the 21st century now, after all... + Thanks to Stepan Kasal. + +Mon Oct 11 10:49:09 2004 Arnold D. Robbins + + * awkgram.y (yylex): Improve lint warnings for non-decimal constants. + * node.c (isnondecimal): Made a little smarter, thanks to Stepan Kasal. + +Thu Oct 7 21:59:38 2004 Arnold D. Robbins + + * dfa.c (dfamust): Redo fix of 22 Sep to match code from + current GNU grep. + +Sun Oct 3 23:06:00 2004 Arnold D. Robbins + + * node.c (isnondecimal): Made smarter, so that 0xEE does + register as non-decimal. Added parameter to indicate use of + locale's decimal point and changed declaration and callers. + +Tue Sep 28 18:38:17 2004 Arnold D. Robbins + + * node.c (isnondecimal): New function, now smarter. + * awk.h (isnondecimal): Changed from macro to function. + +Wed Sep 22 11:24:46 2004 Arnold D. Robbins + + * dfa.c (dfamust): At end, check results of `malloc'. + Based on bug report from Sorav Bansal + for grep. + +Mon Sep 20 13:18:18 2004 Arnold D. Robbins + + New --exec option. Needed for gawk CGI scripts to prevent + arbitrary options and/or source getting passed in from the web. + + * main.c (optab): New long option, --exec. + (main): Catch it. Like -f but end option processing. + (usage): Add it to the usage message. + + Thanks to John DuBois and Don Stokes for their input. + + Unrelated: + + * dfa.c (dfaexec): Disabled caching into buffer that bypasses + multibyte initialization, since it can get things wrong. Thanks + to Andreas Schwab . + +Mon Sep 20 12:59:42 2004 Andreas Schwab + + * awkgram.y (nextc): Check for end of lexer buffer before + advancing ring buffer index. + +Wed Sep 8 09:54:53 2004 Arnold D. Robbins + + * main.c (main): Force LC_NUMERIC locale to "C" before parsing + the program, since a variable assignment with -v can leave the + locale set incorrectly. + + Thanks to Sirix for reporting the problem. + +Wed Aug 25 18:55:30 2004 Arnold D. Robbins + + * main.c (UPDATE_YEAR): New constant at top of file, where we + won't miss it. + (copyleft): Use it. + +Sun Aug 22 17:26:39 2004 Stepan Kasal + + Define gawk_mb_cur_max even if there is no mbs support, as + ``const int'' and assign 1 to it. + This fixes a bug in re.c where #ifdef MBS_SUPPORT was missing. + + * awk.h (gawk_mb_cur_max): Declare. + * main.c (gawk_mb_cur_max): Define. + * awkgram.y (nextc_is_1stbyte): Without mbs support, define to 1. + * builtin.c (index_multibyte_buffer): Define a dummy function + when there is no mbs support. + * awkgram.y, builtin.c, re.c: Remove some `#ifdef MBS_SUPPORT'. + +Sun Aug 15 22:08:04 2004 Arnold D. Robbins + + Import current FreeBSD random.c. Make it work for gawk. + Needed for cases where long is more than 32 bits. + + * random.c: Imported from FreeBSD. Header includes tweaked. + * random.h: Typdef gawk_uint32_t appropriately and #define uint32_t + to it. + * configure.ac: Add calls to AC_CHECK_SIZEOF for unsigned int + and unsigned long. + + Started with + http://www.freebsd.org/cgi/cvsweb.cgi/src/lib/libc/stdlib/random.c + Thanks to Andreas Schwab for the pointer. + +Thu Aug 12 13:09:53 2004 Arnold D. Robbins + + * main.c (copyleft): Fix copyright year. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. @@ -445,7 +1241,7 @@ `exit_val' to 1 if not already exiting. * regcomp.c (regerror): Remove use of mempcpy. Generates too - many compiler warning. + many compiler warnings. * configure.ac (AC_CHECK_FUNCS): Don't bother checking for it. Wed Feb 4 17:34:47 2004 Arnold D. Robbins diff -urN gawk-3.1.4/FUTURES gawk-3.1.5/FUTURES --- gawk-3.1.4/FUTURES 2004-02-03 13:42:53.000000000 +0200 +++ gawk-3.1.5/FUTURES 2005-05-11 18:28:11.000000000 +0300 @@ -32,6 +32,8 @@ DONE: Add %'d for putting in commas in formatting. + DONE: Multibyte support for index, length, substr, match. + For 3.2 ======= Enable \s, \S in regexes (regcomp.c and dfa.c) and document them. diff -urN gawk-3.1.4/INSTALL gawk-3.1.5/INSTALL --- gawk-3.1.4/INSTALL 2004-06-21 16:38:34.000000000 +0300 +++ gawk-3.1.5/INSTALL 2005-05-11 18:28:11.000000000 +0300 @@ -1,13 +1,16 @@ -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software -Foundation, Inc. +Installation Instructions +************************* - This file is free documentation; the Free Software Foundation gives +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free +Software Foundation, Inc. + +This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. Basic Installation ================== - These are generic installation instructions. +These are generic installation instructions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses @@ -67,9 +70,9 @@ Compilers and Options ===================== - Some systems require unusual options for compilation or linking that -the `configure' script does not know about. Run `./configure --help' -for details on some of the pertinent environment variables. +Some systems require unusual options for compilation or linking that the +`configure' script does not know about. Run `./configure --help' for +details on some of the pertinent environment variables. You can give `configure' initial values for configuration parameters by setting variables in the command line or in the environment. Here @@ -82,7 +85,7 @@ Compiling For Multiple Architectures ==================================== - You can compile the package for more than one kind of computer at the +You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you must use a version of `make' that supports the `VPATH' variable, such as GNU `make'. `cd' to the @@ -99,19 +102,19 @@ Installation Names ================== - By default, `make install' will install the package's files in +By default, `make install' will install the package's files in `/usr/local/bin', `/usr/local/man', etc. You can specify an installation prefix other than `/usr/local' by giving `configure' the -option `--prefix=PATH'. +option `--prefix=PREFIX'. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you -give `configure' the option `--exec-prefix=PATH', the package will use -PATH as the prefix for installing programs and libraries. +give `configure' the option `--exec-prefix=PREFIX', the package will +use PREFIX as the prefix for installing programs and libraries. Documentation and other data files will still use the regular prefix. In addition, if you use an unusual directory layout you can give -options like `--bindir=PATH' to specify different values for particular +options like `--bindir=DIR' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories you can set and what kinds of files go in them. @@ -122,7 +125,7 @@ Optional Features ================= - Some packages pay attention to `--enable-FEATURE' options to +Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The @@ -137,11 +140,11 @@ Specifying the System Type ========================== - There may be some features `configure' cannot figure out -automatically, but needs to determine by the type of machine the package -will run on. Usually, assuming the package is built to be run on the -_same_ architectures, `configure' can figure that out, but if it prints -a message saying it cannot guess the machine type, give it the +There may be some features `configure' cannot figure out automatically, +but needs to determine by the type of machine the package will run on. +Usually, assuming the package is built to be run on the _same_ +architectures, `configure' can figure that out, but if it prints a +message saying it cannot guess the machine type, give it the `--build=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name which has the form: @@ -167,9 +170,9 @@ Sharing Defaults ================ - If you want to set default values for `configure' scripts to share, -you can create a site shell script called `config.site' that gives -default values for variables like `CC', `cache_file', and `prefix'. +If you want to set default values for `configure' scripts to share, you +can create a site shell script called `config.site' that gives default +values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. @@ -178,7 +181,7 @@ Defining Variables ================== - Variables not defined in a site shell script can be set in the +Variables not defined in a site shell script can be set in the environment passed to `configure'. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set @@ -186,14 +189,18 @@ ./configure CC=/usr/local2/bin/gcc -will cause the specified gcc to be used as the C compiler (unless it is -overridden in the site shell script). +causes the specified `gcc' to be used as the C compiler (unless it is +overridden in the site shell script). Here is a another example: + + /bin/bash ./configure CONFIG_SHELL=/bin/bash + +Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent +configuration-related scripts to be executed by `/bin/bash'. `configure' Invocation ====================== - `configure' recognizes the following options to control how it -operates. +`configure' recognizes the following options to control how it operates. `--help' `-h' diff -urN gawk-3.1.4/Makefile.am gawk-3.1.5/Makefile.am --- gawk-3.1.4/Makefile.am 2004-07-29 11:15:06.000000000 +0300 +++ gawk-3.1.5/Makefile.am 2005-05-11 18:28:11.000000000 +0300 @@ -1,7 +1,7 @@ # # Makefile.am --- automake input file for gawk # -# Copyright (C) 2000-2004 the Free Software Foundation, Inc. +# Copyright (C) 2000-2005 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -18,7 +18,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # ## process this file with automake to produce Makefile.in @@ -44,7 +44,7 @@ POSIX.STD \ PROBLEMS \ README_d \ - bisonfix.sed \ + bisonfix.awk \ config.guess \ config.rpath \ config.sub \ @@ -60,15 +60,14 @@ regex_internal.h \ regexec.c \ unsupported \ + version.in \ vms \ ylwrap # The order to do things in. -# Build in intl first in case we need the local gettext version. -# Build explicitly "." next in order to build gawk first, so +# Build explicitly in "." in order to build gawk first, so # that `make check' without a prior `make' works. SUBDIRS = \ - intl \ . \ awklib \ doc \ @@ -93,7 +92,9 @@ getopt.c \ getopt.h \ getopt1.c \ + getopt_int.h \ gettext.h \ + hard-locale.h \ io.c \ mbsupport.h \ main.c \ @@ -106,30 +107,29 @@ regex.c \ regex.h \ replace.c \ - version.in \ version.c gawk_SOURCES = $(base_sources) eval.c profile.c pgawk_SOURCES = $(base_sources) eval_p.c profile_p.c -# Get extra libs as needed -LDADD = @LIBINTL@ @SOCKET_LIBS@ +# Get extra libs as needed, Automake will supply LIBINTL and SOCKET_LIBS. +LDADD = $(LIBINTL) $(SOCKET_LIBS) -# Set autoconf Makefile.in variables correctly -datadir = @datadir@ -awkdatadir = @datadir@/awk -libexecdir = @libexecdir@/awk +# Directory for gawk's data files. Automake supplies datadir. +pkgdatadir = $(datadir)/awk # stuff for compiling gawk/pgawk -DEFPATH="\".$(PATH_SEPARATOR)$(awkdatadir)\"" +DEFPATH="\".$(PATH_SEPARATOR)$(pkgdatadir)\"" DEFS= -DDEFPATH=$(DEFPATH) -DHAVE_CONFIG_H -DGAWK -DLOCALEDIR="\"$(datadir)/locale\"" -AM_CPPFLAGS = -Iintl +AM_CPPFLAGS = # Get rid of core files when cleaning CLEANFILES = core core.* +MAINTAINERCLEANFILES = version.c awkgram.c + # We want hard links for install-exec-hook, below LN= ln @@ -169,7 +169,8 @@ # Special rules for individual files awkgram.c: awkgram.y - $(YACC) $(AM_YFLAGS) $(YFLAGS) $< && sed -f $(srcdir)/bisonfix.sed < y.tab.c > $*.c && $(RM) y.tab.c + $(YACC) $(AM_YFLAGS) $(YFLAGS) $< + awk -f $(srcdir)/bisonfix.awk y.tab.c > $*.c && rm y.tab.c if test -f y.tab.h; then \ if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \ else :; fi diff -urN gawk-3.1.4/Makefile.in gawk-3.1.5/Makefile.in --- gawk-3.1.4/Makefile.in 2004-08-02 12:16:30.000000000 +0300 +++ gawk-3.1.5/Makefile.in 2005-07-26 21:44:03.000000000 +0300 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.8.5 from Makefile.am. +# Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,7 +17,7 @@ # # Makefile.am --- automake input file for gawk # -# Copyright (C) 2000-2004 the Free Software Foundation, Inc. +# Copyright (C) 2000-2005 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -34,7 +34,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # SOURCES = $(gawk_SOURCES) $(pgawk_SOURCES) @@ -42,7 +42,6 @@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = . @@ -59,34 +58,27 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : +build_triplet = @build@ host_triplet = @host@ ANSI2KNR = @ANSI2KNR@ bin_PROGRAMS = gawk$(EXEEXT) pgawk$(EXEEXT) DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/configh.in \ - $(srcdir)/version.in $(top_srcdir)/configure \ - $(top_srcdir)/intl/Makefile.in ABOUT-NLS AUTHORS COPYING \ - ChangeLog INSTALL NEWS ansi2knr.1 ansi2knr.c awkgram.c \ + $(srcdir)/version.in $(top_srcdir)/configure ABOUT-NLS AUTHORS \ + COPYING ChangeLog INSTALL NEWS ansi2knr.1 ansi2knr.c awkgram.c \ config.guess config.rpath config.sub depcomp install-sh \ missing mkinstalldirs ylwrap subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/intdiv0.m4 $(top_srcdir)/m4/intmax.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes-pri.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/longdouble.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes_h.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/longlong.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf-posix.m4 $(top_srcdir)/m4/progtest.m4 \ - $(top_srcdir)/m4/signed.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/strtod.m4 $(top_srcdir)/m4/uintmax_t.m4 \ - $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/m4/wchar_t.m4 \ - $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xsize.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/socket.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/strtod.m4 \ + $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -94,7 +86,7 @@ configure.lineno configure.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = intl/Makefile version.c +CONFIG_CLEAN_FILES = version.c am__installdirs = "$(DESTDIR)$(bindir)" binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) @@ -109,27 +101,16 @@ profile$U.$(OBJEXT) gawk_OBJECTS = $(am_gawk_OBJECTS) gawk_LDADD = $(LDADD) -gawk_DEPENDENCIES = +am__DEPENDENCIES_1 = +gawk_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) am_pgawk_OBJECTS = $(am__objects_1) eval_p$U.$(OBJEXT) \ profile_p$U.$(OBJEXT) pgawk_OBJECTS = $(am_pgawk_OBJECTS) pgawk_LDADD = $(LDADD) -pgawk_DEPENDENCIES = +pgawk_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I. -I$(srcdir) -I. depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles -@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/array$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/awkgram$U.Po ./$(DEPDIR)/builtin$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/dfa$U.Po ./$(DEPDIR)/eval$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/eval_p$U.Po ./$(DEPDIR)/ext$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/field$U.Po ./$(DEPDIR)/gawkmisc$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/getopt$U.Po ./$(DEPDIR)/getopt1$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/io$U.Po ./$(DEPDIR)/main$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/msg$U.Po ./$(DEPDIR)/node$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/profile$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/profile_p$U.Po ./$(DEPDIR)/random$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/re$U.Po ./$(DEPDIR)/regex$U.Po \ -@AMDEP_TRUE@ ./$(DEPDIR)/replace$U.Po ./$(DEPDIR)/version$U.Po COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) @@ -158,8 +139,10 @@ GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print + +# Directory for gawk's data files. Automake supplies datadir. +pkgdatadir = $(datadir)/awk ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ @@ -167,15 +150,12 @@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ -BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@ -CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ -DATADIRNAME = @DATADIRNAME@ DEFS = -DDEFPATH=$(DEFPATH) -DHAVE_CONFIG_H -DGAWK -DLOCALEDIR="\"$(datadir)/locale\"" DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ @@ -183,22 +163,13 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ -GENCAT = @GENCAT@ -GLIBC21 = @GLIBC21@ GMSGFMT = @GMSGFMT@ -HAVE_ASPRINTF = @HAVE_ASPRINTF@ -HAVE_POSIX_PRINTF = @HAVE_POSIX_PRINTF@ -HAVE_SNPRINTF = @HAVE_SNPRINTF@ -HAVE_WPRINTF = @HAVE_WPRINTF@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INSTOBJEXT = @INSTOBJEXT@ -INTLBISON = @INTLBISON@ INTLLIBS = @INTLLIBS@ -INTLOBJS = @INTLOBJS@ -INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -227,7 +198,6 @@ SOCKET_LIBS = @SOCKET_LIBS@ STRIP = @STRIP@ U = @U@ -USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ @@ -240,14 +210,14 @@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ - -# Set autoconf Makefile.in variables correctly datadir = @datadir@ exec_prefix = @exec_prefix@ host = @host@ @@ -259,7 +229,7 @@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ -libexecdir = @libexecdir@/awk +libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ @@ -292,7 +262,7 @@ POSIX.STD \ PROBLEMS \ README_d \ - bisonfix.sed \ + bisonfix.awk \ config.guess \ config.rpath \ config.sub \ @@ -308,16 +278,15 @@ regex_internal.h \ regexec.c \ unsupported \ + version.in \ vms \ ylwrap # The order to do things in. -# Build in intl first in case we need the local gettext version. -# Build explicitly "." next in order to build gawk first, so +# Build explicitly in "." in order to build gawk first, so # that `make check' without a prior `make' works. SUBDIRS = \ - intl \ . \ awklib \ doc \ @@ -340,7 +309,9 @@ getopt.c \ getopt.h \ getopt1.c \ + getopt_int.h \ gettext.h \ + hard-locale.h \ io.c \ mbsupport.h \ main.c \ @@ -353,22 +324,21 @@ regex.c \ regex.h \ replace.c \ - version.in \ version.c gawk_SOURCES = $(base_sources) eval.c profile.c pgawk_SOURCES = $(base_sources) eval_p.c profile_p.c -# Get extra libs as needed -LDADD = @LIBINTL@ @SOCKET_LIBS@ -awkdatadir = @datadir@/awk +# Get extra libs as needed, Automake will supply LIBINTL and SOCKET_LIBS. +LDADD = $(LIBINTL) $(SOCKET_LIBS) # stuff for compiling gawk/pgawk -DEFPATH = "\".$(PATH_SEPARATOR)$(awkdatadir)\"" -AM_CPPFLAGS = -Iintl +DEFPATH = "\".$(PATH_SEPARATOR)$(pkgdatadir)\"" +AM_CPPFLAGS = # Get rid of core files when cleaning CLEANFILES = core core.* +MAINTAINERCLEANFILES = version.c awkgram.c # We want hard links for install-exec-hook, below LN = ln @@ -428,8 +398,6 @@ distclean-hdr: -rm -f config.h stamp-h1 -intl/Makefile: $(top_builddir)/config.status $(top_srcdir)/intl/Makefile.in - cd $(top_builddir) && $(SHELL) ./config.status $@ version.c: $(top_builddir)/config.status $(srcdir)/version.in cd $(top_builddir) && $(SHELL) ./config.status $@ install-binPROGRAMS: $(bin_PROGRAMS) @@ -504,16 +472,14 @@ @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` array_.c: array.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/array.c; then echo $(srcdir)/array.c; else echo array.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ @@ -577,7 +543,13 @@ # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): - @set fnord $$MAKEFLAGS; amf=$$2; \ + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ @@ -589,7 +561,7 @@ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ @@ -597,7 +569,13 @@ mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive: - @set fnord $$MAKEFLAGS; amf=$$2; \ + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ @@ -618,7 +596,7 @@ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ @@ -693,7 +671,7 @@ distdir: $(DISTFILES) $(am__remove_distdir) mkdir $(distdir) - $(mkdir_p) $(distdir)/. $(distdir)/intl $(distdir)/m4 $(distdir)/po + $(mkdir_p) $(distdir)/. $(distdir)/m4 $(distdir)/po @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -720,15 +698,17 @@ || exit 1; \ fi; \ done - list='$(SUBDIRS)'; for subdir in $$list; do \ + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ - || mkdir "$(distdir)/$$subdir" \ + || $(mkdir_p) "$(distdir)/$$subdir" \ || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="../$(top_distdir)" \ - distdir="../$(distdir)/$$subdir" \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ distdir) \ || exit 1; \ fi; \ @@ -742,14 +722,14 @@ ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r $(distdir) dist-gzip: distdir - $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir - $(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2 + tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-tarZ: distdir - $(AMTAR) chof - $(distdir) | compress -c >$(distdir).tar.Z + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir @@ -762,8 +742,8 @@ $(am__remove_distdir) dist dist-all: distdir - $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz - $(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2 + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then @@ -772,11 +752,11 @@ distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ - GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - ;;\ + GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ - bunzip2 -c $(distdir).tar.bz2 | $(AMTAR) xf - ;;\ + bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.Z*) \ - uncompress -c $(distdir).tar.Z | $(AMTAR) xf - ;;\ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ *.zip*) \ @@ -790,7 +770,6 @@ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && cd $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ - --with-included-gettext \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ @@ -863,12 +842,13 @@ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: - -rm -f $(CONFIG_CLEAN_FILES) + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -rm -f awkgram.c + -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) clean: clean-recursive clean-am: clean-binPROGRAMS clean-generic clean-krextra mostlyclean-am @@ -928,19 +908,20 @@ .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ check-am check-local clean clean-binPROGRAMS clean-generic \ clean-krextra clean-recursive ctags ctags-recursive dist \ - dist-all dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip \ - distcheck distclean distclean-compile distclean-generic \ - distclean-hdr distclean-recursive distclean-tags \ - distcleancheck distdir distuninstallcheck dvi dvi-am html \ - html-am info info-am install install-am install-binPROGRAMS \ - install-data install-data-am install-exec install-exec-am \ - install-info install-info-am install-man install-strip \ - installcheck installcheck-am installdirs installdirs-am \ - maintainer-clean maintainer-clean-generic \ - maintainer-clean-recursive mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-kr mostlyclean-recursive pdf \ - pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ - uninstall-binPROGRAMS uninstall-info-am + dist-all dist-bzip2 dist-gzip dist-hook dist-shar dist-tarZ \ + dist-zip distcheck distclean distclean-compile \ + distclean-generic distclean-hdr distclean-recursive \ + distclean-tags distcleancheck distdir distuninstallcheck dvi \ + dvi-am html html-am info info-am install install-am \ + install-binPROGRAMS install-data install-data-am install-exec \ + install-exec-am install-exec-hook install-info install-info-am \ + install-man install-strip installcheck installcheck-am \ + installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic maintainer-clean-recursive \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-kr mostlyclean-recursive pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am uninstall-binPROGRAMS \ + uninstall-info-am .c.i: $(COMPILE) -E $< > $@ @@ -977,7 +958,8 @@ # Special rules for individual files awkgram.c: awkgram.y - $(YACC) $(AM_YFLAGS) $(YFLAGS) $< && sed -f $(srcdir)/bisonfix.sed < y.tab.c > $*.c && $(RM) y.tab.c + $(YACC) $(AM_YFLAGS) $(YFLAGS) $< + awk -f $(srcdir)/bisonfix.awk y.tab.c > $*.c && rm y.tab.c if test -f y.tab.h; then \ if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \ else :; fi diff -urN gawk-3.1.4/NEWS gawk-3.1.5/NEWS --- gawk-3.1.4/NEWS 2004-07-28 16:27:19.000000000 +0300 +++ gawk-3.1.5/NEWS 2005-07-26 21:32:22.000000000 +0300 @@ -1,3 +1,61 @@ +Changes from 3.1.4 to 3.1.5 +--------------------------- + +1. The random() suite has been updated to a current FreeBSD version, which + works on systems with > 32-bit ints. + +2. A new option, `--exec' has been added. It's like -f but ends option + processing. It also disables `x=y' variable assignments, but not -v. + It's needed mainly for CGI scripts, so that source code can't be + passed in as part of the URL. + +3. dfa.[ch] have been synced with GNU grep development. This also fixes + multiple regex matching problems in multibyte locales. + +4. Updated to Automake 1.9.5. + +5. Updated to Bison 2.0. + +6. The getopt* and regex* files were synchronized with current GLIBC CVS. + See the ChangeLog for the versions and minor edits made. + +7. `configure --disable-nls' now disables just gawk's own translations. + Gawk continues to work with the locale's numeric formatting. This + includes a bug fix in handling the printf ' flag (e.g., %'d). + +8. Gawk is now multibyte aware. This means that index(), length(), + substr() and match() all work in terms of characters, not bytes. + +9. Gawk is now smarter about parsing numeric constants in corner cases. + +11. Not closing open redirections no longer causes gawk to exit non-zero. + +10. The VMS port has been updated. + +11. Changes from Andrew Schorr at the xmlgawk project to provide for + open hooks from extensions are now included. This will let the + xmlgawk extension work in the standard gawk. + +12. Updated to gettext 0.14.4. Gawk no longer includes its own copy + of the gettext `intl' library, following current GNU practice to + rely on there being an external version thereof. + +13. A regexp of the form `//' will now generate a warning that it + is not a C++ comment from --lint (awk.y). + +14. The ^ and ^= operators with an integer exponent now use Exponentiation + by Squaring. This simultaneously fixes a problem with ^= and a negative + integer exponent. + +15. length(array) now returns the number of elements in the array. This is + is a non-standard extension that will fail in POSIX mode. + +16. Carriage return characters are now ignored in program source code. + +17. Four new translations added. + +18. Various minor bugs fixed. See the ChangeLog for the details. + Changes from 3.1.3 to 3.1.4 --------------------------- @@ -221,7 +279,7 @@ 1. Six new translations. -2. Having more than 4 different value for OFMT and/or CONVFMT now works. +2. Having more than 4 different values for OFMT and/or CONVFMT now works. 3. The handling of dynamic regexes is now more more sane, esp. w.r.t. the profiling code. The profiling code has been fixed in several diff -urN gawk-3.1.4/README gawk-3.1.5/README --- gawk-3.1.4/README 2004-07-28 16:27:58.000000000 +0300 +++ gawk-3.1.5/README 2005-07-26 21:39:08.000000000 +0300 @@ -1,6 +1,6 @@ README: -This is GNU Awk 3.1.4. It is upwardly compatible with the Bell Labs +This is GNU Awk 3.1.5. It is upwardly compatible with the Bell Labs research version of awk. It is almost completely compliant with the 1993 POSIX 1003.2 standard for awk. (See the note below about POSIX.) @@ -92,7 +92,7 @@ juan@biophnet.unlp.edu.ar OS/2: - gawk-maintainer@unixos2.org + andreas.buening@@nexgo.de Tandem: Stephen Davies diff -urN gawk-3.1.4/README_d/README.cygwin-dynamic gawk-3.1.5/README_d/README.cygwin-dynamic --- gawk-3.1.4/README_d/README.cygwin-dynamic 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/README_d/README.cygwin-dynamic 2005-05-11 18:28:11.000000000 +0300 @@ -0,0 +1,88 @@ +From: courierdavid@hotmail.com +Newsgroups: comp.lang.awk +Subject: Re: Compiling gawk extensions under Cygwin +Date: 14 Mar 2005 20:47:09 -0800 +Organization: http://groups.google.com +Lines: 67 +Message-ID: <1110862029.175727.109280@o13g2000cwo.googlegroups.com> +References: <1e4e8dbe.0501140813.18248833@posting.google.com> + +NNTP-Posting-Host: 194.237.142.24 +Mime-Version: 1.0 +Content-Type: text/plain; charset="iso-8859-1" +X-Trace: posting.google.com 1110862033 8921 127.0.0.1 (15 Mar 2005 04:47:13 GMT) +X-Complaints-To: groups-abuse@google.com +NNTP-Posting-Date: Tue, 15 Mar 2005 04:47:13 +0000 (UTC) +User-Agent: G2/0.2 +Complaints-To: groups-abuse@google.com +Injection-Info: o13g2000cwo.googlegroups.com; posting-host=194.237.142.24; + posting-account=Iz4C5wwAAABx1yG_ft8eEAI99Wu1Tku1 +Path: news.012.net.il!seanews2.seabone.net!newsfeed.albacom.net!news.mailgate.org!newsfeed.stueberl.de!proxad.net!64.233.160.134.MISMATCH!postnews.google.com!o13g2000cwo.googlegroups.com!not-for-mail +Xref: news.012.net.il comp.lang.awk:21835 + +Thanks for your help there Michael. I wouldn't have thought of that one +myself without your help :-) + +Anyway - for those who must stick with Cygwin here's a method that +works using the mingw32 makefiles and some modifications: + +Basically you need to extract all exportable symbol names from the +gawk.exe file into a text file and then create a dummy library file +which we can link against on Cygwin. You then throw the library file +away because in reality we use the gawk.exe file as the provider of +those functions. + +1. First grab the gawk source, e.g. gawk-3.1.4.tar.bz2 and decompress +it. +2. Move to the gawk-3.1.4 directory you just created. +3. cp pc/* . (copy the pc directory into the main one) +4. edit makefile - uncomment lines "DYN_FLAGS", "DYN_EXP", "DYN_OBJ" +and "DYN_MAKEXP=$(DMEmingw32) +5. make mingw32 (make a gawk.exe) +6. run "gcc -o gawk.exe array.o builtin.o eval.o field.o gawkmisc.o +io.o main.o ext.o msg.o node.o profile.o re.o version.o dlfcn.o +gawk.exp awkgram.o getid.o popen.o getopt.o getopt1.o dfa.o regex.o +random.o" (i.e. remove the -s from the compile command from the +makefile so the symbols are left in gawk.exe) + +now export all symbols from gawk.exe into foo.def so that we can put +these in our library +7. echo EXPORTS > foo.def +8. nm gawk.exe | grep -E ' [TBD] _' | sed 's/.* [TBD] _//' >> foo.def +9. cp foo.def gawkw32.def + +build the new library with all symbols included +10. make mingw32 + +Now you will see a file "libgawk.a" which you can link against to +create extensions. For example to build an extension called "file" run: + +gcc -shared -dll -DHAVE_CONFIG_H -I . extension/file.c -o file.dll -L . +-lgawk + +Then you can load it in gawk using the expression: + +extension("./file.dll", "dlload"); + +You must use the gawk you compiled from source though. It won't work +with any other gawk unfortunately :-( But that's OK because the +stripped gawk is not too big in size. + +Cheers, +Dave. + +Michael Heiming wrote: +> In comp.lang.awk David Smith : +> > Has anyone managed to compile gawk extensions (such as "filefuncs") +> > under Cygwin? +> +> Solution is pretty simple, install a real OS, Linux/*BSD or any +> other unix and this and further problems won't happen. +> +> Good luck +> +> -- +> Michael Heiming (X-PGP-Sig > GPG-Key ID: EDD27B94) +> mail: echo zvpunry@urvzvat.qr | perl -pe 'y/a-z/n-za-m/' +> #bofh excuse 242: Software uses US measurements, but the OS +> is in metric... diff -urN gawk-3.1.4/README_d/README.macos gawk-3.1.5/README_d/README.macos --- gawk-3.1.4/README_d/README.macos 2000-12-03 18:13:57.000000000 +0200 +++ gawk-3.1.5/README_d/README.macos 2005-07-04 09:56:57.000000000 +0300 @@ -1,3 +1,17 @@ +Mon Jul 4 09:55:22 IDT 2005 +============================ + +If you use GCC 4.0 under Mac OS X to compile gawk with optimization, +AND multibyte support is *disabled*, the `ignrcas2' test fails. This is +a compiler bug. Either compile it without optimization, or use gcc-3.3. + +All the other tests pass. + +Happily, the default is for the multibyte support to be enabled, so all +the tests pass by defualt. + +The notes below no longer seem to apply. + Sun Dec 3 18:11:09 IST 2000 ============================ diff -urN gawk-3.1.4/README_d/README.multibyte gawk-3.1.5/README_d/README.multibyte --- gawk-3.1.4/README_d/README.multibyte 2003-07-04 20:08:49.000000000 +0300 +++ gawk-3.1.5/README_d/README.multibyte 2005-06-03 12:21:04.000000000 +0300 @@ -1,3 +1,10 @@ +Fri Jun 3 12:20:17 IDT 2005 +============================ + +As noted in the NEWS file, as of 3.1.5, gawk uses character values instead +of byte values for `index', `length', `substr' and `match'. This works +in multibyte and unicode locales. + Wed Jun 18 16:47:31 IDT 2003 ============================ diff -urN gawk-3.1.4/aclocal.m4 gawk-3.1.5/aclocal.m4 --- gawk-3.1.4/aclocal.m4 2004-08-02 12:16:26.000000000 +0300 +++ gawk-3.1.5/aclocal.m4 2005-07-26 21:43:58.000000000 +0300 @@ -1,7 +1,7 @@ -# generated automatically by aclocal 1.8.5 -*- Autoconf -*- +# generated automatically by aclocal 1.9.5 -*- Autoconf -*- -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -11,55 +11,32 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. -# -*- Autoconf -*- -# Copyright (C) 2002, 2003 Free Software Foundation, Inc. -# Generated from amversion.in; do not edit by hand. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. -AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.8"]) +AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"]) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION so it can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], - [AM_AUTOMAKE_VERSION([1.8.5])]) - -# AM_AUX_DIR_EXPAND - -# Copyright (C) 2001, 2003 Free Software Foundation, Inc. + [AM_AUTOMAKE_VERSION([1.9.5])]) -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. +# AM_AUX_DIR_EXPAND -*- Autoconf -*- -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to @@ -107,25 +84,14 @@ ]) -# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003 +# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2005 # Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 # This was merged into AC_PROG_CC in Autoconf. @@ -140,26 +106,16 @@ ]) AU_DEFUN([fp_PROG_CC_STDC]) -# AM_CONDITIONAL -*- Autoconf -*- - -# Copyright (C) 1997, 2000, 2001, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. +# AM_CONDITIONAL -*- Autoconf -*- -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 6 +# serial 7 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- @@ -179,30 +135,19 @@ fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then - AC_MSG_ERROR([conditional "$1" was never defined. -Usually this means the macro was only invoked conditionally.]) + AC_MSG_ERROR([[conditional "$1" was never defined. +Usually this means the macro was only invoked conditionally.]]) fi])]) -# serial 7 -*- Autoconf -*- -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - +# serial 8 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, @@ -211,7 +156,6 @@ # CC etc. in the Makefile, will ask for an AC_PROG_CC use... - # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. @@ -351,26 +295,16 @@ AC_SUBST([AMDEPBACKSLASH]) ]) -# Generate code to set up dependency tracking. -*- Autoconf -*- - -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. +# Generate code to set up dependency tracking. -*- Autoconf -*- -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -#serial 2 +#serial 3 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ @@ -389,27 +323,21 @@ else continue fi - grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # We invoke sed twice because it is the simplest approach to - # changing $(DEPDIR) to its actual value in the expansion. - for file in `sed -n ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue @@ -435,30 +363,19 @@ [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) -# Do all the work for Automake. -*- Autoconf -*- +# Do all the work for Automake. -*- Autoconf -*- -# This macro actually does too much some checks are only needed if -# your package does certain things. But this isn't really a big deal. - -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# serial 12 -# serial 11 +# This macro actually does too much. Some checks are only needed if +# your package does certain things. But this isn't really a big deal. # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) @@ -516,7 +433,6 @@ AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) AM_MISSING_PROG(AUTOHEADER, autoheader) AM_MISSING_PROG(MAKEINFO, makeinfo) -AM_MISSING_PROG(AMTAR, tar) AM_PROG_INSTALL_SH AM_PROG_INSTALL_STRIP AC_REQUIRE([AM_PROG_MKDIR_P])dnl @@ -525,7 +441,9 @@ AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl - +_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], + [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], + [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES(CC)], @@ -559,51 +477,27 @@ done echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. - -# Copyright (C) 2001, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl install_sh=${install_sh-"$am_aux_dir/install-sh"} AC_SUBST(install_sh)]) -# -*- Autoconf -*- -# Copyright (C) 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 1 +# serial 2 # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. @@ -618,26 +512,15 @@ rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) -# Check to see how 'make' treats includes. -*- Autoconf -*- - -# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. +# Check to see how 'make' treats includes. -*- Autoconf -*- -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 2 +# serial 3 # AM_MAKE_INCLUDE() # ----------------- @@ -681,27 +564,16 @@ rm -f confinc confmf ]) -# -*- Autoconf -*- - +# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997, 1999, 2000, 2001, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ @@ -727,27 +599,16 @@ fi ]) +# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + # AM_PROG_MKDIR_P # --------------- # Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise. - -# Copyright (C) 2003, 2004 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - +# # Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories # created by `make install' are always world readable, even if the # installer happens to have an overly restrictive umask (e.g. 077). @@ -768,13 +629,21 @@ # this.) AC_DEFUN([AM_PROG_MKDIR_P], [if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - # Keeping the `.' argument allows $(mkdir_p) to be used without - # argument. Indeed, we sometimes output rules like + # We used to keeping the `.' as first argument, in order to + # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) - # where $(somedir) is conditionally defined. - # (`test -n '$(somedir)' && $(mkdir_p) $(somedir)' is a more - # expensive solution, as it forces Make to start a sub-shell.) - mkdir_p='mkdir -p -- .' + # where $(somedir) is conditionally defined. However this is wrong + # for two reasons: + # 1. if the package is installed by a user who cannot write `.' + # make install will fail, + # 2. the above comment should most certainly read + # $(mkdir_p) $(DESTDIR)$(somedir) + # so it does not work when $(somedir) is undefined and + # $(DESTDIR) is not. + # To support the latter case, we have to write + # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), + # so the `.' trick is pointless. + mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as @@ -793,26 +662,15 @@ fi AC_SUBST([mkdir_p])]) -# Helper functions for option handling. -*- Autoconf -*- - -# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. +# Helper functions for option handling. -*- Autoconf -*- -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 2 +# serial 3 # _AM_MANGLE_OPTION(NAME) # ----------------------- @@ -837,26 +695,14 @@ AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) - -# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003 +# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2005 # Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 AC_DEFUN([AM_C_PROTOTYPES], [AC_REQUIRE([AC_C_PROTOTYPES]) @@ -874,28 +720,16 @@ AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES]) -# -# Check to make sure that the build environment is sane. -# - -# Copyright (C) 1996, 1997, 2000, 2001, 2003 Free Software Foundation, Inc. +# Check to make sure that the build environment is sane. -*- Autoconf -*- -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 3 +# serial 4 # AM_SANITY_CHECK # --------------- @@ -938,25 +772,14 @@ fi AC_MSG_RESULT(yes)]) -# AM_PROG_INSTALL_STRIP - -# Copyright (C) 2001, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. +# AM_PROG_INSTALL_STRIP +# --------------------- # One issue with vendor `install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip @@ -977,34 +800,116 @@ INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) +# Check how to create a tarball. -*- Autoconf -*- + +# Copyright (C) 2004, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 2 + +# _AM_PROG_TAR(FORMAT) +# -------------------- +# Check how to create a tarball in format FORMAT. +# FORMAT should be one of `v7', `ustar', or `pax'. +# +# Substitute a variable $(am__tar) that is a command +# writing to stdout a FORMAT-tarball containing the directory +# $tardir. +# tardir=directory && $(am__tar) > result.tar +# +# Substitute a variable $(am__untar) that extract such +# a tarball read from stdin. +# $(am__untar) < result.tar +AC_DEFUN([_AM_PROG_TAR], +[# Always define AMTAR for backward compatibility. +AM_MISSING_PROG([AMTAR], [tar]) +m4_if([$1], [v7], + [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], + [m4_case([$1], [ustar],, [pax],, + [m4_fatal([Unknown tar format])]) +AC_MSG_CHECKING([how to create a $1 tar archive]) +# Loop over all known methods to create a tar archive until one works. +_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' +_am_tools=${am_cv_prog_tar_$1-$_am_tools} +# Do not fold the above two line into one, because Tru64 sh and +# Solaris sh will not grok spaces in the rhs of `-'. +for _am_tool in $_am_tools +do + case $_am_tool in + gnutar) + for _am_tar in tar gnutar gtar; + do + AM_RUN_LOG([$_am_tar --version]) && break + done + am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' + am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' + am__untar="$_am_tar -xf -" + ;; + plaintar) + # Must skip GNU tar: if it does not support --format= it doesn't create + # ustar tarball either. + (tar --version) >/dev/null 2>&1 && continue + am__tar='tar chf - "$$tardir"' + am__tar_='tar chf - "$tardir"' + am__untar='tar xf -' + ;; + pax) + am__tar='pax -L -x $1 -w "$$tardir"' + am__tar_='pax -L -x $1 -w "$tardir"' + am__untar='pax -r' + ;; + cpio) + am__tar='find "$$tardir" -print | cpio -o -H $1 -L' + am__tar_='find "$tardir" -print | cpio -o -H $1 -L' + am__untar='cpio -i -H $1 -d' + ;; + none) + am__tar=false + am__tar_=false + am__untar=false + ;; + esac + + # If the value was cached, stop now. We just wanted to have am__tar + # and am__untar set. + test -n "${am_cv_prog_tar_$1}" && break + + # tar/untar a dummy directory, and stop if the command works + rm -rf conftest.dir + mkdir conftest.dir + echo GrepMe > conftest.dir/file + AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) + rm -rf conftest.dir + if test -s conftest.tar; then + AM_RUN_LOG([$am__untar /dev/null 2>&1 && break + fi +done +rm -rf conftest.dir + +AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) +AC_MSG_RESULT([$am_cv_prog_tar_$1])]) +AC_SUBST([am__tar]) +AC_SUBST([am__untar]) +]) # _AM_PROG_TAR + m4_include([m4/arch.m4]) -m4_include([m4/codeset.m4]) m4_include([m4/gettext.m4]) -m4_include([m4/glibc21.m4]) m4_include([m4/iconv.m4]) -m4_include([m4/intdiv0.m4]) -m4_include([m4/intmax.m4]) m4_include([m4/intmax_t.m4]) -m4_include([m4/inttypes-pri.m4]) -m4_include([m4/inttypes.m4]) m4_include([m4/inttypes_h.m4]) -m4_include([m4/lcmessage.m4]) m4_include([m4/lib-ld.m4]) m4_include([m4/lib-link.m4]) m4_include([m4/lib-prefix.m4]) -m4_include([m4/longdouble.m4]) m4_include([m4/longlong.m4]) m4_include([m4/nls.m4]) m4_include([m4/po.m4]) -m4_include([m4/printf-posix.m4]) m4_include([m4/progtest.m4]) -m4_include([m4/signed.m4]) -m4_include([m4/size_max.m4]) m4_include([m4/socket.m4]) m4_include([m4/stdint_h.m4]) m4_include([m4/strtod.m4]) m4_include([m4/uintmax_t.m4]) m4_include([m4/ulonglong.m4]) -m4_include([m4/wchar_t.m4]) -m4_include([m4/wint_t.m4]) -m4_include([m4/xsize.m4]) diff -urN gawk-3.1.4/array.c gawk-3.1.5/array.c --- gawk-3.1.4/array.c 2004-07-26 17:11:01.000000000 +0300 +++ gawk-3.1.5/array.c 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2004 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* @@ -435,7 +435,7 @@ if (s1_len == s2->stlen) { if (s1_len == 0 /* "" is a valid index */ - || STREQN(s1_str, s2->stptr, s1_len)) + || memcmp(s1_str, s2->stptr, s1_len) == 0) return bucket; } } @@ -609,7 +609,7 @@ if (s1_len == s2->stlen) { if (s1_len == 0 /* "" is a valid index */ - || STREQN(s1_str, s2->stptr, s1_len)) + || memcmp(s1_str, s2->stptr, s1_len) == 0) break; } } diff -urN gawk-3.1.4/awk.h gawk-3.1.5/awk.h --- gawk-3.1.4/awk.h 2004-07-26 17:11:05.000000000 +0300 +++ gawk-3.1.5/awk.h 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2004 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* ------------------------------ Includes ------------------------------ */ @@ -74,7 +74,9 @@ #include #endif +#ifndef NO_MBSUPPORT #include "mbsupport.h" /* defines MBS_SUPPORT */ +#endif #if defined(MBS_SUPPORT) /* We can handle multibyte strings. */ @@ -82,6 +84,10 @@ #include #endif +#ifdef STDC_HEADERS +#include +#endif + /* ----------------- System dependencies (with more includes) -----------*/ /* This section is the messiest one in the file, not a lot that can be done */ @@ -230,6 +236,9 @@ #define SUBPATEND(rp,s,n) (rp)->regs.end[n] #define NUMSUBPATS(rp,s) (rp)->regs.num_regs #endif /* GNU_REGEX */ +/* regexp matching flags: */ +#define RE_NEED_START 1 /* need to know start/end of match */ +#define RE_NO_BOL 2 /* for RS, not allowed to match ^ in regexp */ /* Stuff for losing systems. */ #ifdef STRTOD_NOT_C89 @@ -272,10 +281,18 @@ /* ------------------ Constants, Structures, Typedefs ------------------ */ +#if 0 +/* This isn't right. Figure it out the right way for the next release */ #ifndef AWKNUM -#define AWKNUM double +#ifdef LDBL_MANT_DIG +#define AWKNUM long double +#else +#endif +#endif #endif +#define AWKNUM double + #ifndef TRUE /* a bit hackneyed, but what the heck */ #define TRUE 1 @@ -481,6 +498,10 @@ size_t slen; long sref; int idx; +#ifdef MBS_SUPPORT + wchar_t *wsp; + size_t wslen; +#endif } val; struct { struct exp_node *next; @@ -516,6 +537,9 @@ * function name; see awkgram.y */ # define FIELD 1024 /* this is a field */ # define INTLSTR 2048 /* use localized version */ +#ifdef MBS_SUPPORT +# define WSTRCUR 4096 /* wide str value is current */ +#endif } NODE; #define vname sub.nodep.name @@ -548,6 +572,9 @@ #define stref sub.val.sref #define stfmt sub.val.idx +#define wstptr sub.val.wsp +#define wstlen sub.val.wslen + #define numbr sub.val.fltnum /* Node_var: */ @@ -588,6 +615,11 @@ ssize_t count; /* amount read last time */ size_t scanoff; /* where we were in the buffer when we had to regrow/refill */ + + void *opaque; /* private data for open hooks */ + int (*get_record) P((char **out, struct iobuf *, int *errcode)); + void (*close_func) P((struct iobuf *)); /* open and close hooks */ + int flag; # define IOP_IS_TTY 1 # define IOP_IS_INTERNAL 2 @@ -595,6 +627,7 @@ # define IOP_NOFREE_OBJ 8 # define IOP_AT_EOF 16 # define IOP_CLOSED 32 +# define IOP_AT_START 64 } IOBUF; typedef void (*Func_ptr) P((void)); @@ -720,6 +753,8 @@ #endif #ifdef MBS_SUPPORT extern int gawk_mb_cur_max; +#else +extern const int gawk_mb_cur_max; #endif #if defined (HAVE_GETGROUPS) && defined(NGROUPS_MAX) && NGROUPS_MAX > 0 @@ -742,8 +777,6 @@ /* ------------------------- Pseudo-functions ------------------------- */ #define is_identchar(c) (isalnum(c) || (c) == '_') -#define isnondecimal(str) (((str)[0]) == '0' && (ISDIGIT((str)[1]) \ - || (str)[1] == 'x' || (str)[1] == 'X')) #define var_uninitialized(n) ((n)->var_value == Nnull_string) @@ -944,6 +977,8 @@ extern NODE *stopme P((NODE *tree)); extern void shadow_funcs P((void)); extern int check_special P((const char *name)); +extern void register_deferred_variable P((const char *name, + NODE *(*load_func)(void))); /* builtin.c */ extern double double_to_int P((double d)); extern NODE *do_exp P((NODE *tree)); @@ -1004,6 +1039,7 @@ extern void set_LINT P((void)); extern void set_TEXTDOMAIN P((void)); extern void update_ERRNO P((void)); +extern void update_ERRNO_saved P((int)); extern const char *redflags2str P((int)); extern const char *flags2str P((int)); extern const char *genflags2str P((int flagval, const struct flagtab *tab)); @@ -1055,13 +1091,14 @@ #define memset memset_ulong #endif /* io.c */ +extern void register_open_hook P((void *(*open_func)(IOBUF *))); extern void set_FNR P((void)); extern void set_NR P((void)); extern void do_input P((void)); extern struct redirect *redirect P((NODE *tree, int *errflg)); extern NODE *do_close P((NODE *tree)); extern int flush_io P((void)); -extern int close_io P((void)); +extern int close_io P((int *stdio_problem)); extern int devopen P((const char *name, const char *mode)); extern int pathopen P((const char *file)); extern NODE *do_getline P((NODE *tree)); @@ -1069,8 +1106,6 @@ extern struct redirect *getredirect P((const char *str, int len)); /* main.c */ extern int main P((int argc, char **argv)); -extern NODE *load_environ P((void)); -extern NODE *load_procinfo P((void)); extern int arg_assign P((char *arg, int initing)); /* msg.c */ extern void err P((const char *s, const char *emsg, va_list argp)) ATTRIBUTE_PRINTF(2, 0); @@ -1126,10 +1161,16 @@ #endif extern void unref P((NODE *tmp)); extern int parse_escape P((const char **string_ptr)); +#ifdef MBS_SUPPORT +extern NODE *str2wstr P((NODE *n, size_t **ptr)); +#define force_wstring(n) str2wstr(n, NULL) +extern const wchar_t *wstrstr P((const wchar_t *haystack, size_t hs_len, const wchar_t *needle, size_t needle_len)); +extern const wchar_t *wcasestrstr P((const wchar_t *haystack, size_t hs_len, const wchar_t *needle, size_t needle_len)); +#endif /* re.c */ extern Regexp *make_regexp P((const char *s, size_t len, int ignorecase, int dfa)); extern int research P((Regexp *rp, char *str, int start, - size_t len, int need_start)); + size_t len, int flags)); extern void refree P((Regexp *rp)); extern void reg_error P((const char *s)); extern Regexp *re_update P((NODE *t)); @@ -1138,6 +1179,7 @@ extern int avoid_dfa P((NODE *re, char *str, size_t len)); /* temporary */ extern int reisstring P((const char *text, size_t len, Regexp *re, const char *buf)); extern int remaybelong P((const char *text, size_t len)); +extern int isnondecimal P((const char *str, int use_locale)); /* strncasecmp.c */ #ifndef BROKEN_STRNCASECMP diff -urN gawk-3.1.4/awkgram.y gawk-3.1.5/awkgram.y --- gawk-3.1.4/awkgram.y 2004-07-26 17:11:12.000000000 +0300 +++ gawk-3.1.5/awkgram.y 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2004 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ %{ @@ -308,9 +308,11 @@ NODE *n; size_t len = strlen($3); - if (do_lint && ($3)[0] == '*') { - /* possible C comment */ - if (($3)[len-1] == '*') + if (do_lint) { + if (len == 0) + lintwarn(_("regexp constant `//' looks like a C++ comment, but is not")); + else if (($3)[0] == '*' && ($3)[len-1] == '*') + /* possible C comment */ lintwarn(_("regexp constant `/%s/' looks like a C comment, but is not"), tokstart); } getnode(n); @@ -404,6 +406,8 @@ && strcmp($5, arr->vname) == 0) { $8->type = Node_K_delete_loop; $$ = $8; + free($3); /* thanks to valgrind for pointing these out */ + free($5); } else goto regular_loop; @@ -966,6 +970,12 @@ } | '$' non_post_simp_exp { $$ = node($2, Node_field_spec, (NODE *) NULL); } +/* +#if 0 + | lex_builtin + { fatal(_("can't use built-in function `%s' as a variable"), tokstart); } +#endif +*/ ; l_brace @@ -1105,6 +1115,9 @@ /* This macro means that last nextc() return a singlebyte character or 1st byte of a multibyte character. */ #define nextc_is_1stbyte (cur_char_ring[cur_ring_idx] == 1) +#else /* MBS_SUPPORT */ +/* a dummy */ +#define nextc_is_1stbyte 1 #endif /* MBS_SUPPORT */ /* getfname --- return name of a builtin function (for pretty printing) */ @@ -1432,7 +1445,12 @@ static int nextc(void) { - if (gawk_mb_cur_max > 1) { + if (gawk_mb_cur_max > 1) { + if (!lexptr || lexptr >= lexend) { + if (! get_src_buf()) + return EOF; + } + /* Update the buffer index. */ cur_ring_idx = (cur_ring_idx == RING_BUFFER_SIZE - 1)? 0 : cur_ring_idx + 1; @@ -1444,11 +1462,6 @@ mbstate_t tmp_state; size_t mbclen; - if (!lexptr || lexptr >= lexend) - if (!get_src_buf()) { - return EOF; - } - for (idx = 0 ; lexptr + idx < lexend ; idx++) { tmp_state = cur_mbstate; mbclen = mbrlen(lexptr, idx + 1, &tmp_state); @@ -1522,24 +1535,17 @@ /* pushback --- push a character back on the input */ -#ifdef MBS_SUPPORT - -static void +static inline void pushback(void) { - if (gawk_mb_cur_max > 1) { +#ifdef MBS_SUPPORT + if (gawk_mb_cur_max > 1) cur_ring_idx = (cur_ring_idx == 0)? RING_BUFFER_SIZE - 1 : cur_ring_idx - 1; - (lexptr && lexptr > lexptr_begin ? lexptr-- : lexptr); - } else - (lexptr && lexptr > lexptr_begin ? lexptr-- : lexptr); +#endif + (lexptr && lexptr > lexptr_begin ? lexptr-- : lexptr); } -#else - -#define pushback() (lexptr && lexptr > lexptr_begin ? lexptr-- : lexptr) - -#endif /* MBS_SUPPORT */ /* allow_newline --- allow newline after &&, ||, ? and : */ @@ -1630,10 +1636,8 @@ tok = tokstart; for (;;) { c = nextc(); -#ifdef MBS_SUPPORT - if (gawk_mb_cur_max == 1 || nextc_is_1stbyte) -#endif - switch (c) { + + if (gawk_mb_cur_max == 1 || nextc_is_1stbyte) switch (c) { case '[': /* one day check for `.' and `=' too */ if (nextc() == ':' || in_brack == 0) @@ -1668,6 +1672,21 @@ end_regexp: tokadd('\0'); yylval.sval = tokstart; + if (do_lint) { + int peek = nextc(); + + pushback(); + if (peek == 'i' || peek == 's') { + if (source) + lintwarn( + _("%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"), + source, sourceline, peek); + else + lintwarn( + _("tawk regex modifier `/.../%c' doesn't work in gawk"), + peek); + } + } return lasttok = REGEXP; case '\n': pushback(); @@ -1681,7 +1700,9 @@ } } retry: - while ((c = nextc()) == ' ' || c == '\t') + + /* skipping \r is a hack, but windows is just too pervasive. sigh. */ + while ((c = nextc()) == ' ' || c == '\t' || c == '\r') continue; lexeme = lexptr ? lexptr - 1 : lexptr; @@ -1689,10 +1710,7 @@ tok = tokstart; yylval.nodetypeval = Node_illegal; -#ifdef MBS_SUPPORT - if (gawk_mb_cur_max == 1 || nextc_is_1stbyte) -#endif - switch (c) { + if (gawk_mb_cur_max == 1 || nextc_is_1stbyte) switch (c) { case EOF: if (lasttok != NEWLINE) { lasttok = NEWLINE; @@ -1736,7 +1754,7 @@ */ if (! do_traditional) { /* strip trailing white-space and/or comment */ - while ((c = nextc()) == ' ' || c == '\t') + while ((c = nextc()) == ' ' || c == '\t' || c == '\r') continue; if (c == '#') { if (do_lint) @@ -1937,10 +1955,8 @@ yyerror(_("unterminated string")); exit(1); } -#ifdef MBS_SUPPORT - if (gawk_mb_cur_max == 1 || nextc_is_1stbyte) -#endif - if (c == '\\') { + if ((gawk_mb_cur_max == 1 || nextc_is_1stbyte) && + c == '\\') { c = nextc(); if (c == '\n') { sourceline++; @@ -2006,11 +2022,21 @@ case 'X': if (do_traditional) goto done; - if (tok == tokstart + 2) - inhex = TRUE; + if (tok == tokstart + 2) { + int peek = nextc(); + + if (ISXDIGIT(peek)) { + inhex = TRUE; + pushback(); /* following digit */ + } else { + pushback(); /* x or X */ + goto done; + } + } break; case '.': - if (seen_point) { + /* period ends exponent part of floating point number */ + if (seen_point || seen_e) { gotnumber = TRUE; break; } @@ -2025,10 +2051,23 @@ break; } seen_e = TRUE; - if ((c = nextc()) == '-' || c == '+') - tokadd(c); - else - pushback(); + if ((c = nextc()) == '-' || c == '+') { + int c2 = nextc(); + + if (ISDIGIT(c2)) { + tokadd(c); + tokadd(c2); + } else { + pushback(); /* non-digit after + or - */ + pushback(); /* + or - */ + pushback(); /* e or E */ + } + } else if (! ISDIGIT(c)) { + pushback(); /* character after e or E */ + pushback(); /* e or E */ + } else { + pushback(); /* digit */ + } break; case 'a': case 'A': @@ -2069,12 +2108,14 @@ eof_warned = TRUE; } tokadd('\0'); - if (! do_traditional && isnondecimal(tokstart)) { - static short warned = FALSE; - if (do_lint && ! warned) { - warned = TRUE; - lintwarn("numeric constant `%.*s' treated as octal or hexadecimal", - strlen(tokstart)-1, tokstart); + if (! do_traditional && isnondecimal(tokstart, FALSE)) { + if (do_lint) { + if (ISDIGIT(tokstart[1])) /* not an 'x' or 'X' */ + lintwarn("numeric constant `%.*s' treated as octal", + (int) strlen(tokstart)-1, tokstart); + else if (tokstart[1] == 'x' || tokstart[1] == 'X') + lintwarn("numeric constant `%.*s' treated as hexadecimal", + (int) strlen(tokstart)-1, tokstart); } yylval.nodeval = make_number(nondec2awknum(tokstart, strlen(tokstart))); } else @@ -2120,7 +2161,7 @@ * * print "xyzzy"$_"foo" * - * Without the check for ` lasttok != '$'' ', this is parsed as + * Without the check for ` lasttok != '$' ', this is parsed as * * print "xxyzz" $(_"foo") * @@ -3021,6 +3062,37 @@ } } +/* deferred varibles --- those that are only defined if needed. */ + +/* + * Is there any reason to use a hash table for deferred variables? At the + * moment, there are only 1 to 3 such variables, so it may not be worth + * the overhead. If more modules start using this facility, it should + * probably be converted into a hash table. + */ + +static struct deferred_variable { + NODE *(*load_func)(void); + struct deferred_variable *next; + char name[1]; /* variable-length array */ +} *deferred_variables; + +/* register_deferred_variable --- add a var name and loading function to the list */ + +void +register_deferred_variable(const char *name, NODE *(*load_func)(void)) +{ + struct deferred_variable *dv; + size_t sl = strlen(name); + + emalloc(dv, struct deferred_variable *, sizeof(*dv)+sl, + "register_deferred_variable"); + dv->load_func = load_func; + dv->next = deferred_variables; + memcpy(dv->name, name, sl+1); + deferred_variables = dv; +} + /* variable --- make sure NAME is in the symbol table */ NODE * @@ -3035,22 +3107,27 @@ } else { /* not found */ - if (! do_traditional && STREQ(name, "PROCINFO")) - r = load_procinfo(); - else if (STREQ(name, "ENVIRON")) - r = load_environ(); - else { - /* - * This is the only case in which we may not free the string. - */ - NODE *n; + struct deferred_variable *dv; - if (type == Node_var_array) - n = node((NODE *) NULL, type, (NODE *) NULL); - else - n = node(Nnull_string, type, (NODE *) NULL); + for (dv = deferred_variables; TRUE; dv = dv->next) { + if (dv == NULL) { + /* + * This is the only case in which we may not + * free the string. + */ + NODE *n; + + if (type == Node_var_array) + n = node(NULL, type, NULL); + else + n = node(Nnull_string, type, NULL); - return install(name, n); + return install(name, n); + } + if (STREQ(name, dv->name)) { + r = (*dv->load_func)(); + break; + } } } if (can_free) diff -urN gawk-3.1.4/awklib/ChangeLog gawk-3.1.5/awklib/ChangeLog --- gawk-3.1.4/awklib/ChangeLog 2004-08-02 12:18:42.000000000 +0300 +++ gawk-3.1.5/awklib/ChangeLog 2005-07-26 21:46:39.000000000 +0300 @@ -1,3 +1,25 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + +Mon Jun 20 23:20:22 2005 Andreas Schwab + + * Makefile.am: Install pwcat and grcat in pkglibexecdir instead of + libexecdir. + +Wed Feb 9 10:13:27 2005 Arnold D. Robbins + + * Makefile.am (pkgdatadir, pkglibexecdir): Use $(datadir) and + $(libexecdir) instead of @datadir@ and @libexecdir@ for coolest + GNU Coding Standards compatibility and functionality. Per Stepan + Kasal. + +Tue Feb 8 18:57:08 2005 Arnold D. Robbins + + * Makefile.am (pkgdatadir, pkglibexecdir): New variables for compatibility + with current GNU Coding Standards. Fixed uses. Thanks to Stepan Kasal + and the discussion in bug-gnu-utils. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. @@ -48,12 +70,12 @@ 2001-02-26 Paul Eggert - * Makefile.am (stamp-eg): Use $(AWK), not awk, as the + * Makefile.am (stamp-eg): Use $(AWK), not awk, as the native awk might not work. 2001-02-26 Andreas Schwab - * Makefile.am: Install igawk as script. + * Makefile.am: Install igawk as script. Mon Nov 6 15:29:08 2000 Arnold D. Robbins diff -urN gawk-3.1.4/awklib/Makefile.am gawk-3.1.5/awklib/Makefile.am --- gawk-3.1.4/awklib/Makefile.am 2004-07-28 16:32:55.000000000 +0300 +++ gawk-3.1.5/awklib/Makefile.am 2005-06-20 23:20:02.000000000 +0300 @@ -1,7 +1,7 @@ # # awklib/Makefile.am --- automake input file for gawk # -# Copyright (C) 1995-2004 the Free Software Foundation, Inc. +# Copyright (C) 1995-2005 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -18,22 +18,21 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # ## process this file with automake to produce Makefile.in EXTRA_DIST = ChangeLog extract.awk eg stamp-eg -# This is so we get config.h. It'll be in the build directory, -# not the source directory. -AM_CPPFLAGS = -I.. +# Get config.h from the build directory and custom.h from the source directory. +AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -datadir = @datadir@/awk -libexecdir = @libexecdir@/awk +pkgdatadir = $(datadir)/awk +pkglibexecdir = $(libexecdir)/awk bin_SCRIPTS = igawk -libexec_PROGRAMS = pwcat grcat +pkglibexec_PROGRAMS = pwcat grcat AUXAWK = passwd.awk group.awk nodist_grcat_SOURCES = grcat.c nodist_pwcat_SOURCES = pwcat.c @@ -41,15 +40,15 @@ all: stamp-eg $(AUXPROGS) igawk $(AUXAWK) install-exec-hook: $(AUXAWK) - $(mkinstalldirs) $(DESTDIR)$(datadir) + $(mkinstalldirs) $(DESTDIR)$(pkgdatadir) for i in $(AUXAWK) $(srcdir)/eg/lib/*.awk ; do \ progname=`echo $$i | sed 's;.*/;;'` ; \ - $(INSTALL_DATA) $$i $(DESTDIR)$(datadir)/$$progname ; \ + $(INSTALL_DATA) $$i $(DESTDIR)$(pkgdatadir)/$$progname ; \ done -# libexecdir and datadir are removed in the top level Makefile's uninstall +# pkglibexecdir and pkgdatadir are removed in the top level Makefile's uninstall uninstall-local: - rm -fr $(DESTDIR)$(libexecdir)/* $(DESTDIR)$(datadir)/* + rm -fr $(DESTDIR)$(pkglibexecdir)/* $(DESTDIR)$(pkgdatadir)/* rm -f $(DESTDIR)$(bindir)/igawk clean-local: @@ -71,9 +70,7 @@ cp $(srcdir)/eg/prog/igawk.sh $@ ; chmod 755 $@ passwd.awk: $(srcdir)/eg/lib/passwdawk.in - (cd $(srcdir)/eg/lib ; \ - sed 's;/usr/local/libexec/awk;$(libexecdir);' < passwdawk.in) > passwd.awk + sed 's;/usr/local/libexec/awk;$(pkglibexecdir);' < $(srcdir)/eg/lib/passwdawk.in > passwd.awk group.awk: $(srcdir)/eg/lib/groupawk.in - (cd $(srcdir)/eg/lib ; \ - sed 's;/usr/local/libexec/awk;$(libexecdir);' < groupawk.in) > group.awk + sed 's;/usr/local/libexec/awk;$(pkglibexecdir);' < $(srcdir)/eg/lib/groupawk.in > group.awk diff -urN gawk-3.1.4/awklib/Makefile.in gawk-3.1.5/awklib/Makefile.in --- gawk-3.1.4/awklib/Makefile.in 2004-08-02 12:16:30.000000000 +0300 +++ gawk-3.1.5/awklib/Makefile.in 2005-07-26 21:44:01.000000000 +0300 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.8.5 from Makefile.am. +# Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,7 +17,7 @@ # # awklib/Makefile.am --- automake input file for gawk # -# Copyright (C) 1995-2004 the Free Software Foundation, Inc. +# Copyright (C) 1995-2005 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -34,7 +34,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # @@ -43,7 +43,6 @@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. @@ -60,36 +59,30 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : +build_triplet = @build@ host_triplet = @host@ -libexec_PROGRAMS = pwcat$(EXEEXT) grcat$(EXEEXT) +pkglibexec_PROGRAMS = pwcat$(EXEEXT) grcat$(EXEEXT) subdir = awklib DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/intdiv0.m4 $(top_srcdir)/m4/intmax.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes-pri.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/longdouble.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes_h.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/longlong.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf-posix.m4 $(top_srcdir)/m4/progtest.m4 \ - $(top_srcdir)/m4/signed.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/strtod.m4 $(top_srcdir)/m4/uintmax_t.m4 \ - $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/m4/wchar_t.m4 \ - $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xsize.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/socket.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/strtod.m4 \ + $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = -am__installdirs = "$(DESTDIR)$(libexecdir)" "$(DESTDIR)$(bindir)" -libexecPROGRAMS_INSTALL = $(INSTALL_PROGRAM) -PROGRAMS = $(libexec_PROGRAMS) +am__installdirs = "$(DESTDIR)$(pkglibexecdir)" "$(DESTDIR)$(bindir)" +pkglibexecPROGRAMS_INSTALL = $(INSTALL_PROGRAM) +PROGRAMS = $(pkglibexec_PROGRAMS) nodist_grcat_OBJECTS = grcat.$(OBJEXT) grcat_OBJECTS = $(nodist_grcat_OBJECTS) grcat_LDADD = $(LDADD) @@ -101,7 +94,6 @@ DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles -@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/grcat.Po ./$(DEPDIR)/pwcat.Po COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) @@ -111,8 +103,8 @@ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +pkgdatadir = $(datadir)/awk ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ @@ -120,15 +112,12 @@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ -BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@ -CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ -DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ @@ -136,22 +125,13 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ -GENCAT = @GENCAT@ -GLIBC21 = @GLIBC21@ GMSGFMT = @GMSGFMT@ -HAVE_ASPRINTF = @HAVE_ASPRINTF@ -HAVE_POSIX_PRINTF = @HAVE_POSIX_PRINTF@ -HAVE_SNPRINTF = @HAVE_SNPRINTF@ -HAVE_WPRINTF = @HAVE_WPRINTF@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INSTOBJEXT = @INSTOBJEXT@ -INTLBISON = @INTLBISON@ INTLLIBS = @INTLLIBS@ -INTLOBJS = @INTLOBJS@ -INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -180,7 +160,6 @@ SOCKET_LIBS = @SOCKET_LIBS@ STRIP = @STRIP@ U = @U@ -USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ @@ -193,13 +172,15 @@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ -datadir = @datadir@/awk +datadir = @datadir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ @@ -210,7 +191,7 @@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ -libexecdir = @libexecdir@/awk +libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ @@ -223,9 +204,9 @@ target_alias = @target_alias@ EXTRA_DIST = ChangeLog extract.awk eg stamp-eg -# This is so we get config.h. It'll be in the build directory, -# not the source directory. -AM_CPPFLAGS = -I.. +# Get config.h from the build directory and custom.h from the source directory. +AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) +pkglibexecdir = $(libexecdir)/awk bin_SCRIPTS = igawk AUXAWK = passwd.awk group.awk nodist_grcat_SOURCES = grcat.c @@ -263,29 +244,29 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -install-libexecPROGRAMS: $(libexec_PROGRAMS) +install-pkglibexecPROGRAMS: $(pkglibexec_PROGRAMS) @$(NORMAL_INSTALL) - test -z "$(libexecdir)" || $(mkdir_p) "$(DESTDIR)$(libexecdir)" - @list='$(libexec_PROGRAMS)'; for p in $$list; do \ + test -z "$(pkglibexecdir)" || $(mkdir_p) "$(DESTDIR)$(pkglibexecdir)" + @list='$(pkglibexec_PROGRAMS)'; for p in $$list; do \ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ if test -f $$p \ ; then \ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " $(INSTALL_PROGRAM_ENV) $(libexecPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(libexecdir)/$$f'"; \ - $(INSTALL_PROGRAM_ENV) $(libexecPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(libexecdir)/$$f" || exit 1; \ + echo " $(INSTALL_PROGRAM_ENV) $(pkglibexecPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(pkglibexecdir)/$$f'"; \ + $(INSTALL_PROGRAM_ENV) $(pkglibexecPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(pkglibexecdir)/$$f" || exit 1; \ else :; fi; \ done -uninstall-libexecPROGRAMS: +uninstall-pkglibexecPROGRAMS: @$(NORMAL_UNINSTALL) - @list='$(libexec_PROGRAMS)'; for p in $$list; do \ + @list='$(pkglibexec_PROGRAMS)'; for p in $$list; do \ f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " rm -f '$(DESTDIR)$(libexecdir)/$$f'"; \ - rm -f "$(DESTDIR)$(libexecdir)/$$f"; \ + echo " rm -f '$(DESTDIR)$(pkglibexecdir)/$$f'"; \ + rm -f "$(DESTDIR)$(pkglibexecdir)/$$f"; \ done -clean-libexecPROGRAMS: - -test -z "$(libexec_PROGRAMS)" || rm -f $(libexec_PROGRAMS) +clean-pkglibexecPROGRAMS: + -test -z "$(pkglibexec_PROGRAMS)" || rm -f $(pkglibexec_PROGRAMS) install-binSCRIPTS: $(bin_SCRIPTS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)" @@ -319,16 +300,14 @@ @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` uninstall-info-am: @@ -411,7 +390,7 @@ check: check-am all-am: Makefile $(PROGRAMS) $(SCRIPTS) installdirs: - for dir in "$(DESTDIR)$(libexecdir)" "$(DESTDIR)$(bindir)"; do \ + for dir in "$(DESTDIR)$(pkglibexecdir)" "$(DESTDIR)$(bindir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done install: install-am @@ -433,14 +412,14 @@ clean-generic: distclean-generic: - -rm -f $(CONFIG_CLEAN_FILES) + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am -clean-am: clean-generic clean-libexecPROGRAMS clean-local \ +clean-am: clean-generic clean-local clean-pkglibexecPROGRAMS \ mostlyclean-am distclean: distclean-am @@ -461,7 +440,7 @@ install-data-am: -install-exec-am: install-binSCRIPTS install-libexecPROGRAMS +install-exec-am: install-binSCRIPTS install-pkglibexecPROGRAMS @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) install-exec-hook @@ -488,35 +467,35 @@ ps-am: -uninstall-am: uninstall-binSCRIPTS uninstall-info-am \ - uninstall-libexecPROGRAMS uninstall-local +uninstall-am: uninstall-binSCRIPTS uninstall-info-am uninstall-local \ + uninstall-pkglibexecPROGRAMS .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ - clean-libexecPROGRAMS clean-local ctags distclean \ + clean-local clean-pkglibexecPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-tags distdir dvi \ dvi-am html html-am info info-am install install-am \ install-binSCRIPTS install-data install-data-am install-exec \ - install-exec-am install-info install-info-am \ - install-libexecPROGRAMS install-man install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ + install-exec-am install-exec-hook install-info install-info-am \ + install-man install-pkglibexecPROGRAMS install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-binSCRIPTS uninstall-info-am \ - uninstall-libexecPROGRAMS uninstall-local + uninstall-local uninstall-pkglibexecPROGRAMS all: stamp-eg $(AUXPROGS) igawk $(AUXAWK) install-exec-hook: $(AUXAWK) - $(mkinstalldirs) $(DESTDIR)$(datadir) + $(mkinstalldirs) $(DESTDIR)$(pkgdatadir) for i in $(AUXAWK) $(srcdir)/eg/lib/*.awk ; do \ progname=`echo $$i | sed 's;.*/;;'` ; \ - $(INSTALL_DATA) $$i $(DESTDIR)$(datadir)/$$progname ; \ + $(INSTALL_DATA) $$i $(DESTDIR)$(pkgdatadir)/$$progname ; \ done -# libexecdir and datadir are removed in the top level Makefile's uninstall +# pkglibexecdir and pkgdatadir are removed in the top level Makefile's uninstall uninstall-local: - rm -fr $(DESTDIR)$(libexecdir)/* $(DESTDIR)$(datadir)/* + rm -fr $(DESTDIR)$(pkglibexecdir)/* $(DESTDIR)$(pkgdatadir)/* rm -f $(DESTDIR)$(bindir)/igawk clean-local: @@ -538,12 +517,10 @@ cp $(srcdir)/eg/prog/igawk.sh $@ ; chmod 755 $@ passwd.awk: $(srcdir)/eg/lib/passwdawk.in - (cd $(srcdir)/eg/lib ; \ - sed 's;/usr/local/libexec/awk;$(libexecdir);' < passwdawk.in) > passwd.awk + sed 's;/usr/local/libexec/awk;$(pkglibexecdir);' < $(srcdir)/eg/lib/passwdawk.in > passwd.awk group.awk: $(srcdir)/eg/lib/groupawk.in - (cd $(srcdir)/eg/lib ; \ - sed 's;/usr/local/libexec/awk;$(libexecdir);' < groupawk.in) > group.awk + sed 's;/usr/local/libexec/awk;$(pkglibexecdir);' < $(srcdir)/eg/lib/groupawk.in > group.awk # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -urN gawk-3.1.4/bisonfix.awk gawk-3.1.5/bisonfix.awk --- gawk-3.1.4/bisonfix.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/bisonfix.awk 2005-05-11 18:28:14.000000000 +0300 @@ -0,0 +1,34 @@ +# bisonfix.awk --- tweak awkgram.c for stupid compilers. + +# Copyright (C) 2005 the Free Software Foundation, Inc. +# +# This file is part of GAWK, the GNU implementation of the +# AWK Programming Language. +# +# GAWK is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# GAWK is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + +/^#if \(! defined \(yyoverflow\) \\/ { + line = $0 + sub(/\\$/, "", line) + getline line2 + sub(/\\$/, "", line2) + getline line3 + + line = line line2 line3 + print line + next +} + +{ print } diff -urN gawk-3.1.4/builtin.c gawk-3.1.5/builtin.c --- gawk-3.1.4/builtin.c 2004-07-13 10:55:28.000000000 +0300 +++ gawk-3.1.5/builtin.c 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2004 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ @@ -32,10 +32,9 @@ #undef INTBITS #if HAVE_INTTYPES_H # include -#else -# if HAVE_STDINT_H -# include -# endif +#endif +#if HAVE_STDINT_H +# include #endif #include #include "random.h" @@ -74,9 +73,6 @@ static NODE *sub_common P((NODE *tree, long how_many, int backdigs)); -#ifdef STDC_HEADERS -#include -#endif /* Assume IEEE-754 arithmetic on pre-C89 hosts. */ #ifndef FLT_RADIX #define FLT_RADIX 2 @@ -310,6 +306,13 @@ dest[idx] = mbclen; } } +#else +/* a dummy function */ +static void +index_multibyte_buffer(char* src ATTRIBUTE_UNUSED, char* dest ATTRIBUTE_UNUSED, int len ATTRIBUTE_UNUSED) +{ + cant_happen(); +} #endif /* do_index --- find index of a string */ @@ -321,15 +324,6 @@ register const char *p1, *p2; register size_t l1, l2; long ret; -#ifdef MBS_SUPPORT - size_t mbclen = 0; - mbstate_t mbs1, mbs2; - if (gawk_mb_cur_max > 1) { - memset(&mbs1, 0, sizeof(mbstate_t)); - memset(&mbs2, 0, sizeof(mbstate_t)); - } -#endif - s1 = tree_eval(tree->lnode); s2 = tree_eval(tree->rnode->lnode); @@ -364,19 +358,17 @@ break; #ifdef MBS_SUPPORT if (gawk_mb_cur_max > 1) { - if (strncasecmpmbs(p1, mbs1, p2, mbs2, l2) == 0) { - ret = 1 + s1->stlen - l1; - break; - } - /* Update l1, and p1. */ - mbclen = mbrlen(p1, l1, &mbs1); - if ((mbclen == 1) || (mbclen == (size_t) -1) - || (mbclen == (size_t) -2) || (mbclen == 0)) { - /* We treat it as a singlebyte character. */ - mbclen = 1; - } - l1 -= mbclen; - p1 += mbclen; + const wchar_t *pos; + + s1 = force_wstring(s1); + s2 = force_wstring(s2); + + pos = wcasestrstr(s1->wstptr, s1->wstlen, s2->wstptr, s2->wstlen); + if (pos == NULL) + ret = 0; + else + ret = pos - s1->wstptr + 1; /* 1-based */ + goto out; } else { #endif /* @@ -399,20 +391,23 @@ if (l2 > l1) break; if (*p1 == *p2 - && (l2 == 1 || STREQN(p1, p2, l2))) { + && (l2 == 1 || (l2 > 0 && memcmp(p1, p2, l2) == 0))) { ret = 1 + s1->stlen - l1; break; } #ifdef MBS_SUPPORT if (gawk_mb_cur_max > 1) { - mbclen = mbrlen(p1, l1, &mbs1); - if ((mbclen == 1) || (mbclen == (size_t) -1) || - (mbclen == (size_t) -2) || (mbclen == 0)) { - /* We treat it as a singlebyte character. */ - mbclen = 1; - } - l1 -= mbclen; - p1 += mbclen; + const wchar_t *pos; + + s1 = force_wstring(s1); + s2 = force_wstring(s2); + + pos = wstrstr(s1->wstptr, s1->wstlen, s2->wstptr, s2->wstlen); + if (pos == NULL) + ret = 0; + else + ret = pos - s1->wstptr + 1; /* 1-based */ + goto out; } else { l1--; p1++; @@ -466,12 +461,36 @@ NODE *tmp; size_t len; - tmp = tree_eval(tree->lnode); - if (do_lint && (tmp->flags & (STRING|STRCUR)) == 0) - lintwarn(_("length: received non-string argument")); - len = force_string(tmp)->stlen; - free_temp(tmp); - return tmp_number((AWKNUM) len); + if (tree->lnode->type == Node_var_array + || tree->lnode->type == Node_array_ref) { + NODE *array_var = tree->lnode; + + if (array_var->type == Node_array_ref) + array_var = array_var->orig_array; + + if (do_lint) + lintwarn(_("`length(array)' is a gawk extension")); + if (do_posix) + goto normal; /* will die as fatal error */ + + return tmp_number((AWKNUM) array_var->table_size); + } else { +normal: + tmp = tree_eval(tree->lnode); + if (do_lint && (tmp->flags & (STRING|STRCUR)) == 0) + lintwarn(_("length: received non-string argument")); + tmp = force_string(tmp); +#ifdef MBS_SUPPORT + if (gawk_mb_cur_max > 1) { + tmp = force_wstring(tmp); + len = tmp->wstlen; + } else +#endif + len = tmp->stlen; + + free_temp(tmp); + return tmp_number((AWKNUM) len); + } } /* do_log --- the log function */ @@ -514,7 +533,7 @@ /* difference of pointers should be of ptrdiff_t type, but let us be kind */ #define bchunk(s, l) if (l) { \ while ((l) > ofre) { \ - long olen = obufout - obuf; \ + size_t olen = obufout - obuf; \ erealloc(obuf, char *, osiz * 2, "format_tree"); \ ofre += osiz; \ osiz *= 2; \ @@ -528,7 +547,7 @@ /* copy one byte from 's' to 'obufout' checking for space in the process */ #define bchunk_one(s) { \ if (ofre < 1) { \ - long olen = obufout - obuf; \ + size_t olen = obufout - obuf; \ erealloc(obuf, char *, osiz * 2, "format_tree"); \ ofre += osiz; \ osiz *= 2; \ @@ -540,7 +559,7 @@ /* Is there space for something L big in the buffer? */ #define chksize(l) if ((l) > ofre) { \ - long olen = obufout - obuf; \ + size_t olen = obufout - obuf; \ erealloc(obuf, char *, osiz * 2, "format_tree"); \ obufout = obuf + olen; \ ofre += osiz; \ @@ -578,7 +597,7 @@ char *cend = &cpbuf[30];/* chars, we lose, but seems unlikely */ char *cp; const char *fill; - double tmpval; + AWKNUM tmpval; char signchar = FALSE; size_t len; int zero_flag = FALSE; @@ -593,7 +612,7 @@ emalloc(obuf, char *, INITIAL_OUT_SIZE, "format_tree"); obufout = obuf; osiz = INITIAL_OUT_SIZE; - ofre = osiz - 1; + ofre = osiz - 2; /* * Icky problem. If the args make a nested call to printf/sprintf, @@ -833,7 +852,7 @@ case '#': alt = TRUE; goto check_pos; -#if ENABLE_NLS && defined(HAVE_LOCALE_H) +#if defined(HAVE_LOCALE_H) case '\'': quote_flag = TRUE; goto check_pos; @@ -950,9 +969,11 @@ ii = jj = 0; do { *--cp = (char) ('0' + uval % 10); -#if ENABLE_NLS && defined(HAVE_LOCALE_H) + uval /= 10; +#if defined(HAVE_LOCALE_H) if (quote_flag && loc.grouping[ii] && ++jj == loc.grouping[ii]) { - *--cp = loc.thousands_sep[0]; /* XXX - assumption it's one char */ + if (uval) /* only add if more digits coming */ + *--cp = loc.thousands_sep[0]; /* XXX - assumption it's one char */ if (loc.grouping[ii+1] == 0) jj = 0; /* keep using current val in loc.grouping[ii] */ else if (loc.grouping[ii+1] == CHAR_MAX) @@ -963,7 +984,6 @@ } } #endif - uval /= 10; } while (uval > 0); /* add more output digits to match the precision */ @@ -1052,9 +1072,11 @@ ii = jj = 0; do { *--cp = chbuf[uval % base]; -#if ENABLE_NLS && defined(HAVE_LOCALE_H) + uval /= base; +#if defined(HAVE_LOCALE_H) if (base == 10 && quote_flag && loc.grouping[ii] && ++jj == loc.grouping[ii]) { - *--cp = loc.thousands_sep[0]; /* XXX --- assumption it's one char */ + if (uval) /* only add if more digits coming */ + *--cp = loc.thousands_sep[0]; /* XXX --- assumption it's one char */ if (loc.grouping[ii+1] == 0) jj = 0; /* keep using current val in loc.grouping[ii] */ else if (loc.grouping[ii+1] == CHAR_MAX) @@ -1065,7 +1087,6 @@ } } #endif - uval /= base; } while (uval > 0); /* add more output digits to match the precision */ @@ -1130,7 +1151,13 @@ if (! have_prec) prec = DEFAULT_G_PRECISION; chksize(fw + prec + 9); /* 9 == slop */ - +#ifdef VAXCRTL + /* pre-ANSI library doesn't handle '0' flag + correctly in many cases; reject it */ + if (zero_flag + && (lj || (signchar && signchar != '+'))) + zero_flag = FALSE; +#endif cp = cpbuf; *cp++ = '%'; if (lj) @@ -1289,6 +1316,7 @@ register size_t indx; size_t length; double d_index, d_length; + size_t src_len; t1 = force_string(tree_eval(tree->lnode)); t2 = tree_eval(tree->rnode->lnode); @@ -1352,21 +1380,71 @@ free_temp(t1); return Nnull_string; } - if (indx >= t1->stlen) { + + /* get total len of input string, for following checks */ +#ifdef MBS_SUPPORT + if (gawk_mb_cur_max > 1) { + t1 = force_wstring(t1); + src_len = t1->wstlen; + } else +#endif + src_len = t1->stlen; + + if (indx >= src_len) { if (do_lint) lintwarn(_("substr: start index %g is past end of string"), d_index); free_temp(t1); return Nnull_string; } - if (length > t1->stlen - indx) { + if (length > src_len - indx) { if (do_lint) lintwarn( _("substr: length %g at start index %g exceeds length of first argument (%lu)"), - d_length, d_index, (unsigned long int) t1->stlen); - length = t1->stlen - indx; + d_length, d_index, (unsigned long int) src_len); + length = src_len - indx; + } + +#ifdef MBS_SUPPORT + if (gawk_mb_cur_max > 1) { + /* multibyte case, more work */ + size_t result; + wchar_t *wp; + mbstate_t mbs; + char *substr, *cp; + + /* force_wstring() already called */ + + if (t1->stlen == t1->wstlen) + goto single_byte_case; + + /* + * Convert the wide chars in t1->wstptr back into m.b. chars. + * This is pretty grotty, but it's the most straightforward + * way to do things. + */ + memset(& mbs, 0, sizeof(mbs)); + emalloc(substr, char *, (length * gawk_mb_cur_max) + 2, "do_substr"); + wp = t1->wstptr + indx; + for (cp = substr; length > 0; length--) { + result = wcrtomb(cp, *wp, & mbs); + if (result == (size_t) -1) /* what to do? break seems best */ + break; + cp += result; + wp++; + } + *cp = '\0'; + r = make_str_node(substr, cp - substr, ALREADY_MALLOCED); + r->flags |= TEMP; + } else { + /* single byte case, easy */ +single_byte_case: + r = tmp_string(t1->stptr + indx, length); } +#else r = tmp_string(t1->stptr + indx, length); +#endif + free_temp(t1); return r; } @@ -1652,51 +1730,117 @@ fflush(rp->fp); } +#ifdef MBS_SUPPORT +/* wide_tolower_toupper --- lower- or uppercase a multibute string */ + +typedef int (*isw_func)(wint_t); +typedef wint_t (*tow_func)(wint_t); + +static NODE * +wide_tolower_toupper(NODE *t1, isw_func iswu, tow_func towl) +{ + register unsigned char *cp, *cpe; + register unsigned char *cp2; + size_t mbclen; + mbstate_t mbs, prev_mbs; + wchar_t wc; + NODE *t2; + /* + * Since the lowercase char and its uppercase equivalent may occupy + * different number of bytes (Turkish `i'), we cannot say the length + * of the output string. + * This approach is adapted from format_tree(). + */ + unsigned char *obuf; + size_t osiz, ofre; + + /* + * Better 2 spare bytes than 1, consistently with make_str_node(). + * And we need gawk_mb_cur_max free bytes before we convert the last + * char, so we add (gawk_mb_cur_max - 1). + */ + osiz = t1->stlen + 2 + (gawk_mb_cur_max - 1); + ofre = osiz - 2; + emalloc(obuf, char *, osiz, "wide_tolower_toupper"); + + memset(&mbs, 0, sizeof(mbstate_t)); + cp = (unsigned char *)t1->stptr; + cpe = (unsigned char *)(t1->stptr + t1->stlen); + cp2 = obuf; + while (cp < cpe) { + if (ofre < gawk_mb_cur_max) { + size_t olen = cp2 - obuf; + ofre += osiz; + osiz *= 2; + erealloc(obuf, char *, osiz, "wide_tolower_toupper"); + cp2 = obuf + olen; + } + prev_mbs = mbs; + mbclen = (size_t) mbrtowc(&wc, (char *) cp, cpe - cp, + &mbs); + if (mbclen == 0 || mbclen == (size_t) -1 || mbclen == (size_t) -2) { + /* Null wide char, or a problem appeared. */ + *cp2++ = *cp++; + ofre--; + continue; + } + + /* If the character doesn't need change, copy it. */ + if (!(*iswu)(wc)) { + ofre -= mbclen; + while (mbclen--) + *cp2++ = *cp++; + continue; + } + + /* Increment the input pointer. */ + cp += mbclen; + + /* Write the modified wide character. */ + mbclen = wcrtomb((char *) cp2, (*towl)(wc), &prev_mbs); + + if (mbclen > 0 && mbclen < (size_t) -2) { + /* Increment the output pointer. */ + cp2 += mbclen; + ofre -= mbclen; + } else { + /* A problem appeared. */ + cp2++; + ofre--; + } + } + t2 = make_str_node(obuf, cp2 - obuf, ALREADY_MALLOCED); + t2->flags |= TEMP; + return t2; +} +#endif + /* do_tolower --- lower case a string */ NODE * do_tolower(NODE *tree) { NODE *t1, *t2; - register unsigned char *cp, *cp2; -#ifdef MBS_SUPPORT - size_t mbclen = 0; - mbstate_t mbs, prev_mbs; - if (gawk_mb_cur_max > 1) - memset(&mbs, 0, sizeof(mbstate_t)); -#endif t1 = tree_eval(tree->lnode); if (do_lint && (t1->flags & (STRING|STRCUR)) == 0) lintwarn(_("tolower: received non-string argument")); t1 = force_string(t1); - t2 = tmp_string(t1->stptr, t1->stlen); - for (cp = (unsigned char *)t2->stptr, - cp2 = (unsigned char *)(t2->stptr + t2->stlen); cp < cp2; cp++) + #ifdef MBS_SUPPORT - if (gawk_mb_cur_max > 1) { - wchar_t wc; - prev_mbs = mbs; - mbclen = (size_t) mbrtowc(&wc, (char *) cp, cp2 - cp, - &mbs); - if ((mbclen != 1) && (mbclen != (size_t) -1) && - (mbclen != (size_t) -2) && (mbclen != 0)) { - /* a multibyte character. */ - if (iswupper(wc)) { - wc = towlower(wc); - wcrtomb((char *) cp, wc, &prev_mbs); - } - /* Adjust the pointer. */ - cp += mbclen - 1; - } else { - /* Otherwise we treat it as a singlebyte character. */ - if (ISUPPER(*cp)) - *cp = tolower(*cp); - } - } else + if (gawk_mb_cur_max > 1) + t2 = wide_tolower_toupper(t1, iswupper, towlower); + else #endif - if (ISUPPER(*cp)) - *cp = TOLOWER(*cp); + { + register unsigned char *cp, *cpe; + + t2 = tmp_string(t1->stptr, t1->stlen); + for (cp = (unsigned char *)t2->stptr, + cpe = (unsigned char *)(t2->stptr + t2->stlen); cp < cpe; cp++) + if (ISUPPER(*cp)) + *cp = TOLOWER(*cp); + } free_temp(t1); return t2; } @@ -1707,45 +1851,26 @@ do_toupper(NODE *tree) { NODE *t1, *t2; - register unsigned char *cp, *cp2; -#ifdef MBS_SUPPORT - size_t mbclen = 0; - mbstate_t mbs, prev_mbs; - if (gawk_mb_cur_max > 1) - memset(&mbs, 0, sizeof(mbstate_t)); -#endif t1 = tree_eval(tree->lnode); if (do_lint && (t1->flags & (STRING|STRCUR)) == 0) lintwarn(_("toupper: received non-string argument")); t1 = force_string(t1); - t2 = tmp_string(t1->stptr, t1->stlen); - for (cp = (unsigned char *)t2->stptr, - cp2 = (unsigned char *)(t2->stptr + t2->stlen); cp < cp2; cp++) + #ifdef MBS_SUPPORT - if (gawk_mb_cur_max > 1) { - wchar_t wc; - prev_mbs = mbs; - mbclen = (size_t) mbrtowc(&wc, (char *) cp, cp2 - cp, - &mbs); - if ((mbclen != 1) && (mbclen != (size_t) -1) && - (mbclen != (size_t) -2) && (mbclen != 0)) { - /* a multibyte character. */ - if (iswlower(wc)) { - wc = towupper(wc); - wcrtomb((char *) cp, wc, &prev_mbs); - } - /* Adjust the pointer. */ - cp += mbclen - 1; - } else { - /* Otherwise we treat it as a singlebyte character. */ - if (ISLOWER(*cp)) - *cp = toupper(*cp); - } - } else + if (gawk_mb_cur_max > 1) + t2 = wide_tolower_toupper(t1, iswlower, towupper); + else #endif - if (ISLOWER(*cp)) - *cp = TOUPPER(*cp); + { + register unsigned char *cp, *cpe; + + t2 = tmp_string(t1->stptr, t1->stlen); + for (cp = (unsigned char *)t2->stptr, + cpe = (unsigned char *)(t2->stptr + t2->stlen); cp < cpe; cp++) + if (ISLOWER(*cp)) + *cp = TOUPPER(*cp); + } free_temp(t1); return t2; } @@ -1866,7 +1991,7 @@ { NODE *t1, *dest, *it; int rstart, len, ii; - AWKNUM rlength; + int rlength; Regexp *rp; regoff_t s; char *start; @@ -1889,10 +2014,19 @@ assoc_clear(dest); } - rstart = research(rp, t1->stptr, 0, t1->stlen, TRUE); + rstart = research(rp, t1->stptr, 0, t1->stlen, RE_NEED_START); if (rstart >= 0) { /* match succeded */ - rstart++; /* 1-based indexing */ - rlength = REEND(rp, t1->stptr) - RESTART(rp, t1->stptr); + size_t *wc_indices = NULL; + + rlength = REEND(rp, t1->stptr) - RESTART(rp, t1->stptr); /* byte length */ +#ifdef MBS_SUPPORT + if (gawk_mb_cur_max > 1) { + t1 = str2wstr(t1, & wc_indices); + rlength = wc_indices[rstart + rlength - 1] - wc_indices[rstart] + 1; + rstart = wc_indices[rstart]; + } +#endif + rstart++; /* now it's 1-based indexing */ /* Build the array only if the caller wants the optional subpatterns */ if (dest != NULL) { @@ -1905,8 +2039,18 @@ * matched even if all of them did not. */ if ((s = SUBPATSTART(rp, t1->stptr, ii)) != -1) { + size_t subpat_start; + size_t subpat_len; + start = t1->stptr + s; - len = SUBPATEND(rp, t1->stptr, ii) - s; + subpat_start = s; + subpat_len = len = SUBPATEND(rp, t1->stptr, ii) - s; +#ifdef MBS_SUPPORT + if (gawk_mb_cur_max > 1) { + subpat_start = wc_indices[s]; + subpat_len = wc_indices[s + len - 1] - subpat_start + 1; + } +#endif it = make_string(start, len); /* @@ -1930,7 +2074,7 @@ slen = ilen + subseplen + 5; - it = make_number((AWKNUM) s + 1); + it = make_number((AWKNUM) subpat_start + 1); *assoc_lookup(dest, tmp_string(buf, slen), FALSE) = it; memcpy(buf, buff, ilen); @@ -1939,22 +2083,24 @@ slen = ilen + subseplen + 6; - it = make_number((AWKNUM) len); + it = make_number((AWKNUM) subpat_len); *assoc_lookup(dest, tmp_string(buf, slen), FALSE) = it; } } free(buf); + if (wc_indices != NULL) + free(wc_indices); } } else { /* match failed */ rstart = 0; - rlength = -1.0; + rlength = -1; } free_temp(t1); unref(RSTART_node->var_value); RSTART_node->var_value = make_number((AWKNUM) rstart); unref(RLENGTH_node->var_value); - RLENGTH_node->var_value = make_number(rlength); + RLENGTH_node->var_value = make_number((AWKNUM) rlength); return tmp_number((AWKNUM) rstart); } @@ -2079,9 +2225,7 @@ int global = (how_many == -1); long current; int lastmatchnonzero; -#ifdef MBS_SUPPORT - char *mb_indices; -#endif + char *mb_indices = NULL; tmp = tree->lnode; /* regexp */ rp = re_update(tmp); @@ -2095,7 +2239,7 @@ t = force_string(tree_eval(tmp)); /* do the search early to avoid work on non-match */ - if (research(rp, t->stptr, 0, t->stlen, TRUE) == -1 || + if (research(rp, t->stptr, 0, t->stlen, RE_NEED_START) == -1 || RESTART(rp, t->stptr) > t->stlen) { free_temp(t); free_temp(s); @@ -2126,7 +2270,7 @@ buf[buflen] = '\0'; buf[buflen + 1] = '\0'; ampersands = 0; -#ifdef MBS_SUPPORT + /* * Some systems' malloc() can't handle being called with an * argument of zero. Thus we have to have some special case @@ -2138,16 +2282,11 @@ if (gawk_mb_cur_max > 1 && repllen > 0) { emalloc(mb_indices, char *, repllen * sizeof(char), "sub_common"); index_multibyte_buffer(repl, mb_indices, repllen); - } else - mb_indices = NULL; -#endif + } + for (scan = repl; scan < replend; scan++) { -#ifdef MBS_SUPPORT if ((gawk_mb_cur_max == 1 || (repllen > 0 && mb_indices[scan - repl] == 1)) - && (*scan == '&')) { -#else - if (*scan == '&') { -#endif + && (*scan == '&')) { repllen--; ampersands++; } else if (*scan == '\\') { @@ -2230,22 +2369,18 @@ */ for (scan = repl; scan < replend; scan++) if (*scan == '&' -#ifdef MBS_SUPPORT /* * Don't test repllen here. A simple "&" could * end up with repllen == 0. */ && (gawk_mb_cur_max == 1 || mb_indices[scan - repl] == 1) -#endif ) { for (cp = matchstart; cp < matchend; cp++) *bp++ = *cp; } else if (*scan == '\\' -#ifdef MBS_SUPPORT && (gawk_mb_cur_max == 1 || (repllen > 0 && mb_indices[scan - repl] == 1)) -#endif ) { if (backdigs) { /* gensub, behave sanely */ if (ISDIGIT(scan[1])) { @@ -2310,7 +2445,7 @@ if ((current >= how_many && !global) || ((long) textlen <= 0 && matchstart == matchend) - || research(rp, t->stptr, text - t->stptr, textlen, TRUE) == -1) + || research(rp, t->stptr, text - t->stptr, textlen, RE_NEED_START) == -1) break; } @@ -2338,10 +2473,9 @@ (*after_assign)(); t->flags &= ~(NUMCUR|NUMBER); } -#ifdef MBS_SUPPORT if (mb_indices != NULL) free(mb_indices); -#endif + return tmp_number((AWKNUM) matches); } @@ -2400,10 +2534,17 @@ if ((t->flags & (STRCUR|STRING)) != 0) { if (t->stlen > 0 && (t->stptr[0] == 'g' || t->stptr[0] == 'G')) how_many = -1; - else + else { + d = force_number(t); + + if ((t->flags & NUMCUR) != 0) + goto set_how_many; + how_many = 1; + } } else { d = force_number(t); +set_how_many: if (d < 1) how_many = 1; else if (d < LONG_MAX) @@ -2541,6 +2682,7 @@ tmp_integer(uintmax_t n) { #ifdef HAVE_UINTMAX_T +/* #ifndef LDBL_MANT_DIG */ /* * If uintmax_t is so wide that AWKNUM cannot represent all its * values, strip leading nonzero bits of integers that are so large @@ -2551,6 +2693,7 @@ */ if (AWKNUM_FRACTION_BITS < CHAR_BIT * sizeof n) n &= ((uintmax_t) 1 << AWKNUM_FRACTION_BITS) - 1; +/* #endif */ /* LDBL_MANT_DIG */ #endif /* HAVE_UINTMAX_T */ return tmp_number((AWKNUM) n); @@ -2773,16 +2916,16 @@ do_strtonum(NODE *tree) { NODE *tmp; - double d; + AWKNUM d; tmp = tree_eval(tree->lnode); if ((tmp->flags & (NUMBER|NUMCUR)) != 0) - d = (double) force_number(tmp); - else if (isnondecimal(tmp->stptr)) + d = (AWKNUM) force_number(tmp); + else if (isnondecimal(tmp->stptr, TRUE)) d = nondec2awknum(tmp->stptr, tmp->stlen); else - d = (double) force_number(tmp); + d = (AWKNUM) force_number(tmp); free_temp(tmp); return tmp_number((AWKNUM) d); diff -urN gawk-3.1.4/config.guess gawk-3.1.5/config.guess --- gawk-3.1.4/config.guess 2004-07-19 17:06:51.000000000 +0300 +++ gawk-3.1.5/config.guess 2005-05-11 18:28:14.000000000 +0300 @@ -1,9 +1,9 @@ #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. +# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. -timestamp='2004-06-24' +timestamp='2005-02-10' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -17,7 +17,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -53,7 +53,7 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO @@ -203,9 +203,6 @@ amiga:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; - arc:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; cats:OpenBSD:*:*) echo arm-unknown-openbsd${UNAME_RELEASE} exit 0 ;; @@ -230,18 +227,12 @@ mvmeppc:OpenBSD:*:*) echo powerpc-unknown-openbsd${UNAME_RELEASE} exit 0 ;; - pmax:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; sgi:OpenBSD:*:*) - echo mipseb-unknown-openbsd${UNAME_RELEASE} + echo mips64-unknown-openbsd${UNAME_RELEASE} exit 0 ;; sun3:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; - wgrisc:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; *:OpenBSD:*:*) echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} exit 0 ;; @@ -328,6 +319,9 @@ *:OS/390:*:*) echo i370-ibm-openedition exit 0 ;; + *:z/VM:*:*) + echo s390-ibm-zvmoe + exit 0 ;; *:OS400:*:*) echo powerpc-ibm-os400 exit 0 ;; @@ -351,7 +345,7 @@ DRS?6000:unix:4.0:6*) echo sparc-icl-nx6 exit 0 ;; - DRS?6000:UNIX_SV:4.2*:7*) + DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7 && exit 0 ;; esac ;; @@ -810,6 +804,9 @@ i*:UWIN*:*) echo ${UNAME_MACHINE}-pc-uwin exit 0 ;; + amd64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin + exit 0 ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin exit 0 ;; @@ -833,6 +830,12 @@ cris:Linux:*:*) echo cris-axis-linux-gnu exit 0 ;; + crisv32:Linux:*:*) + echo crisv32-axis-linux-gnu + exit 0 ;; + frv:Linux:*:*) + echo frv-unknown-linux-gnu + exit 0 ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; @@ -1081,7 +1084,7 @@ exit 0 ;; M68*:*:R3V[5678]*:*) test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; - 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0) + 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` @@ -1179,9 +1182,10 @@ echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit 0 ;; *:Darwin:*:*) - case `uname -p` in + UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown + case $UNAME_PROCESSOR in *86) UNAME_PROCESSOR=i686 ;; - powerpc) UNAME_PROCESSOR=powerpc ;; + unknown) UNAME_PROCESSOR=powerpc ;; esac echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} exit 0 ;; @@ -1196,6 +1200,9 @@ *:QNX:*:4*) echo i386-pc-qnx exit 0 ;; + NSE-?:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} + exit 0 ;; NSR-?:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} exit 0 ;; @@ -1249,7 +1256,10 @@ A*) echo alpha-dec-vms && exit 0 ;; I*) echo ia64-dec-vms && exit 0 ;; V*) echo vax-dec-vms && exit 0 ;; - esac + esac ;; + *:XENIX:*:SysV) + echo i386-pc-xenix + exit 0 ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 diff -urN gawk-3.1.4/config.rpath gawk-3.1.5/config.rpath --- gawk-3.1.4/config.rpath 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/config.rpath 2005-05-11 18:28:14.000000000 +0300 @@ -2,28 +2,13 @@ # Output a system dependent set of variables, describing how to set the # run time search path of shared libraries in an executable. # -# Copyright 1996-2003 Free Software Foundation, Inc. +# Copyright 1996-2005 Free Software Foundation, Inc. # Taken from GNU libtool, 2001 # Originally by Gordon Matzigkeit , 1996 # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. # # The first argument passed to this file is the canonical host specification, # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM @@ -50,6 +35,8 @@ host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +cc_basename=`echo "$CC" | sed -e 's%^.*/%%'` + # Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC. wl= @@ -60,6 +47,13 @@ aix*) wl='-Wl,' ;; + darwin*) + case "$cc_basename" in + xlc*) + wl='-Wl,' + ;; + esac + ;; mingw* | pw32* | os2*) ;; hpux9* | hpux10* | hpux11*) @@ -71,13 +65,19 @@ newsos6) ;; linux*) - case $CC in - icc|ecc) + case $cc_basename in + icc* | ecc*) + wl='-Wl,' + ;; + pgcc | pgf77 | pgf90) wl='-Wl,' ;; - ccc) + ccc*) wl='-Wl,' ;; + como) + wl='-lopt=' + ;; esac ;; osf3* | osf4* | osf5*) @@ -96,6 +96,9 @@ ;; sysv4*MP*) ;; + unicos*) + wl='-Wl,' + ;; uts4*) ;; esac @@ -138,7 +141,7 @@ # that the semantics of dynamic libraries on AmigaOS, at least up # to version 4, is to share data among multiple programs linked # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use + # behavior of shared libraries on other platforms, we cannot use # them. ld_shlibs=no ;; @@ -173,6 +176,13 @@ sunos4*) hardcode_direct=yes ;; + linux*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + : + else + ld_shlibs=no + fi + ;; *) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then : @@ -266,7 +276,7 @@ # see comment about different semantics on the GNU ld section ld_shlibs=no ;; - bsdi4*) + bsdi[45]*) ;; cygwin* | mingw* | pw32*) # When not using gcc, we currently assume that we are using @@ -277,8 +287,17 @@ libext=lib ;; darwin* | rhapsody*) - if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then - hardcode_direct=no + hardcode_direct=no + if test "$GCC" = yes ; then + : + else + case "$cc_basename" in + xlc*) + ;; + *) + ld_shlibs=no + ;; + esac fi ;; dgux*) @@ -295,7 +314,7 @@ hardcode_direct=yes hardcode_minus_L=yes ;; - freebsd*) + freebsd* | kfreebsd*-gnu | dragonfly*) hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes ;; @@ -438,7 +457,7 @@ ;; beos*) ;; - bsdi4*) + bsdi[45]*) ;; cygwin* | mingw* | pw32*) shrext=.dll @@ -450,6 +469,8 @@ ;; freebsd1*) ;; + kfreebsd*-gnu) + ;; freebsd*) ;; gnu*) @@ -486,11 +507,13 @@ ;; linux*) ;; + knetbsd*-gnu) + ;; netbsd*) ;; newsos6) ;; - nto-qnx) + nto-qnx*) ;; openbsd*) ;; @@ -519,7 +542,7 @@ shlibext=`echo "$shrext" | sed -e 's,^\.,,'` escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` -sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <. # @@ -269,8 +269,8 @@ # Identity of this package. PACKAGE_NAME='GNU Awk' PACKAGE_TARNAME='gawk' -PACKAGE_VERSION='3.1.4' -PACKAGE_STRING='GNU Awk 3.1.4' +PACKAGE_VERSION='3.1.5' +PACKAGE_STRING='GNU Awk 3.1.5' PACKAGE_BUGREPORT='bug-gawk@gnu.org' # Factoring default headers for most tests. @@ -310,7 +310,7 @@ # include #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot EGREP YACC LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP RANLIB ac_ct_RANLIB U ANSI2KNR MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE build build_cpu build_vendor build_os host host_cpu host_vendor host_os ALLOCA GLIBC21 HAVE_POSIX_PRINTF HAVE_ASPRINTF HAVE_SNPRINTF HAVE_WPRINTF LIBICONV LTLIBICONV INTLBISON BUILD_INCLUDED_LIBINTL USE_INCLUDED_LIBINTL CATOBJEXT DATADIRNAME INSTOBJEXT GENCAT INTLOBJS INTL_LIBTOOL_SUFFIX_PREFIX INTLLIBS LIBINTL LTLIBINTL POSUB LIBOBJS SOCKET_LIBS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar EGREP YACC LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP RANLIB ac_ct_RANLIB U ANSI2KNR MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE build build_cpu build_vendor build_os host host_cpu host_vendor host_os INTL_MACOSX_LIBS LIBICONV LTLIBICONV INTLLIBS LIBINTL LTLIBINTL POSUB LIBOBJS SOCKET_LIBS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -779,7 +779,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures GNU Awk 3.1.4 to adapt to many kinds of systems. +\`configure' configures GNU Awk 3.1.5 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -845,7 +845,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of GNU Awk 3.1.4:";; + short | recursive ) echo "Configuration of GNU Awk 3.1.5:";; esac cat <<\_ACEOF @@ -868,7 +868,6 @@ --with-gnu-ld assume the C compiler uses GNU ld default=no --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib --without-libiconv-prefix don't search for libiconv in includedir and libdir - --with-included-gettext use the GNU gettext library included here --with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib --without-libintl-prefix don't search for libintl in includedir and libdir @@ -980,7 +979,7 @@ test -n "$ac_init_help" && exit 0 if $ac_init_version; then cat <<\_ACEOF -GNU Awk configure 3.1.4 +GNU Awk configure 3.1.5 generated by GNU Autoconf 2.59 Copyright (C) 2003 Free Software Foundation, Inc. @@ -994,7 +993,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by GNU Awk $as_me 3.1.4, which was +It was created by GNU Awk $as_me 3.1.5, which was generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ @@ -1346,7 +1345,7 @@ fi -am__api_version="1.8" +am__api_version="1.9" ac_aux_dir= for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do if test -f $ac_dir/install-sh; then @@ -1523,13 +1522,21 @@ fi if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - # Keeping the `.' argument allows $(mkdir_p) to be used without - # argument. Indeed, we sometimes output rules like + # We used to keeping the `.' as first argument, in order to + # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) - # where $(somedir) is conditionally defined. - # (`test -n '$(somedir)' && $(mkdir_p) $(somedir)' is a more - # expensive solution, as it forces Make to start a sub-shell.) - mkdir_p='mkdir -p -- .' + # where $(somedir) is conditionally defined. However this is wrong + # for two reasons: + # 1. if the package is installed by a user who cannot write `.' + # make install will fail, + # 2. the above comment should most certainly read + # $(mkdir_p) $(DESTDIR)$(somedir) + # so it does not work when $(somedir) is undefined and + # $(DESTDIR) is not. + # To support the latter case, we have to write + # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), + # so the `.' trick is pointless. + mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as @@ -1645,7 +1652,7 @@ # Define the identity of the package. PACKAGE='gawk' - VERSION='3.1.4' + VERSION='3.1.5' cat >>confdefs.h <<_ACEOF @@ -1673,9 +1680,6 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} - -AMTAR=${AMTAR-"${am_missing_run}tar"} - install_sh=${install_sh-"$am_aux_dir/install-sh"} # Installed binaries are usually stripped using `strip' when the user @@ -1768,6 +1772,13 @@ # We need awk for the "check" target. The system "awk" is bad on # some platforms. +# Always define AMTAR for backward compatibility. + +AMTAR=${AMTAR-"${am_missing_run}tar"} + +am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' + + @@ -5455,6 +5466,7 @@ esac + MKINSTALLDIRS= if test -n "$ac_aux_dir"; then case "$ac_aux_dir" in @@ -5531,7 +5543,8 @@ test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && + echo "$as_me: trying $ac_dir/$ac_word..." >&5 + if $ac_dir/$ac_word --statistics /dev/null >&5 2>&1 && (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext" break 2 @@ -5641,7 +5654,8 @@ test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && + echo "$as_me: trying $ac_dir/$ac_word..." >&5 + if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&5 2>&1 && (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext" break 2 @@ -5712,7 +5726,8 @@ test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - if $ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1; then + echo "$as_me: trying $ac_dir/$ac_word..." >&5 + if $ac_dir/$ac_word --update -q /dev/null /dev/null >&5 2>&1; then ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext" break 2 fi @@ -5761,6 +5776,22 @@ ac_config_commands="$ac_config_commands default-1" + + if test "X$prefix" = "XNONE"; then + acl_final_prefix="$ac_default_prefix" + else + acl_final_prefix="$prefix" + fi + if test "X$exec_prefix" = "XNONE"; then + acl_final_exec_prefix='${prefix}' + else + acl_final_exec_prefix="$exec_prefix" + fi + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" + prefix="$acl_save_prefix" + # Make sure we can run config.sub. $ac_config_sub sun4 >/dev/null 2>&1 || { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 @@ -5815,3064 +5846,579 @@ host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 -echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6 -if test "${ac_cv_c_const+set}" = set; then + +# Check whether --with-gnu-ld or --without-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then + withval="$with_gnu_ld" + test "$withval" = no || with_gnu_ld=yes +else + with_gnu_ld=no +fi; +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + echo "$as_me:$LINENO: checking for ld used by GCC" >&5 +echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6 + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | [A-Za-z]:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + echo "$as_me:$LINENO: checking for GNU ld" >&5 +echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 +else + echo "$as_me:$LINENO: checking for non-GNU ld" >&5 +echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 +fi +if test "${acl_cv_path_LD+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -/* FIXME: Include the comments suggested by Paul. */ -#ifndef __cplusplus - /* Ultrix mips cc rejects this. */ - typedef int charset[2]; - const charset x; - /* SunOS 4.1.1 cc rejects this. */ - char const *const *ccp; - char **p; - /* NEC SVR4.0.2 mips cc rejects this. */ - struct point {int x, y;}; - static struct point const zero = {0,0}; - /* AIX XL C 1.02.0.0 rejects this. - It does not let you subtract one const X* pointer from another in - an arm of an if-expression whose if-part is not a constant - expression */ - const char *g = "string"; - ccp = &g + (g ? g-g : 0); - /* HPUX 7.0 cc rejects these. */ - ++ccp; - p = (char**) ccp; - ccp = (char const *const *) p; - { /* SCO 3.2v4 cc rejects this. */ - char *t; - char const *s = 0 ? (char *) 0 : (char const *) 0; - - *t++ = 0; - } - { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ - int x[] = {25, 17}; - const int *foo = &x[0]; - ++foo; - } - { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ - typedef const int *iptr; - iptr p = 0; - ++p; - } - { /* AIX XL C 1.02.0.0 rejects this saying - "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ - struct s { int j; const int *ap[3]; }; - struct s *b; b->j = 5; - } - { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ - const int foo = 10; - } -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_c_const=yes + if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + acl_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in + *GNU* | *'with BFD'*) + test "$with_gnu_ld" != no && break ;; + *) + test "$with_gnu_ld" != yes && break ;; + esac + fi + done + IFS="$ac_save_ifs" else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + acl_cv_path_LD="$LD" # Let the user override the test with a path. +fi +fi -ac_cv_c_const=no +LD="$acl_cv_path_LD" +if test -n "$LD"; then + echo "$as_me:$LINENO: result: $LD" >&5 +echo "${ECHO_T}$LD" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 +echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} + { (exit 1); exit 1; }; } +echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 +echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 +if test "${acl_cv_prog_gnu_ld+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + # I'd rather use --version here, but apparently some GNU ld's only accept -v. +case `$LD -v 2>&1 &5 -echo "${ECHO_T}$ac_cv_c_const" >&6 -if test $ac_cv_c_const = no; then +echo "$as_me:$LINENO: result: $acl_cv_prog_gnu_ld" >&5 +echo "${ECHO_T}$acl_cv_prog_gnu_ld" >&6 +with_gnu_ld=$acl_cv_prog_gnu_ld -cat >>confdefs.h <<\_ACEOF -#define const -_ACEOF -fi - echo "$as_me:$LINENO: checking for signed" >&5 -echo $ECHO_N "checking for signed... $ECHO_C" >&6 -if test "${bh_cv_c_signed+set}" = set; then + echo "$as_me:$LINENO: checking for shared library run path origin" >&5 +echo $ECHO_N "checking for shared library run path origin... $ECHO_C" >&6 +if test "${acl_cv_rpath+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -int -main () -{ -signed char x; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - bh_cv_c_signed=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ + ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh + . ./conftest.sh + rm -f ./conftest.sh + acl_cv_rpath=done -bh_cv_c_signed=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $bh_cv_c_signed" >&5 -echo "${ECHO_T}$bh_cv_c_signed" >&6 - if test $bh_cv_c_signed = no; then +echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5 +echo "${ECHO_T}$acl_cv_rpath" >&6 + wl="$acl_cv_wl" + libext="$acl_cv_libext" + shlibext="$acl_cv_shlibext" + hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" + hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" + hardcode_direct="$acl_cv_hardcode_direct" + hardcode_minus_L="$acl_cv_hardcode_minus_L" + # Check whether --enable-rpath or --disable-rpath was given. +if test "${enable_rpath+set}" = set; then + enableval="$enable_rpath" + : +else + enable_rpath=yes +fi; -cat >>confdefs.h <<\_ACEOF -#define signed -_ACEOF - fi -echo "$as_me:$LINENO: checking for inline" >&5 -echo $ECHO_N "checking for inline... $ECHO_C" >&6 -if test "${ac_cv_c_inline+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_c_inline=no -for ac_kw in inline __inline__ __inline; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifndef __cplusplus -typedef int foo_t; -static $ac_kw foo_t static_foo () {return 0; } -$ac_kw foo_t foo () {return 0; } -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_c_inline=$ac_kw; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -fi -echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 -echo "${ECHO_T}$ac_cv_c_inline" >&6 + use_additional=yes -case $ac_cv_c_inline in - inline | yes) ;; - *) - case $ac_cv_c_inline in - no) ac_val=;; - *) ac_val=$ac_cv_c_inline;; - esac - cat >>confdefs.h <<_ACEOF -#ifndef __cplusplus -#define inline $ac_val -#endif -_ACEOF - ;; -esac + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" -echo "$as_me:$LINENO: checking for off_t" >&5 -echo $ECHO_N "checking for off_t... $ECHO_C" >&6 -if test "${ac_cv_type_off_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if ((off_t *) 0) - return 0; -if (sizeof (off_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_off_t=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" -ac_cv_type_off_t=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5 -echo "${ECHO_T}$ac_cv_type_off_t" >&6 -if test $ac_cv_type_off_t = yes; then - : -else + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -cat >>confdefs.h <<_ACEOF -#define off_t long -_ACEOF -fi +# Check whether --with-libiconv-prefix or --without-libiconv-prefix was given. +if test "${with_libiconv_prefix+set}" = set; then + withval="$with_libiconv_prefix" -echo "$as_me:$LINENO: checking for size_t" >&5 -echo $ECHO_N "checking for size_t... $ECHO_C" >&6 -if test "${ac_cv_type_size_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if ((size_t *) 0) - return 0; -if (sizeof (size_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_size_t=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then -ac_cv_type_size_t=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 -echo "${ECHO_T}$ac_cv_type_size_t" >&6 -if test $ac_cv_type_size_t = yes; then - : -else + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" -cat >>confdefs.h <<_ACEOF -#define size_t unsigned -_ACEOF + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" -fi + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + else + additional_includedir="$withval/include" + additional_libdir="$withval/lib" + fi + fi - echo "$as_me:$LINENO: checking for long long" >&5 -echo $ECHO_N "checking for long long... $ECHO_C" >&6 -if test "${ac_cv_type_long_long+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -long long ll = 1LL; int i = 63; -int -main () -{ -long long llmax = (long long) -1; - return ll << i | ll >> i | llmax / ll | llmax % ll; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_long_long=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_type_long_long=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_long_long" >&5 -echo "${ECHO_T}$ac_cv_type_long_long" >&6 - if test $ac_cv_type_long_long = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_LONG_LONG 1 -_ACEOF +fi; + LIBICONV= + LTLIBICONV= + INCICONV= + rpathdirs= + ltrpathdirs= + names_already_handled= + names_next_round='iconv ' + while test -n "$names_next_round"; do + names_this_round="$names_next_round" + names_next_round= + for name in $names_this_round; do + already_handled= + for n in $names_already_handled; do + if test "$n" = "$name"; then + already_handled=yes + break + fi + done + if test -z "$already_handled"; then + names_already_handled="$names_already_handled $name" + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + eval value=\"\$HAVE_LIB$uppername\" + if test -n "$value"; then + if test "$value" = yes; then + eval value=\"\$LIB$uppername\" + test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value" + eval value=\"\$LTLIB$uppername\" + test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value" + else + : + fi + else + found_dir= + found_la= + found_so= + found_a= + if test $use_additional = yes; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + found_dir="$additional_libdir" + found_so="$additional_libdir/lib$name.$shlibext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + else + if test -f "$additional_libdir/lib$name.$libext"; then + found_dir="$additional_libdir" + found_a="$additional_libdir/lib$name.$libext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + fi + fi + fi + if test "X$found_dir" = "X"; then + for x in $LDFLAGS $LTLIBICONV; do - fi + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + found_dir="$dir" + found_so="$dir/lib$name.$shlibext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + else + if test -f "$dir/lib$name.$libext"; then + found_dir="$dir" + found_a="$dir/lib$name.$libext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + fi + fi + ;; + esac + if test "X$found_dir" != "X"; then + break + fi + done + fi + if test "X$found_dir" != "X"; then + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name" + if test "X$found_so" != "X"; then + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + else + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $found_dir" + fi + if test "$hardcode_direct" = yes; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + else + if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $found_dir" + fi + else + haveit= + for x in $LDFLAGS $LIBICONV; do - echo "$as_me:$LINENO: checking for long double" >&5 -echo $ECHO_N "checking for long double... $ECHO_C" >&6 -if test "${gt_cv_c_long_double+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$GCC" = yes; then - gt_cv_c_long_double=yes - else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - /* The Stardent Vistra knows sizeof(long double), but does not support it. */ - long double foo = 0.0; - /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ - int array [2*(sizeof(long double) >= sizeof(double)) - 1]; + if test "X$x" = "X-L$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir" + fi + if test "$hardcode_minus_L" != no; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + else + LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" + fi + fi + fi + fi + else + if test "X$found_a" != "X"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a" + else + LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name" + fi + fi + additional_includedir= + case "$found_dir" in + */lib | */lib/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + additional_includedir="$basedir/include" + ;; + esac + if test "X$additional_includedir" != "X"; then + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux* | gnu* | k*bsd*-gnu) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + for x in $CPPFLAGS $INCICONV; do -int -main () -{ + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_c_long_double=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -gt_cv_c_long_double=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - fi -fi -echo "$as_me:$LINENO: result: $gt_cv_c_long_double" >&5 -echo "${ECHO_T}$gt_cv_c_long_double" >&6 - if test $gt_cv_c_long_double = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_LONG_DOUBLE 1 -_ACEOF - - fi - - - echo "$as_me:$LINENO: checking for wchar_t" >&5 -echo $ECHO_N "checking for wchar_t... $ECHO_C" >&6 -if test "${gt_cv_c_wchar_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - wchar_t foo = (wchar_t)'\0'; -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_c_wchar_t=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -gt_cv_c_wchar_t=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $gt_cv_c_wchar_t" >&5 -echo "${ECHO_T}$gt_cv_c_wchar_t" >&6 - if test $gt_cv_c_wchar_t = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_WCHAR_T 1 -_ACEOF - - fi - - - echo "$as_me:$LINENO: checking for wint_t" >&5 -echo $ECHO_N "checking for wint_t... $ECHO_C" >&6 -if test "${gt_cv_c_wint_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - wint_t foo = (wchar_t)'\0'; -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_c_wint_t=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -gt_cv_c_wint_t=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $gt_cv_c_wint_t" >&5 -echo "${ECHO_T}$gt_cv_c_wint_t" >&6 - if test $gt_cv_c_wint_t = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_WINT_T 1 -_ACEOF - - fi - - - echo "$as_me:$LINENO: checking for inttypes.h" >&5 -echo $ECHO_N "checking for inttypes.h... $ECHO_C" >&6 -if test "${jm_ac_cv_header_inttypes_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -int -main () -{ -uintmax_t i = (uintmax_t) -1; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - jm_ac_cv_header_inttypes_h=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -jm_ac_cv_header_inttypes_h=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $jm_ac_cv_header_inttypes_h" >&5 -echo "${ECHO_T}$jm_ac_cv_header_inttypes_h" >&6 - if test $jm_ac_cv_header_inttypes_h = yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_INTTYPES_H_WITH_UINTMAX 1 -_ACEOF - - fi - - - echo "$as_me:$LINENO: checking for stdint.h" >&5 -echo $ECHO_N "checking for stdint.h... $ECHO_C" >&6 -if test "${jm_ac_cv_header_stdint_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -int -main () -{ -uintmax_t i = (uintmax_t) -1; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - jm_ac_cv_header_stdint_h=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -jm_ac_cv_header_stdint_h=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $jm_ac_cv_header_stdint_h" >&5 -echo "${ECHO_T}$jm_ac_cv_header_stdint_h" >&6 - if test $jm_ac_cv_header_stdint_h = yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_STDINT_H_WITH_UINTMAX 1 -_ACEOF - - fi - - - - - echo "$as_me:$LINENO: checking for intmax_t" >&5 -echo $ECHO_N "checking for intmax_t... $ECHO_C" >&6 -if test "${gt_cv_c_intmax_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#include -#if HAVE_STDINT_H_WITH_UINTMAX -#include -#endif -#if HAVE_INTTYPES_H_WITH_UINTMAX -#include -#endif - -int -main () -{ -intmax_t x = -1; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_c_intmax_t=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -gt_cv_c_intmax_t=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $gt_cv_c_intmax_t" >&5 -echo "${ECHO_T}$gt_cv_c_intmax_t" >&6 - if test $gt_cv_c_intmax_t = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_INTMAX_T 1 -_ACEOF - - fi - - - - echo "$as_me:$LINENO: checking whether printf() supports POSIX/XSI format strings" >&5 -echo $ECHO_N "checking whether printf() supports POSIX/XSI format strings... $ECHO_C" >&6 -if test "${gt_cv_func_printf_posix+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - if test "$cross_compiling" = yes; then - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#if defined __NetBSD__ || defined _MSC_VER || defined __MINGW32__ || defined __CYGWIN__ - notposix -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "notposix" >/dev/null 2>&1; then - gt_cv_func_printf_posix="guessing no" -else - gt_cv_func_printf_posix="guessing yes" -fi -rm -f conftest* - - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#include -/* The string "%2$d %1$d", with dollar characters protected from the shell's - dollar expansion (possibly an autoconf bug). */ -static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; -static char buf[100]; -int main () -{ - sprintf (buf, format, 33, 55); - return (strcmp (buf, "55 33") != 0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_func_printf_posix=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -gt_cv_func_printf_posix=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $gt_cv_func_printf_posix" >&5 -echo "${ECHO_T}$gt_cv_func_printf_posix" >&6 - case $gt_cv_func_printf_posix in - *yes) - -cat >>confdefs.h <<\_ACEOF -#define HAVE_POSIX_PRINTF 1 -_ACEOF - - ;; - esac - -# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works -# for constant arguments. Useless! -echo "$as_me:$LINENO: checking for working alloca.h" >&5 -echo $ECHO_N "checking for working alloca.h... $ECHO_C" >&6 -if test "${ac_cv_working_alloca_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -char *p = (char *) alloca (2 * sizeof (int)); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_working_alloca_h=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_working_alloca_h=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_working_alloca_h" >&5 -echo "${ECHO_T}$ac_cv_working_alloca_h" >&6 -if test $ac_cv_working_alloca_h = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_ALLOCA_H 1 -_ACEOF - -fi - -echo "$as_me:$LINENO: checking for alloca" >&5 -echo $ECHO_N "checking for alloca... $ECHO_C" >&6 -if test "${ac_cv_func_alloca_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __GNUC__ -# define alloca __builtin_alloca -#else -# ifdef _MSC_VER -# include -# define alloca _alloca -# else -# if HAVE_ALLOCA_H -# include -# else -# ifdef _AIX - #pragma alloca -# else -# ifndef alloca /* predefined by HP cc +Olibcalls */ -char *alloca (); -# endif -# endif -# endif -# endif -#endif - -int -main () -{ -char *p = (char *) alloca (1); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_alloca_works=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_alloca_works=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_alloca_works" >&5 -echo "${ECHO_T}$ac_cv_func_alloca_works" >&6 - -if test $ac_cv_func_alloca_works = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_ALLOCA 1 -_ACEOF - -else - # The SVR3 libPW and SVR4 libucb both contain incompatible functions -# that cause trouble. Some versions do not even contain alloca or -# contain a buggy version. If you still want to use their alloca, -# use ar to extract alloca.o from them instead of compiling alloca.c. - -ALLOCA=alloca.$ac_objext - -cat >>confdefs.h <<\_ACEOF -#define C_ALLOCA 1 -_ACEOF - - -echo "$as_me:$LINENO: checking whether \`alloca.c' needs Cray hooks" >&5 -echo $ECHO_N "checking whether \`alloca.c' needs Cray hooks... $ECHO_C" >&6 -if test "${ac_cv_os_cray+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(CRAY) && ! defined(CRAY2) -webecray -#else -wenotbecray -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "webecray" >/dev/null 2>&1; then - ac_cv_os_cray=yes -else - ac_cv_os_cray=no -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $ac_cv_os_cray" >&5 -echo "${ECHO_T}$ac_cv_os_cray" >&6 -if test $ac_cv_os_cray = yes; then - for ac_func in _getb67 GETB67 getb67; do - as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != $ac_func; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_var=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_var=no" -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then - -cat >>confdefs.h <<_ACEOF -#define CRAY_STACKSEG_END $ac_func -_ACEOF - - break -fi - - done -fi - -echo "$as_me:$LINENO: checking stack direction for C alloca" >&5 -echo $ECHO_N "checking stack direction for C alloca... $ECHO_C" >&6 -if test "${ac_cv_c_stack_direction+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then - ac_cv_c_stack_direction=0 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -int -find_stack_direction () -{ - static char *addr = 0; - auto char dummy; - if (addr == 0) - { - addr = &dummy; - return find_stack_direction (); - } - else - return (&dummy > addr) ? 1 : -1; -} - -int -main () -{ - exit (find_stack_direction () < 0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_c_stack_direction=1 -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_c_stack_direction=-1 -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_c_stack_direction" >&5 -echo "${ECHO_T}$ac_cv_c_stack_direction" >&6 - -cat >>confdefs.h <<_ACEOF -#define STACK_DIRECTION $ac_cv_c_stack_direction -_ACEOF - - -fi - - - -for ac_header in stdlib.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------- ## -## Report this to bug-gawk@gnu.org ## -## ------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -for ac_func in getpagesize -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != $ac_func; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_var=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_var=no" -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - -echo "$as_me:$LINENO: checking for working mmap" >&5 -echo $ECHO_N "checking for working mmap... $ECHO_C" >&6 -if test "${ac_cv_func_mmap_fixed_mapped+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then - ac_cv_func_mmap_fixed_mapped=no -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -/* malloc might have been renamed as rpl_malloc. */ -#undef malloc - -/* Thanks to Mike Haertel and Jim Avera for this test. - Here is a matrix of mmap possibilities: - mmap private not fixed - mmap private fixed at somewhere currently unmapped - mmap private fixed at somewhere already mapped - mmap shared not fixed - mmap shared fixed at somewhere currently unmapped - mmap shared fixed at somewhere already mapped - For private mappings, we should verify that changes cannot be read() - back from the file, nor mmap's back from the file at a different - address. (There have been systems where private was not correctly - implemented like the infamous i386 svr4.0, and systems where the - VM page cache was not coherent with the file system buffer cache - like early versions of FreeBSD and possibly contemporary NetBSD.) - For shared mappings, we should conversely verify that changes get - propagated back to all the places they're supposed to be. - - Grep wants private fixed already mapped. - The main things grep needs to know about mmap are: - * does it exist and is it safe to write into the mmap'd area - * how to use it (BSD variants) */ - -#include -#include - -#if !STDC_HEADERS && !HAVE_STDLIB_H -char *malloc (); -#endif - -/* This mess was copied from the GNU getpagesize.h. */ -#if !HAVE_GETPAGESIZE -/* Assume that all systems that can run configure have sys/param.h. */ -# if !HAVE_SYS_PARAM_H -# define HAVE_SYS_PARAM_H 1 -# endif - -# ifdef _SC_PAGESIZE -# define getpagesize() sysconf(_SC_PAGESIZE) -# else /* no _SC_PAGESIZE */ -# if HAVE_SYS_PARAM_H -# include -# ifdef EXEC_PAGESIZE -# define getpagesize() EXEC_PAGESIZE -# else /* no EXEC_PAGESIZE */ -# ifdef NBPG -# define getpagesize() NBPG * CLSIZE -# ifndef CLSIZE -# define CLSIZE 1 -# endif /* no CLSIZE */ -# else /* no NBPG */ -# ifdef NBPC -# define getpagesize() NBPC -# else /* no NBPC */ -# ifdef PAGESIZE -# define getpagesize() PAGESIZE -# endif /* PAGESIZE */ -# endif /* no NBPC */ -# endif /* no NBPG */ -# endif /* no EXEC_PAGESIZE */ -# else /* no HAVE_SYS_PARAM_H */ -# define getpagesize() 8192 /* punt totally */ -# endif /* no HAVE_SYS_PARAM_H */ -# endif /* no _SC_PAGESIZE */ - -#endif /* no HAVE_GETPAGESIZE */ - -int -main () -{ - char *data, *data2, *data3; - int i, pagesize; - int fd; - - pagesize = getpagesize (); - - /* First, make a file with some known garbage in it. */ - data = (char *) malloc (pagesize); - if (!data) - exit (1); - for (i = 0; i < pagesize; ++i) - *(data + i) = rand (); - umask (0); - fd = creat ("conftest.mmap", 0600); - if (fd < 0) - exit (1); - if (write (fd, data, pagesize) != pagesize) - exit (1); - close (fd); - - /* Next, try to mmap the file at a fixed address which already has - something else allocated at it. If we can, also make sure that - we see the same garbage. */ - fd = open ("conftest.mmap", O_RDWR); - if (fd < 0) - exit (1); - data2 = (char *) malloc (2 * pagesize); - if (!data2) - exit (1); - data2 += (pagesize - ((long) data2 & (pagesize - 1))) & (pagesize - 1); - if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE, - MAP_PRIVATE | MAP_FIXED, fd, 0L)) - exit (1); - for (i = 0; i < pagesize; ++i) - if (*(data + i) != *(data2 + i)) - exit (1); - - /* Finally, make sure that changes to the mapped area do not - percolate back to the file as seen by read(). (This is a bug on - some variants of i386 svr4.0.) */ - for (i = 0; i < pagesize; ++i) - *(data2 + i) = *(data2 + i) + 1; - data3 = (char *) malloc (pagesize); - if (!data3) - exit (1); - if (read (fd, data3, pagesize) != pagesize) - exit (1); - for (i = 0; i < pagesize; ++i) - if (*(data + i) != *(data3 + i)) - exit (1); - close (fd); - exit (0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_mmap_fixed_mapped=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_func_mmap_fixed_mapped=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_func_mmap_fixed_mapped" >&5 -echo "${ECHO_T}$ac_cv_func_mmap_fixed_mapped" >&6 -if test $ac_cv_func_mmap_fixed_mapped = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP 1 -_ACEOF - -fi -rm -f conftest.mmap - - - echo "$as_me:$LINENO: checking whether we are using the GNU C Library 2.1 or newer" >&5 -echo $ECHO_N "checking whether we are using the GNU C Library 2.1 or newer... $ECHO_C" >&6 -if test "${ac_cv_gnu_library_2_1+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#ifdef __GNU_LIBRARY__ - #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) - Lucky GNU user - #endif -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Lucky GNU user" >/dev/null 2>&1; then - ac_cv_gnu_library_2_1=yes -else - ac_cv_gnu_library_2_1=no -fi -rm -f conftest* - - - -fi -echo "$as_me:$LINENO: result: $ac_cv_gnu_library_2_1" >&5 -echo "${ECHO_T}$ac_cv_gnu_library_2_1" >&6 - - GLIBC21="$ac_cv_gnu_library_2_1" - - - - - echo "$as_me:$LINENO: checking whether integer division by zero raises SIGFPE" >&5 -echo $ECHO_N "checking whether integer division by zero raises SIGFPE... $ECHO_C" >&6 -if test "${gt_cv_int_divbyzero_sigfpe+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - if test "$cross_compiling" = yes; then - - # Guess based on the CPU. - case "$host_cpu" in - alpha* | i3456786 | m68k | s390*) - gt_cv_int_divbyzero_sigfpe="guessing yes";; - *) - gt_cv_int_divbyzero_sigfpe="guessing no";; - esac - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#include - -static void -#ifdef __cplusplus -sigfpe_handler (int sig) -#else -sigfpe_handler (sig) int sig; -#endif -{ - /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */ - exit (sig != SIGFPE); -} - -int x = 1; -int y = 0; -int z; -int nan; - -int main () -{ - signal (SIGFPE, sigfpe_handler); -/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */ -#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) - signal (SIGTRAP, sigfpe_handler); -#endif -/* Linux/SPARC yields signal SIGILL. */ -#if defined (__sparc__) && defined (__linux__) - signal (SIGILL, sigfpe_handler); -#endif - - z = x / y; - nan = y / y; - exit (1); -} - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_int_divbyzero_sigfpe=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -gt_cv_int_divbyzero_sigfpe=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $gt_cv_int_divbyzero_sigfpe" >&5 -echo "${ECHO_T}$gt_cv_int_divbyzero_sigfpe" >&6 - case "$gt_cv_int_divbyzero_sigfpe" in - *yes) value=1;; - *) value=0;; - esac - -cat >>confdefs.h <<_ACEOF -#define INTDIV0_RAISES_SIGFPE $value -_ACEOF - - - - echo "$as_me:$LINENO: checking for unsigned long long" >&5 -echo $ECHO_N "checking for unsigned long long... $ECHO_C" >&6 -if test "${ac_cv_type_unsigned_long_long+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -unsigned long long ull = 1ULL; int i = 63; -int -main () -{ -unsigned long long ullmax = (unsigned long long) -1; - return ull << i | ull >> i | ullmax / ull | ullmax % ull; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_unsigned_long_long=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_type_unsigned_long_long=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long_long" >&5 -echo "${ECHO_T}$ac_cv_type_unsigned_long_long" >&6 - if test $ac_cv_type_unsigned_long_long = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_UNSIGNED_LONG_LONG 1 -_ACEOF - - fi - - - - - if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then - - test $ac_cv_type_unsigned_long_long = yes \ - && ac_type='unsigned long long' \ - || ac_type='unsigned long' - -cat >>confdefs.h <<_ACEOF -#define uintmax_t $ac_type -_ACEOF - - else - -cat >>confdefs.h <<\_ACEOF -#define HAVE_UINTMAX_T 1 -_ACEOF - - fi - - - echo "$as_me:$LINENO: checking for inttypes.h" >&5 -echo $ECHO_N "checking for inttypes.h... $ECHO_C" >&6 -if test "${gt_cv_header_inttypes_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_header_inttypes_h=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -gt_cv_header_inttypes_h=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -echo "$as_me:$LINENO: result: $gt_cv_header_inttypes_h" >&5 -echo "${ECHO_T}$gt_cv_header_inttypes_h" >&6 - if test $gt_cv_header_inttypes_h = yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_INTTYPES_H 1 -_ACEOF - - fi - - - - if test $gt_cv_header_inttypes_h = yes; then - echo "$as_me:$LINENO: checking whether the inttypes.h PRIxNN macros are broken" >&5 -echo $ECHO_N "checking whether the inttypes.h PRIxNN macros are broken... $ECHO_C" >&6 -if test "${gt_cv_inttypes_pri_broken+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#ifdef PRId32 -char *p = PRId32; -#endif - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_inttypes_pri_broken=no -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -gt_cv_inttypes_pri_broken=yes -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -echo "$as_me:$LINENO: result: $gt_cv_inttypes_pri_broken" >&5 -echo "${ECHO_T}$gt_cv_inttypes_pri_broken" >&6 - fi - if test "$gt_cv_inttypes_pri_broken" = yes; then - -cat >>confdefs.h <<_ACEOF -#define PRI_MACROS_BROKEN 1 -_ACEOF - - fi - - - -for ac_header in stdint.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------- ## -## Report this to bug-gawk@gnu.org ## -## ------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - echo "$as_me:$LINENO: checking for SIZE_MAX" >&5 -echo $ECHO_N "checking for SIZE_MAX... $ECHO_C" >&6 - result= - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#if HAVE_STDINT_H -#include -#endif -#ifdef SIZE_MAX -Found it -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Found it" >/dev/null 2>&1; then - result=yes -fi -rm -f conftest* - - if test -z "$result"; then - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 / 10) >= 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=0 ac_mid=0 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 / 10) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo=`expr $ac_mid + 1` - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 / 10) < 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=-1 ac_mid=-1 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 / 10) >= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_hi=`expr '(' $ac_mid ')' - 1` - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo= ac_hi= -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 / 10) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo=`expr '(' $ac_mid ')' + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -case $ac_lo in -?*) res_hi=$ac_lo;; -'') result=? ;; -esac -else - if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run test program while cross compiling -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -long longval () { return ~(size_t)0 / 10; } -unsigned long ulongval () { return ~(size_t)0 / 10; } -#include -#include -int -main () -{ - - FILE *f = fopen ("conftest.val", "w"); - if (! f) - exit (1); - if ((~(size_t)0 / 10) < 0) - { - long i = longval (); - if (i != (~(size_t)0 / 10)) - exit (1); - fprintf (f, "%ld\n", i); - } - else - { - unsigned long i = ulongval (); - if (i != (~(size_t)0 / 10)) - exit (1); - fprintf (f, "%lu\n", i); - } - exit (ferror (f) || fclose (f) != 0); - - ; - return 0; -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - res_hi=`cat conftest.val` -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -result=? -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -rm -f conftest.val - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 % 10) >= 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=0 ac_mid=0 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 % 10) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo=`expr $ac_mid + 1` - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 % 10) < 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=-1 ac_mid=-1 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 % 10) >= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_hi=`expr '(' $ac_mid ')' - 1` - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo= ac_hi= -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((~(size_t)0 % 10) <= $ac_mid)]; -test_array [0] = 0 + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir" + fi + fi + fi + fi + fi + if test -n "$found_la"; then + save_libdir="$libdir" + case "$found_la" in + */* | *\\*) . "$found_la" ;; + *) . "./$found_la" ;; + esac + libdir="$save_libdir" + for dep in $dependency_libs; do + case "$dep" in + -L*) + additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$additional_libdir" != "X/usr/lib"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/lib"; then + if test -n "$GCC"; then + case $host_os in + linux* | gnu* | k*bsd*-gnu) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + haveit= + for x in $LDFLAGS $LIBICONV; do - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -ac_lo=`expr '(' $ac_mid ')' + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -case $ac_lo in -?*) res_lo=$ac_lo;; -'') result=? ;; -esac -else - if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run test program while cross compiling -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -long longval () { return ~(size_t)0 % 10; } -unsigned long ulongval () { return ~(size_t)0 % 10; } -#include -#include -int -main () -{ + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir" + fi + fi + haveit= + for x in $LDFLAGS $LTLIBICONV; do - FILE *f = fopen ("conftest.val", "w"); - if (! f) - exit (1); - if ((~(size_t)0 % 10) < 0) - { - long i = longval (); - if (i != (~(size_t)0 % 10)) - exit (1); - fprintf (f, "%ld\n", i); - } - else - { - unsigned long i = ulongval (); - if (i != (~(size_t)0 % 10)) - exit (1); - fprintf (f, "%lu\n", i); - } - exit (ferror (f) || fclose (f) != 0); + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir" + fi + fi + fi + fi + ;; + -R*) + dir=`echo "X$dep" | sed -e 's/^X-R//'` + if test "$enable_rpath" != no; then + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $dir" + fi + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $dir" + fi + fi + ;; + -l*) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` + ;; + *.la) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` + ;; + *) + LIBICONV="${LIBICONV}${LIBICONV:+ }$dep" + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep" + ;; + esac + done + fi + else + LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" + fi + fi + fi + done + done + if test "X$rpathdirs" != "X"; then + if test -n "$hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" + else + for found_dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$found_dir" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" + done + fi + fi + if test "X$ltrpathdirs" != "X"; then + for found_dir in $ltrpathdirs; do + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir" + done + fi - ; - return 0; -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - res_lo=`cat conftest.val` -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 -( exit $ac_status ) -result=? -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -rm -f conftest.val - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((sizeof (size_t) <= sizeof (unsigned int)) >= 0)]; -test_array [0] = 0 - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=0 ac_mid=0 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((sizeof (size_t) <= sizeof (unsigned int)) <= $ac_mid)]; -test_array [0] = 0 - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 -ac_lo=`expr $ac_mid + 1` - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -static int test_array [1 - 2 * !((sizeof (size_t) <= sizeof (unsigned int)) < 0)]; -test_array [0] = 0 - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=-1 ac_mid=-1 - while :; do - cat >conftest.$ac_ext <<_ACEOF + + + + + + + + + + + + echo "$as_me:$LINENO: checking for CFPreferencesCopyAppValue" >&5 +echo $ECHO_N "checking for CFPreferencesCopyAppValue... $ECHO_C" >&6 +if test "${gt_cv_func_CFPreferencesCopyAppValue+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + gt_save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS -I/System/Library/Frameworks/CoreFoundation.framework/Headers" + gt_save_LIBS="$LIBS" + LIBS="$LIBS -framework CoreFoundation" + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include int main () { -static int test_array [1 - 2 * !((sizeof (size_t) <= sizeof (unsigned int)) >= $ac_mid)]; -test_array [0] = 0 - +CFPreferencesCopyAppValue(NULL, NULL) ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -8886,58 +6432,60 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_lo=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_hi=`expr '(' $ac_mid ')' - 1` - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done + gt_cv_func_CFPreferencesCopyAppValue=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_lo= ac_hi= +gt_cv_func_CFPreferencesCopyAppValue=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$gt_save_CPPFLAGS" + LIBS="$gt_save_LIBS" fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` - cat >conftest.$ac_ext <<_ACEOF +echo "$as_me:$LINENO: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5 +echo "${ECHO_T}$gt_cv_func_CFPreferencesCopyAppValue" >&6 + if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +_ACEOF + + fi + echo "$as_me:$LINENO: checking for CFLocaleCopyCurrent" >&5 +echo $ECHO_N "checking for CFLocaleCopyCurrent... $ECHO_C" >&6 +if test "${gt_cv_func_CFLocaleCopyCurrent+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + gt_save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS -I/System/Library/Frameworks/CoreFoundation.framework/Headers" + gt_save_LIBS="$LIBS" + LIBS="$LIBS -framework CoreFoundation" + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include int main () { -static int test_array [1 - 2 * !((sizeof (size_t) <= sizeof (unsigned int)) <= $ac_mid)]; -test_array [0] = 0 - +CFLocaleCopyCurrent(); ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -8951,194 +6499,94 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_hi=$ac_mid + gt_cv_func_CFLocaleCopyCurrent=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_lo=`expr '(' $ac_mid ')' + 1` +gt_cv_func_CFLocaleCopyCurrent=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -case $ac_lo in -?*) fits_in_uint=$ac_lo;; -'') result=? ;; -esac -else - if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run test program while cross compiling -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CPPFLAGS="$gt_save_CPPFLAGS" + LIBS="$gt_save_LIBS" +fi +echo "$as_me:$LINENO: result: $gt_cv_func_CFLocaleCopyCurrent" >&5 +echo "${ECHO_T}$gt_cv_func_CFLocaleCopyCurrent" >&6 + if test $gt_cv_func_CFLocaleCopyCurrent = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_CFLOCALECOPYCURRENT 1 _ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -long longval () { return sizeof (size_t) <= sizeof (unsigned int); } -unsigned long ulongval () { return sizeof (size_t) <= sizeof (unsigned int); } -#include -#include -int -main () -{ - FILE *f = fopen ("conftest.val", "w"); - if (! f) - exit (1); - if ((sizeof (size_t) <= sizeof (unsigned int)) < 0) - { - long i = longval (); - if (i != (sizeof (size_t) <= sizeof (unsigned int))) - exit (1); - fprintf (f, "%ld\n", i); - } - else - { - unsigned long i = ulongval (); - if (i != (sizeof (size_t) <= sizeof (unsigned int))) - exit (1); - fprintf (f, "%lu\n", i); - } - exit (ferror (f) || fclose (f) != 0); + fi + INTL_MACOSX_LIBS= + if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then + INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" + fi - ; - return 0; -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - fits_in_uint=`cat conftest.val` -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 -( exit $ac_status ) -result=? -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -rm -f conftest.val - if test "$fits_in_uint" = 1; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - extern size_t foo; - extern unsigned long foo; -int -main () -{ - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - fits_in_uint=0 + echo "$as_me:$LINENO: checking whether NLS is requested" >&5 +echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6 + # Check whether --enable-nls or --disable-nls was given. +if test "${enable_nls+set}" = set; then + enableval="$enable_nls" + USE_NLS=$enableval else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + USE_NLS=yes +fi; + echo "$as_me:$LINENO: result: $USE_NLS" >&5 +echo "${ECHO_T}$USE_NLS" >&6 -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test -z "$result"; then - if test "$fits_in_uint" = 1; then - result="$res_hi$res_lo"U - else - result="$res_hi$res_lo"UL - fi - else - result='~(size_t)0' - fi - fi - echo "$as_me:$LINENO: result: $result" >&5 -echo "${ECHO_T}$result" >&6 - if test "$result" != yes; then -cat >>confdefs.h <<_ACEOF -#define SIZE_MAX $result -_ACEOF - fi + LIBINTL= + LTLIBINTL= + POSUB= + + if test "$USE_NLS" = "yes"; then + gt_use_preinstalled_gnugettext=no -for ac_header in stdint.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then + + + + echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5 +echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6 +if test "${gt_cv_func_gnugettext1_libc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> +#include +extern int _nl_msg_cat_cntr; +extern int *_nl_domain_bindings; +int +main () +{ +bindtextdomain ("", ""); +return * gettext ("") + _nl_msg_cat_cntr + *_nl_domain_bindings + ; + return 0; +} _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -9152,278 +6600,187 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes + gt_cv_func_gnugettext1_libc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------- ## -## Report this to bug-gawk@gnu.org ## -## ------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - +gt_cv_func_gnugettext1_libc=no fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi +echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libc" >&5 +echo "${ECHO_T}$gt_cv_func_gnugettext1_libc" >&6 -done - + if test "$gt_cv_func_gnugettext1_libc" != "yes"; then - if test "X$prefix" = "XNONE"; then - acl_final_prefix="$ac_default_prefix" - else - acl_final_prefix="$prefix" - fi - if test "X$exec_prefix" = "XNONE"; then - acl_final_exec_prefix='${prefix}' - else - acl_final_exec_prefix="$exec_prefix" - fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" - prefix="$acl_save_prefix" -# Check whether --with-gnu-ld or --without-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes -else - with_gnu_ld=no -fi; -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by GCC" >&5 -echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6 - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [\\/]* | [A-Za-z]:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 -else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 -fi -if test "${acl_cv_path_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - acl_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in - *GNU* | *'with BFD'*) - test "$with_gnu_ld" != no && break ;; - *) - test "$with_gnu_ld" != yes && break ;; - esac - fi - done - IFS="$ac_save_ifs" -else - acl_cv_path_LD="$LD" # Let the user override the test with a path. -fi -fi -LD="$acl_cv_path_LD" -if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 -echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} - { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 -if test "${acl_cv_prog_gnu_ld+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # I'd rather use --version here, but apparently some GNU ld's only accept -v. -case `$LD -v 2>&1 &5 -echo "${ECHO_T}$acl_cv_prog_gnu_ld" >&6 -with_gnu_ld=$acl_cv_prog_gnu_ld + am_save_CPPFLAGS="$CPPFLAGS" + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - echo "$as_me:$LINENO: checking for shared library run path origin" >&5 -echo $ECHO_N "checking for shared library run path origin... $ECHO_C" >&6 -if test "${acl_cv_rpath+set}" = set; then + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + + + echo "$as_me:$LINENO: checking for iconv" >&5 +echo $ECHO_N "checking for iconv... $ECHO_C" >&6 +if test "${am_cv_func_iconv+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ - ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh - . ./conftest.sh - rm -f ./conftest.sh - acl_cv_rpath=done + am_cv_func_iconv="no, consider installing GNU libiconv" + am_cv_lib_iconv=no + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + am_cv_func_iconv=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 fi -echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5 -echo "${ECHO_T}$acl_cv_rpath" >&6 - wl="$acl_cv_wl" - libext="$acl_cv_libext" - shlibext="$acl_cv_shlibext" - hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" - hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" - hardcode_direct="$acl_cv_hardcode_direct" - hardcode_minus_L="$acl_cv_hardcode_minus_L" - # Check whether --enable-rpath or --disable-rpath was given. -if test "${enable_rpath+set}" = set; then - enableval="$enable_rpath" - : +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test "$am_cv_func_iconv" != yes; then + am_save_LIBS="$LIBS" + LIBS="$LIBS $LIBICONV" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + am_cv_lib_iconv=yes + am_cv_func_iconv=yes else - enable_rpath=yes -fi; + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +fi +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$am_save_LIBS" + fi + +fi +echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5 +echo "${ECHO_T}$am_cv_func_iconv" >&6 + if test "$am_cv_func_iconv" = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_ICONV 1 +_ACEOF + fi + if test "$am_cv_lib_iconv" = yes; then + echo "$as_me:$LINENO: checking how to link with libiconv" >&5 +echo $ECHO_N "checking how to link with libiconv... $ECHO_C" >&6 + echo "$as_me:$LINENO: result: $LIBICONV" >&5 +echo "${ECHO_T}$LIBICONV" >&6 + else + CPPFLAGS="$am_save_CPPFLAGS" + LIBICONV= + LTLIBICONV= + fi @@ -9444,9 +6801,9 @@ prefix="$acl_save_prefix" -# Check whether --with-libiconv-prefix or --without-libiconv-prefix was given. -if test "${with_libiconv_prefix+set}" = set; then - withval="$with_libiconv_prefix" +# Check whether --with-libintl-prefix or --without-libintl-prefix was given. +if test "${with_libintl_prefix+set}" = set; then + withval="$with_libintl_prefix" if test "X$withval" = "Xno"; then use_additional=no @@ -9471,13 +6828,13 @@ fi fi; - LIBICONV= - LTLIBICONV= - INCICONV= + LIBINTL= + LTLIBINTL= + INCINTL= rpathdirs= ltrpathdirs= names_already_handled= - names_next_round='iconv ' + names_next_round='intl ' while test -n "$names_next_round"; do names_this_round="$names_next_round" names_next_round= @@ -9496,9 +6853,9 @@ if test -n "$value"; then if test "$value" = yes; then eval value=\"\$LIB$uppername\" - test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value" + test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value" eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value" + test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value" else : fi @@ -9525,7 +6882,7 @@ fi fi if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBICONV; do + for x in $LDFLAGS $LTLIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -9561,10 +6918,10 @@ done fi if test "X$found_dir" != "X"; then - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name" + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else haveit= for x in $ltrpathdirs; do @@ -9577,10 +6934,10 @@ ltrpathdirs="$ltrpathdirs $found_dir" fi if test "$hardcode_direct" = yes; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" haveit= for x in $rpathdirs; do if test "X$x" = "X$found_dir"; then @@ -9593,7 +6950,7 @@ fi else haveit= - for x in $LDFLAGS $LIBICONV; do + for x in $LDFLAGS $LIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -9609,21 +6966,21 @@ fi done if test -z "$haveit"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir" + LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir" fi if test "$hardcode_minus_L" != no; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else - LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" + LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" fi fi fi fi else if test "X$found_a" != "X"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a" + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a" else - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name" + LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name" fi fi additional_includedir= @@ -9639,12 +6996,12 @@ if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi if test -z "$haveit"; then - for x in $CPPFLAGS $INCICONV; do + for x in $CPPFLAGS $INCINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -9661,7 +7018,7 @@ done if test -z "$haveit"; then if test -d "$additional_includedir"; then - INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir" + INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir" fi fi fi @@ -9683,13 +7040,13 @@ if test "X$additional_libdir" = "X/usr/local/lib"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi if test -z "$haveit"; then haveit= - for x in $LDFLAGS $LIBICONV; do + for x in $LDFLAGS $LIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -9706,11 +7063,11 @@ done if test -z "$haveit"; then if test -d "$additional_libdir"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir" + LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir" fi fi haveit= - for x in $LDFLAGS $LTLIBICONV; do + for x in $LDFLAGS $LTLIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -9727,7 +7084,7 @@ done if test -z "$haveit"; then if test -d "$additional_libdir"; then - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir" + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir" fi fi fi @@ -9765,15 +7122,15 @@ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ;; *) - LIBICONV="${LIBICONV}${LIBICONV:+ }$dep" - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep" + LIBINTL="${LIBINTL}${LIBINTL:+ }$dep" + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep" ;; esac done fi else - LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" + LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name" fi fi fi @@ -9789,56 +7146,57 @@ libdir="$alldirs" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" - LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" + LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" else for found_dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$found_dir" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" - LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" + LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" done fi fi if test "X$ltrpathdirs" != "X"; then for found_dir in $ltrpathdirs; do - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir" + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir" done fi - - - - - - - - echo "$as_me:$LINENO: checking for ptrdiff_t" >&5 -echo $ECHO_N "checking for ptrdiff_t... $ECHO_C" >&6 -if test "${ac_cv_type_ptrdiff_t+set}" = set; then + echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5 +echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6 +if test "${gt_cv_func_gnugettext1_libintl+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >conftest.$ac_ext <<_ACEOF + gt_save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $INCINTL" + gt_save_LIBS="$LIBS" + LIBS="$LIBS $LIBINTL" + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_includes_default +#include +extern int _nl_msg_cat_cntr; +extern +#ifdef __cplusplus +"C" +#endif +const char *_nl_expand_alias (const char *); int main () { -if ((ptrdiff_t *) 0) - return 0; -if (sizeof (ptrdiff_t)) - return 0; +bindtextdomain ("", ""); +return * gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias ("") ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -9852,72 +7210,48 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_ptrdiff_t=yes + gt_cv_func_gnugettext1_libintl=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_ptrdiff_t=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_ptrdiff_t" >&5 -echo "${ECHO_T}$ac_cv_type_ptrdiff_t" >&6 -if test $ac_cv_type_ptrdiff_t = yes; then - : -else - -cat >>confdefs.h <<\_ACEOF -#define ptrdiff_t long -_ACEOF - - -fi - - - - - - - - - - - -for ac_header in argz.h limits.h locale.h nl_types.h malloc.h stddef.h \ -stdlib.h string.h unistd.h sys/param.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +gt_cv_func_gnugettext1_libintl=no fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test "$gt_cv_func_gnugettext1_libintl" != yes && test -n "$LIBICONV"; then + LIBS="$LIBS $LIBICONV" + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> +#include +extern int _nl_msg_cat_cntr; +extern +#ifdef __cplusplus +"C" +#endif +const char *_nl_expand_alias (const char *); +int +main () +{ +bindtextdomain ("", ""); +return * gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias ("") + ; + return 0; +} _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -9931,147 +7265,146 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 + LIBINTL="$LIBINTL $LIBICONV" + LTLIBINTL="$LTLIBINTL $LTLIBICONV" + gt_cv_func_gnugettext1_libintl=yes -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_preproc=no fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------- ## -## Report this to bug-gawk@gnu.org ## -## ------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + fi + CPPFLAGS="$gt_save_CPPFLAGS" + LIBS="$gt_save_LIBS" fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libintl" >&5 +echo "${ECHO_T}$gt_cv_func_gnugettext1_libintl" >&6 + fi -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF + if test "$gt_cv_func_gnugettext1_libc" = "yes" \ + || { test "$gt_cv_func_gnugettext1_libintl" = "yes" \ + && test "$PACKAGE" != gettext-runtime \ + && test "$PACKAGE" != gettext-tools; }; then + gt_use_preinstalled_gnugettext=yes + else + LIBINTL= + LTLIBINTL= + INCINTL= + fi -fi -done + if test -n "$INTL_MACOSX_LIBS"; then + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then + LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" + LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" + fi + fi + + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then +cat >>confdefs.h <<\_ACEOF +#define ENABLE_NLS 1 +_ACEOF + else + USE_NLS=no + fi + fi + echo "$as_me:$LINENO: checking whether to use NLS" >&5 +echo $ECHO_N "checking whether to use NLS... $ECHO_C" >&6 + echo "$as_me:$LINENO: result: $USE_NLS" >&5 +echo "${ECHO_T}$USE_NLS" >&6 + if test "$USE_NLS" = "yes"; then + echo "$as_me:$LINENO: checking where the gettext function comes from" >&5 +echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6 + if test "$gt_use_preinstalled_gnugettext" = "yes"; then + if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then + gt_source="external libintl" + else + gt_source="libc" + fi + else + gt_source="included intl directory" + fi + echo "$as_me:$LINENO: result: $gt_source" >&5 +echo "${ECHO_T}$gt_source" >&6 + fi + if test "$USE_NLS" = "yes"; then + if test "$gt_use_preinstalled_gnugettext" = "yes"; then + if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then + echo "$as_me:$LINENO: checking how to link with libintl" >&5 +echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6 + echo "$as_me:$LINENO: result: $LIBINTL" >&5 +echo "${ECHO_T}$LIBINTL" >&6 + for element in $INCINTL; do + haveit= + for x in $CPPFLAGS; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + fi +cat >>confdefs.h <<\_ACEOF +#define HAVE_GETTEXT 1 +_ACEOF +cat >>confdefs.h <<\_ACEOF +#define HAVE_DCGETTEXT 1 +_ACEOF + fi + POSUB=po + fi + INTLLIBS="$LIBINTL" -for ac_func in asprintf fwprintf getcwd getegid geteuid getgid getuid \ -mempcpy munmap putenv setenv setlocale snprintf stpcpy strcasecmp strdup \ -strtoul tsearch wcslen __argz_count __argz_stringify __argz_next \ -__fsetlocking -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then + + + +echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 +if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10080,54 +7413,22 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} -#endif +#include +#include +#include +#include int main () { -return f != $ac_func; + ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -10141,38 +7442,67 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - eval "$as_ac_var=yes" + ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -eval "$as_ac_var=no" -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +ac_cv_header_stdc=no fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + _ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no +fi +rm -f conftest* fi -done +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no +fi +rm -f conftest* +fi - echo "$as_me:$LINENO: checking whether _snprintf is declared" >&5 -echo $ECHO_N "checking whether _snprintf is declared... $ECHO_C" >&6 -if test "${ac_cv_have_decl__snprintf+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then + : else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -10180,67 +7510,67 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { - -#ifndef _snprintf - char *p = (char *) _snprintf; -#endif - - ; - return 0; + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + exit(2); + exit (0); } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 +rm -f conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_have_decl__snprintf=yes + : else - echo "$as_me: failed program was:" >&5 + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_have_decl__snprintf=no +( exit $ac_status ) +ac_cv_header_stdc=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_have_decl__snprintf" >&5 -echo "${ECHO_T}$ac_cv_have_decl__snprintf" >&6 - if test $ac_cv_have_decl__snprintf = yes; then - gt_value=1 - else - gt_value=0 - fi +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +echo "${ECHO_T}$ac_cv_header_stdc" >&6 +if test $ac_cv_header_stdc = yes; then -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL__SNPRINTF $gt_value +cat >>confdefs.h <<\_ACEOF +#define STDC_HEADERS 1 _ACEOF +fi - - echo "$as_me:$LINENO: checking whether _snwprintf is declared" >&5 -echo $ECHO_N "checking whether _snwprintf is declared... $ECHO_C" >&6 -if test "${ac_cv_have_decl__snwprintf+set}" = set; then +echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5 +echo $ECHO_N "checking for sys/wait.h that is POSIX.1 compatible... $ECHO_C" >&6 +if test "${ac_cv_header_sys_wait_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10249,15 +7579,21 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include +#include +#ifndef WEXITSTATUS +# define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8) +#endif +#ifndef WIFEXITED +# define WIFEXITED(stat_val) (((stat_val) & 255) == 0) +#endif + int main () { - -#ifndef _snwprintf - char *p = (char *) _snwprintf; -#endif - + int s; + wait (&s); + s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; ; return 0; } @@ -10284,33 +7620,28 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_have_decl__snwprintf=yes + ac_cv_header_sys_wait_h=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_have_decl__snwprintf=no +ac_cv_header_sys_wait_h=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_have_decl__snwprintf" >&5 -echo "${ECHO_T}$ac_cv_have_decl__snwprintf" >&6 - if test $ac_cv_have_decl__snwprintf = yes; then - gt_value=1 - else - gt_value=0 - fi +echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5 +echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6 +if test $ac_cv_header_sys_wait_h = yes; then -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL__SNWPRINTF $gt_value +cat >>confdefs.h <<\_ACEOF +#define HAVE_SYS_WAIT_H 1 _ACEOF +fi - - - echo "$as_me:$LINENO: checking whether feof_unlocked is declared" >&5 -echo $ECHO_N "checking whether feof_unlocked is declared... $ECHO_C" >&6 -if test "${ac_cv_have_decl_feof_unlocked+set}" = set; then +echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 +echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 +if test "${ac_cv_header_time+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10319,15 +7650,15 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include +#include +#include + int main () { - -#ifndef feof_unlocked - char *p = (char *) feof_unlocked; -#endif - +if ((struct tm *) 0) +return 0; ; return 0; } @@ -10354,52 +7685,69 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_have_decl_feof_unlocked=yes + ac_cv_header_time=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_have_decl_feof_unlocked=no +ac_cv_header_time=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_have_decl_feof_unlocked" >&5 -echo "${ECHO_T}$ac_cv_have_decl_feof_unlocked" >&6 - if test $ac_cv_have_decl_feof_unlocked = yes; then - gt_value=1 - else - gt_value=0 - fi +echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 +echo "${ECHO_T}$ac_cv_header_time" >&6 +if test $ac_cv_header_time = yes; then -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FEOF_UNLOCKED $gt_value +cat >>confdefs.h <<\_ACEOF +#define TIME_WITH_SYS_TIME 1 _ACEOF +fi + + + + + + + + - echo "$as_me:$LINENO: checking whether fgets_unlocked is declared" >&5 -echo $ECHO_N "checking whether fgets_unlocked is declared... $ECHO_C" >&6 -if test "${ac_cv_have_decl_fgets_unlocked+set}" = set; then + + + + + + + + + +for ac_header in fcntl.h limits.h locale.h libintl.h mcheck.h \ + netdb.h netinet/in.h signum.h stdarg.h string.h \ + sys/param.h sys/socket.h sys/time.h unistd.h \ + termios.h stropts.h wchar.h wctype.h +do +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else - cat >conftest.$ac_ext <<_ACEOF + # Is the header compilable? +echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -int -main () -{ - -#ifndef fgets_unlocked - char *p = (char *) fgets_unlocked; -#endif - - ; - return 0; -} +$ac_includes_default +#include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 @@ -10423,181 +7771,140 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_have_decl_fgets_unlocked=yes + ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_have_decl_fgets_unlocked=no +ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_have_decl_fgets_unlocked" >&5 -echo "${ECHO_T}$ac_cv_have_decl_fgets_unlocked" >&6 - if test $ac_cv_have_decl_fgets_unlocked = yes; then - gt_value=1 - else - gt_value=0 - fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FGETS_UNLOCKED $gt_value -_ACEOF - - +echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6 - echo "$as_me:$LINENO: checking whether getc_unlocked is declared" >&5 -echo $ECHO_N "checking whether getc_unlocked is declared... $ECHO_C" >&6 -if test "${ac_cv_have_decl_getc_unlocked+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF +# Is the header present? +echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -int -main () -{ - -#ifndef getc_unlocked - char *p = (char *) getc_unlocked; -#endif - - ; - return 0; -} +#include <$ac_header> _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_have_decl_getc_unlocked=yes + (exit $ac_status); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_c_preproc_warn_flag + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag + else + ac_cpp_err= + fi +else + ac_cpp_err=yes +fi +if test -z "$ac_cpp_err"; then + ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_have_decl_getc_unlocked=no + ac_header_preproc=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6 + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( + cat <<\_ASBOX +## ------------------------------- ## +## Report this to bug-gawk@gnu.org ## +## ------------------------------- ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" fi -echo "$as_me:$LINENO: result: $ac_cv_have_decl_getc_unlocked" >&5 -echo "${ECHO_T}$ac_cv_have_decl_getc_unlocked" >&6 - if test $ac_cv_have_decl_getc_unlocked = yes; then - gt_value=1 - else - gt_value=0 - fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETC_UNLOCKED $gt_value +fi +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF +fi +done - case $gt_cv_func_printf_posix in - *yes) HAVE_POSIX_PRINTF=1 ;; - *) HAVE_POSIX_PRINTF=0 ;; - esac - - if test "$ac_cv_func_asprintf" = yes; then - HAVE_ASPRINTF=1 - else - HAVE_ASPRINTF=0 - fi - - if test "$ac_cv_func_snprintf" = yes; then - HAVE_SNPRINTF=1 - else - HAVE_SNPRINTF=0 - fi - - if test "$ac_cv_func_wprintf" = yes; then - HAVE_WPRINTF=1 - else - HAVE_WPRINTF=0 - fi - - - - - - - - am_save_CPPFLAGS="$CPPFLAGS" - - for element in $INCICONV; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done +if test "$ac_cv_header_string_h" = yes +then - echo "$as_me:$LINENO: checking for iconv" >&5 -echo $ECHO_N "checking for iconv... $ECHO_C" >&6 -if test "${am_cv_func_iconv+set}" = set; then +for ac_header in memory.h +do +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else - - am_cv_func_iconv="no, consider installing GNU libiconv" - am_cv_lib_iconv=no - cat >conftest.$ac_ext <<_ACEOF + # Is the header compilable? +echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include -int -main () -{ -iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); - ; - return 0; -} +$ac_includes_default +#include <$ac_header> _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -10611,131 +7918,140 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - am_cv_func_iconv=yes + ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 +ac_header_compiler=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test "$am_cv_func_iconv" != yes; then - am_save_LIBS="$LIBS" - LIBS="$LIBS $LIBICONV" - cat >conftest.$ac_ext <<_ACEOF +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6 + +# Is the header present? +echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include -int -main () -{ -iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); - ; - return 0; -} +#include <$ac_header> _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - am_cv_lib_iconv=yes - am_cv_func_iconv=yes + (exit $ac_status); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_c_preproc_warn_flag + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag + else + ac_cpp_err= + fi +else + ac_cpp_err=yes +fi +if test -z "$ac_cpp_err"; then + ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + ac_header_preproc=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$am_save_LIBS" - fi +rm -f conftest.err conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6 +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( + cat <<\_ASBOX +## ------------------------------- ## +## Report this to bug-gawk@gnu.org ## +## ------------------------------- ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" fi -echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5 -echo "${ECHO_T}$am_cv_func_iconv" >&6 - if test "$am_cv_func_iconv" = yes; then +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -cat >>confdefs.h <<\_ACEOF -#define HAVE_ICONV 1 +fi +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF - fi - if test "$am_cv_lib_iconv" = yes; then - echo "$as_me:$LINENO: checking how to link with libiconv" >&5 -echo $ECHO_N "checking how to link with libiconv... $ECHO_C" >&6 - echo "$as_me:$LINENO: result: $LIBICONV" >&5 -echo "${ECHO_T}$LIBICONV" >&6 - else - CPPFLAGS="$am_save_CPPFLAGS" - LIBICONV= - LTLIBICONV= - fi +fi +done +else - if test "$am_cv_func_iconv" = yes; then - echo "$as_me:$LINENO: checking for iconv declaration" >&5 -echo $ECHO_N "checking for iconv declaration... $ECHO_C" >&6 - if test "${am_cv_proto_iconv+set}" = set; then +for ac_header in strings.h +do +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else - - cat >conftest.$ac_ext <<_ACEOF + # Is the header compilable? +echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ - -#include -#include -extern -#ifdef __cplusplus -"C" -#endif -#if defined(__STDC__) || defined(__cplusplus) -size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); -#else -size_t iconv(); -#endif - -int -main () -{ - - ; - return 0; -} +$ac_includes_default +#include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 @@ -10759,33 +8075,114 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - am_cv_proto_iconv_arg1="" + ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -am_cv_proto_iconv_arg1="const" +ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);" +echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6 + +# Is the header present? +echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <$ac_header> +_ACEOF +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_c_preproc_warn_flag + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag + else + ac_cpp_err= + fi +else + ac_cpp_err=yes fi +if test -z "$ac_cpp_err"; then + ac_header_preproc=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 - am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` - echo "$as_me:$LINENO: result: ${ac_t:- - }$am_cv_proto_iconv" >&5 -echo "${ECHO_T}${ac_t:- - }$am_cv_proto_iconv" >&6 + ac_header_preproc=no +fi +rm -f conftest.err conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6 -cat >>confdefs.h <<_ACEOF -#define ICONV_CONST $am_cv_proto_iconv_arg1 +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( + cat <<\_ASBOX +## ------------------------------- ## +## Report this to bug-gawk@gnu.org ## +## ------------------------------- ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 + +fi +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF - fi +fi + +done +fi - echo "$as_me:$LINENO: checking for nl_langinfo and CODESET" >&5 -echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6 -if test "${am_cv_langinfo_codeset+set}" = set; then +echo "$as_me:$LINENO: checking for pid_t" >&5 +echo $ECHO_N "checking for pid_t... $ECHO_C" >&6 +if test "${ac_cv_type_pid_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10794,18 +8191,21 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +$ac_includes_default int main () { -char* cs = nl_langinfo(CODESET); +if ((pid_t *) 0) + return 0; +if (sizeof (pid_t)) + return 0; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -10819,38 +8219,36 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - am_cv_langinfo_codeset=yes + ac_cv_type_pid_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -am_cv_langinfo_codeset=no +ac_cv_type_pid_t=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $am_cv_langinfo_codeset" >&5 -echo "${ECHO_T}$am_cv_langinfo_codeset" >&6 - if test $am_cv_langinfo_codeset = yes; then +echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 +echo "${ECHO_T}$ac_cv_type_pid_t" >&6 +if test $ac_cv_type_pid_t = yes; then + : +else -cat >>confdefs.h <<\_ACEOF -#define HAVE_LANGINFO_CODESET 1 +cat >>confdefs.h <<_ACEOF +#define pid_t int _ACEOF - fi - - if test $ac_cv_header_locale_h = yes; then +fi - echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5 -echo $ECHO_N "checking for LC_MESSAGES... $ECHO_C" >&6 -if test "${am_cv_val_LC_MESSAGES+set}" = set; then +echo "$as_me:$LINENO: checking return type of signal handlers" >&5 +echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6 +if test "${ac_cv_type_signal+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10859,18 +8257,28 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include +#include +#ifdef signal +# undef signal +#endif +#ifdef __cplusplus +extern "C" void (*signal (int, void (*)(int)))(int); +#else +void (*signal ()) (); +#endif + int main () { -return LC_MESSAGES +int i; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -10884,157 +8292,32 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - am_cv_val_LC_MESSAGES=yes + ac_cv_type_signal=void else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -am_cv_val_LC_MESSAGES=no +ac_cv_type_signal=int fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $am_cv_val_LC_MESSAGES" >&5 -echo "${ECHO_T}$am_cv_val_LC_MESSAGES" >&6 - if test $am_cv_val_LC_MESSAGES = yes; then +echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 +echo "${ECHO_T}$ac_cv_type_signal" >&6 -cat >>confdefs.h <<\_ACEOF -#define HAVE_LC_MESSAGES 1 +cat >>confdefs.h <<_ACEOF +#define RETSIGTYPE $ac_cv_type_signal _ACEOF - fi - - fi - - for ac_prog in bison -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_INTLBISON+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$INTLBISON"; then - ac_cv_prog_INTLBISON="$INTLBISON" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_INTLBISON="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -INTLBISON=$ac_cv_prog_INTLBISON -if test -n "$INTLBISON"; then - echo "$as_me:$LINENO: result: $INTLBISON" >&5 -echo "${ECHO_T}$INTLBISON" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$INTLBISON" && break -done - - if test -z "$INTLBISON"; then - ac_verc_fail=yes - else - echo "$as_me:$LINENO: checking version of bison" >&5 -echo $ECHO_N "checking version of bison... $ECHO_C" >&6 - ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; - 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - esac - echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -echo "${ECHO_T}$ac_prog_version" >&6 - fi - if test $ac_verc_fail = yes; then - INTLBISON=: - fi - - - - - - - - - - - - - - - - - echo "$as_me:$LINENO: checking whether NLS is requested" >&5 -echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6 - # Check whether --enable-nls or --disable-nls was given. -if test "${enable_nls+set}" = set; then - enableval="$enable_nls" - USE_NLS=$enableval -else - USE_NLS=yes -fi; - echo "$as_me:$LINENO: result: $USE_NLS" >&5 -echo "${ECHO_T}$USE_NLS" >&6 - - - - - BUILD_INCLUDED_LIBINTL=no - USE_INCLUDED_LIBINTL=no - - LIBINTL= - LTLIBINTL= - POSUB= - - if test "$USE_NLS" = "yes"; then - gt_use_preinstalled_gnugettext=no - - echo "$as_me:$LINENO: checking whether included gettext is requested" >&5 -echo $ECHO_N "checking whether included gettext is requested... $ECHO_C" >&6 - -# Check whether --with-included-gettext or --without-included-gettext was given. -if test "${with_included_gettext+set}" = set; then - withval="$with_included_gettext" - nls_cv_force_use_gnu_gettext=$withval -else - nls_cv_force_use_gnu_gettext=no -fi; - echo "$as_me:$LINENO: result: $nls_cv_force_use_gnu_gettext" >&5 -echo "${ECHO_T}$nls_cv_force_use_gnu_gettext" >&6 - - nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext" - if test "$nls_cv_force_use_gnu_gettext" != "yes"; then - - - - - - echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5 -echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6 -if test "${gt_cv_func_gnugettext2_libc+set}" = set; then +echo "$as_me:$LINENO: checking for size_t" >&5 +echo $ECHO_N "checking for size_t... $ECHO_C" >&6 +if test "${ac_cv_type_size_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -11043,21 +8326,21 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -extern int _nl_msg_cat_cntr; -extern int *_nl_domain_bindings; +$ac_includes_default int main () { -bindtextdomain ("", ""); -return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_domain_bindings +if ((size_t *) 0) + return 0; +if (sizeof (size_t)) + return 0; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -11071,432 +8354,176 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - gt_cv_func_gnugettext2_libc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -gt_cv_func_gnugettext2_libc=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext2_libc" >&5 -echo "${ECHO_T}$gt_cv_func_gnugettext2_libc" >&6 - - if test "$gt_cv_func_gnugettext2_libc" != "yes"; then - - - - use_additional=yes - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - -# Check whether --with-libintl-prefix or --without-libintl-prefix was given. -if test "${with_libintl_prefix+set}" = set; then - withval="$with_libintl_prefix" - - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - else - additional_includedir="$withval/include" - additional_libdir="$withval/lib" - fi - fi - -fi; - LIBINTL= - LTLIBINTL= - INCINTL= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='intl ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then - found_dir="$additional_libdir" - found_so="$additional_libdir/lib$name.$shlibext" - if test -f "$additional_libdir/lib$name.la"; then - found_la="$additional_libdir/lib$name.la" - fi - else - if test -f "$additional_libdir/lib$name.$libext"; then - found_dir="$additional_libdir" - found_a="$additional_libdir/lib$name.$libext" - if test -f "$additional_libdir/lib$name.la"; then - found_la="$additional_libdir/lib$name.la" - fi - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBINTL; do + ac_cv_type_size_t=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +ac_cv_type_size_t=no +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 +echo "${ECHO_T}$ac_cv_type_size_t" >&6 +if test $ac_cv_type_size_t = yes; then + : +else - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then - found_dir="$dir" - found_so="$dir/lib$name.$shlibext" - if test -f "$dir/lib$name.la"; then - found_la="$dir/lib$name.la" - fi - else - if test -f "$dir/lib$name.$libext"; then - found_dir="$dir" - found_a="$dir/lib$name.$libext" - if test -f "$dir/lib$name.la"; then - found_la="$dir/lib$name.la" - fi - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$hardcode_direct" = yes; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - else - if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBINTL; do +cat >>confdefs.h <<_ACEOF +#define size_t unsigned +_ACEOF - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +fi - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir" - fi - if test "$hardcode_minus_L" != no; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - else - LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a" - else - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */lib | */lib/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux*) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCINTL; do +echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5 +echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6 +if test "${ac_cv_type_uid_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "uid_t" >/dev/null 2>&1; then + ac_cv_type_uid_t=yes +else + ac_cv_type_uid_t=no +fi +rm -f conftest* - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/lib"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/lib"; then - if test -n "$GCC"; then - case $host_os in - linux*) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBINTL; do +fi +echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5 +echo "${ECHO_T}$ac_cv_type_uid_t" >&6 +if test $ac_cv_type_uid_t = no; then + +cat >>confdefs.h <<\_ACEOF +#define uid_t int +_ACEOF + + +cat >>confdefs.h <<\_ACEOF +#define gid_t int +_ACEOF + +fi + +echo "$as_me:$LINENO: checking type of array argument to getgroups" >&5 +echo $ECHO_N "checking type of array argument to getgroups... $ECHO_C" >&6 +if test "${ac_cv_type_getgroups+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_type_getgroups=cross +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Thanks to Mike Rendell for this test. */ +#include +#define NGID 256 +#undef MAX +#define MAX(x, y) ((x) > (y) ? (x) : (y)) + +int +main () +{ + gid_t gidset[NGID]; + int i, n; + union { gid_t gval; long lval; } val; + + val.lval = -1; + for (i = 0; i < NGID; i++) + gidset[i] = val.gval; + n = getgroups (sizeof (gidset) / MAX (sizeof (int), sizeof (gid_t)) - 1, + gidset); + /* Exit non-zero if getgroups seems to require an array of ints. This + happens when gid_t is short but getgroups modifies an array of ints. */ + exit ((n > 0 && gidset[n] != val.gval) ? 1 : 0); +} +_ACEOF +rm -f conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_type_getgroups=gid_t +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +( exit $ac_status ) +ac_cv_type_getgroups=int +fi +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +if test $ac_cv_type_getgroups = cross; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBINTL; do +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "getgroups.*int.*gid_t" >/dev/null 2>&1; then + ac_cv_type_getgroups=gid_t +else + ac_cv_type_getgroups=int +fi +rm -f conftest* - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_type_getgroups" >&5 +echo "${ECHO_T}$ac_cv_type_getgroups" >&6 - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBINTL="${LIBINTL}${LIBINTL:+ }$dep" - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep" - ;; - esac - done - fi - else - LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir" - done - fi +cat >>confdefs.h <<_ACEOF +#define GETGROUPS_T $ac_cv_type_getgroups +_ACEOF - echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5 -echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6 -if test "${gt_cv_func_gnugettext2_libintl+set}" = set; then + + + echo "$as_me:$LINENO: checking for long long" >&5 +echo $ECHO_N "checking for long long... $ECHO_C" >&6 +if test "${ac_cv_type_long_long+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - gt_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $INCINTL" - gt_save_LIBS="$LIBS" - LIBS="$LIBS $LIBINTL" - cat >conftest.$ac_ext <<_ACEOF + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -extern int _nl_msg_cat_cntr; -extern -#ifdef __cplusplus -"C" -#endif -const char *_nl_expand_alias (); +long long ll = 1LL; int i = 63; int main () { -bindtextdomain ("", ""); -return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0) +long long llmax = (long long) -1; + return ll << i | ll >> i | llmax / ll | llmax % ll; ; return 0; } @@ -11523,42 +8550,115 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - gt_cv_func_gnugettext2_libintl=yes + ac_cv_type_long_long=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -gt_cv_func_gnugettext2_libintl=no +ac_cv_type_long_long=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - if test "$gt_cv_func_gnugettext2_libintl" != yes && test -n "$LIBICONV"; then - LIBS="$LIBS $LIBICONV" - cat >conftest.$ac_ext <<_ACEOF +fi +echo "$as_me:$LINENO: result: $ac_cv_type_long_long" >&5 +echo "${ECHO_T}$ac_cv_type_long_long" >&6 + if test $ac_cv_type_long_long = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_LONG_LONG 1 +_ACEOF + + fi + + + echo "$as_me:$LINENO: checking for unsigned long long" >&5 +echo $ECHO_N "checking for unsigned long long... $ECHO_C" >&6 +if test "${ac_cv_type_unsigned_long_long+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -extern int _nl_msg_cat_cntr; -extern -#ifdef __cplusplus -"C" -#endif -const char *_nl_expand_alias (); +unsigned long long ull = 1ULL; int i = 63; +int +main () +{ +unsigned long long ullmax = (unsigned long long) -1; + return ull << i | ull >> i | ullmax / ull | ullmax % ull; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_type_unsigned_long_long=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_cv_type_unsigned_long_long=no +fi +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long_long" >&5 +echo "${ECHO_T}$ac_cv_type_unsigned_long_long" >&6 + if test $ac_cv_type_unsigned_long_long = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_UNSIGNED_LONG_LONG 1 +_ACEOF + + fi + + + echo "$as_me:$LINENO: checking for inttypes.h" >&5 +echo $ECHO_N "checking for inttypes.h... $ECHO_C" >&6 +if test "${gl_cv_header_inttypes_h+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include int main () { -bindtextdomain ("", ""); -return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0) +uintmax_t i = (uintmax_t) -1; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -11572,184 +8672,35 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - LIBINTL="$LIBINTL $LIBICONV" - LTLIBINTL="$LTLIBINTL $LTLIBICONV" - gt_cv_func_gnugettext2_libintl=yes - + gl_cv_header_inttypes_h=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 +gl_cv_header_inttypes_h=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - fi - CPPFLAGS="$gt_save_CPPFLAGS" - LIBS="$gt_save_LIBS" +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext2_libintl" >&5 -echo "${ECHO_T}$gt_cv_func_gnugettext2_libintl" >&6 - fi - - if test "$gt_cv_func_gnugettext2_libc" = "yes" \ - || { test "$gt_cv_func_gnugettext2_libintl" = "yes" \ - && test "$PACKAGE" != gettext-runtime \ - && test "$PACKAGE" != gettext-tools; }; then - gt_use_preinstalled_gnugettext=yes - else - LIBINTL= - LTLIBINTL= - INCINTL= - fi - - - if test "$gt_use_preinstalled_gnugettext" != "yes"; then - nls_cv_use_gnu_gettext=yes - fi - fi - - if test "$nls_cv_use_gnu_gettext" = "yes"; then - BUILD_INCLUDED_LIBINTL=yes - USE_INCLUDED_LIBINTL=yes - LIBINTL="\${top_builddir}/intl/libintl.a $LIBICONV" - LTLIBINTL="\${top_builddir}/intl/libintl.a $LTLIBICONV" - LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` - fi - - if test "$gt_use_preinstalled_gnugettext" = "yes" \ - || test "$nls_cv_use_gnu_gettext" = "yes"; then - CATOBJEXT=.gmo - fi - - - if test "$gt_use_preinstalled_gnugettext" = "yes" \ - || test "$nls_cv_use_gnu_gettext" = "yes"; then - -cat >>confdefs.h <<\_ACEOF -#define ENABLE_NLS 1 -_ACEOF - - else - USE_NLS=no - fi - fi - - echo "$as_me:$LINENO: checking whether to use NLS" >&5 -echo $ECHO_N "checking whether to use NLS... $ECHO_C" >&6 - echo "$as_me:$LINENO: result: $USE_NLS" >&5 -echo "${ECHO_T}$USE_NLS" >&6 - if test "$USE_NLS" = "yes"; then - echo "$as_me:$LINENO: checking where the gettext function comes from" >&5 -echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6 - if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then - gt_source="external libintl" - else - gt_source="libc" - fi - else - gt_source="included intl directory" - fi - echo "$as_me:$LINENO: result: $gt_source" >&5 -echo "${ECHO_T}$gt_source" >&6 - fi - - if test "$USE_NLS" = "yes"; then - - if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then - echo "$as_me:$LINENO: checking how to link with libintl" >&5 -echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6 - echo "$as_me:$LINENO: result: $LIBINTL" >&5 -echo "${ECHO_T}$LIBINTL" >&6 - - for element in $INCINTL; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +echo "$as_me:$LINENO: result: $gl_cv_header_inttypes_h" >&5 +echo "${ECHO_T}$gl_cv_header_inttypes_h" >&6 + if test $gl_cv_header_inttypes_h = yes; then - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - fi - - -cat >>confdefs.h <<\_ACEOF -#define HAVE_GETTEXT 1 -_ACEOF - - -cat >>confdefs.h <<\_ACEOF -#define HAVE_DCGETTEXT 1 +cat >>confdefs.h <<_ACEOF +#define HAVE_INTTYPES_H_WITH_UINTMAX 1 _ACEOF - fi - - POSUB=po fi - if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then - BUILD_INCLUDED_LIBINTL=yes - fi - - - - - - nls_cv_header_intl= - nls_cv_header_libgt= - - DATADIRNAME=share - - - INSTOBJEXT=.mo - - - GENCAT=gencat - - - if test "$USE_INCLUDED_LIBINTL" = yes; then - INTLOBJS="\$(GETTOBJS)" - fi - - - INTL_LIBTOOL_SUFFIX_PREFIX= - - - - INTLLIBS="$LIBINTL" - - - - - - - - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then + echo "$as_me:$LINENO: checking for stdint.h" >&5 +echo $ECHO_N "checking for stdint.h... $ECHO_C" >&6 +if test "${gl_cv_header_stdint_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -11758,15 +8709,12 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include -#include -#include - +#include +#include int main () { - +uintmax_t i = (uintmax_t) -1; ; return 0; } @@ -11793,129 +8741,136 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_header_stdc=yes + gl_cv_header_stdint_h=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_stdc=no +gl_cv_header_stdint_h=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +echo "$as_me:$LINENO: result: $gl_cv_header_stdint_h" >&5 +echo "${ECHO_T}$gl_cv_header_stdint_h" >&6 + if test $gl_cv_header_stdint_h = yes; then -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ +cat >>confdefs.h <<_ACEOF +#define HAVE_STDINT_H_WITH_UINTMAX 1 _ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include + fi + + + + + if test $gl_cv_header_inttypes_h = no && test $gl_cv_header_stdint_h = no; then + + test $ac_cv_type_long_long = yes \ + && ac_type='long long' \ + || ac_type='long' + +cat >>confdefs.h <<_ACEOF +#define intmax_t $ac_type _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* -fi + else -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ +cat >>confdefs.h <<\_ACEOF +#define HAVE_INTMAX_T 1 _ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include + fi + + + + + if test $gl_cv_header_inttypes_h = no && test $gl_cv_header_stdint_h = no; then + + test $ac_cv_type_unsigned_long_long = yes \ + && ac_type='unsigned long long' \ + || ac_type='unsigned long' + +cat >>confdefs.h <<_ACEOF +#define uintmax_t $ac_type _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* -fi + else -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then - : +cat >>confdefs.h <<\_ACEOF +#define HAVE_UINTMAX_T 1 +_ACEOF + + fi + +echo "$as_me:$LINENO: checking for ssize_t" >&5 +echo $ECHO_N "checking for ssize_t... $ECHO_C" >&6 +if test "${ac_cv_type_ssize_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default int main () { - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); +if ((ssize_t *) 0) + return 0; +if (sizeof (ssize_t)) + return 0; + ; + return 0; } _ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - : + ac_cv_type_ssize_t=yes else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 + echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi +ac_cv_type_ssize_t=no fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then +echo "$as_me:$LINENO: result: $ac_cv_type_ssize_t" >&5 +echo "${ECHO_T}$ac_cv_type_ssize_t" >&6 +if test $ac_cv_type_ssize_t = yes; then + : +else -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 +cat >>confdefs.h <<_ACEOF +#define ssize_t int _ACEOF fi -echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5 -echo $ECHO_N "checking for sys/wait.h that is POSIX.1 compatible... $ECHO_C" >&6 -if test "${ac_cv_header_sys_wait_h+set}" = set; then +echo "$as_me:$LINENO: checking for unsigned int" >&5 +echo $ECHO_N "checking for unsigned int... $ECHO_C" >&6 +if test "${ac_cv_type_unsigned_int+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -11924,21 +8879,14 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include -#ifndef WEXITSTATUS -# define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8) -#endif -#ifndef WIFEXITED -# define WIFEXITED(stat_val) (((stat_val) & 255) == 0) -#endif - +$ac_includes_default int main () { - int s; - wait (&s); - s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; +if ((unsigned int *) 0) + return 0; +if (sizeof (unsigned int)) + return 0; ; return 0; } @@ -11965,45 +8913,84 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_header_sys_wait_h=yes + ac_cv_type_unsigned_int=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_sys_wait_h=no +ac_cv_type_unsigned_int=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5 -echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6 -if test $ac_cv_header_sys_wait_h = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_SYS_WAIT_H 1 -_ACEOF - -fi +echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_int" >&5 +echo "${ECHO_T}$ac_cv_type_unsigned_int" >&6 -echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 -echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 -if test "${ac_cv_header_time+set}" = set; then +echo "$as_me:$LINENO: checking size of unsigned int" >&5 +echo $ECHO_N "checking size of unsigned int... $ECHO_C" >&6 +if test "${ac_cv_sizeof_unsigned_int+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >conftest.$ac_ext <<_ACEOF + if test "$ac_cv_type_unsigned_int" = yes; then + # The cast to unsigned long works around a bug in the HP C Compiler + # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects + # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. + # This bug is HP SR number 8606223364. + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include -#include +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (unsigned int))) >= 0)]; +test_array [0] = 0 + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default int main () { -if ((struct tm *) 0) -return 0; +static int test_array [1 - 2 * !(((long) (sizeof (unsigned int))) <= $ac_mid)]; +test_array [0] = 0 + ; return 0; } @@ -12030,61 +9017,24 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_header_time=yes + ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_time=no +ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 -echo "${ECHO_T}$ac_cv_header_time" >&6 -if test $ac_cv_header_time = yes; then - -cat >>confdefs.h <<\_ACEOF -#define TIME_WITH_SYS_TIME 1 -_ACEOF - -fi - - - - - - - - - - - - - - - - - - - -for ac_header in fcntl.h limits.h locale.h libintl.h mcheck.h \ - netdb.h netinet/in.h signum.h stdarg.h string.h \ - sys/param.h sys/socket.h sys/time.h unistd.h \ - termios.h stropts.h wchar.h wctype.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 + done else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -12092,7 +9042,15 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default -#include <$ac_header> +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (unsigned int))) < 0)]; +test_array [0] = 0 + + ; + return 0; +} _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 @@ -12116,136 +9074,89 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include <$ac_header> +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (unsigned int))) >= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes + (exit $ac_status); }; }; then + ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_preproc=no +ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------- ## -## Report this to bug-gawk@gnu.org ## -## ------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +ac_lo= ac_hi= fi - -done - - -if test "$ac_cv_header_string_h" = yes -then - -for ac_header in memory.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default -#include <$ac_header> +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (unsigned int))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 @@ -12269,134 +9180,130 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_header_compiler=yes + ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_header_compiler=no +ac_lo=`expr '(' $ac_mid ')' + 1` fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF +done +case $ac_lo in +?*) ac_cv_sizeof_unsigned_int=$ac_lo;; +'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (unsigned int), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } ;; +esac +else + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include <$ac_header> +$ac_includes_default +long longval () { return (long) (sizeof (unsigned int)); } +unsigned long ulongval () { return (long) (sizeof (unsigned int)); } +#include +#include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + exit (1); + if (((long) (sizeof (unsigned int))) < 0) + { + long i = longval (); + if (i != ((long) (sizeof (unsigned int)))) + exit (1); + fprintf (f, "%ld\n", i); + } + else + { + unsigned long i = ulongval (); + if (i != ((long) (sizeof (unsigned int)))) + exit (1); + fprintf (f, "%lu\n", i); + } + exit (ferror (f) || fclose (f) != 0); + + ; + return 0; +} _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +rm -f conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_unsigned_int=`cat conftest.val` else - echo "$as_me: failed program was:" >&5 + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_preproc=no +( exit $ac_status ) +{ { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (unsigned int), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------- ## -## Report this to bug-gawk@gnu.org ## -## ------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - +rm -f conftest.val +else + ac_cv_sizeof_unsigned_int=0 +fi fi +echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_int" >&5 +echo "${ECHO_T}$ac_cv_sizeof_unsigned_int" >&6 +cat >>confdefs.h <<_ACEOF +#define SIZEOF_UNSIGNED_INT $ac_cv_sizeof_unsigned_int +_ACEOF -done - -else -for ac_header in strings.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then +echo "$as_me:$LINENO: checking for unsigned long" >&5 +echo $ECHO_N "checking for unsigned long... $ECHO_C" >&6 +if test "${ac_cv_type_unsigned_long+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default -#include <$ac_header> +int +main () +{ +if ((unsigned long *) 0) + return 0; +if (sizeof (unsigned long)) + return 0; + ; + return 0; +} _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 @@ -12420,117 +9327,72 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_header_compiler=yes + ac_cv_type_unsigned_long=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_header_compiler=no +ac_cv_type_unsigned_long=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 +fi +echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long" >&5 +echo "${ECHO_T}$ac_cv_type_unsigned_long" >&6 -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +echo "$as_me:$LINENO: checking size of unsigned long" >&5 +echo $ECHO_N "checking size of unsigned long... $ECHO_C" >&6 +if test "${ac_cv_sizeof_unsigned_long+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$ac_cv_type_unsigned_long" = yes; then + # The cast to unsigned long works around a bug in the HP C Compiler + # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects + # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. + # This bug is HP SR number 8606223364. + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include <$ac_header> +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (unsigned long))) >= 0)]; +test_array [0] = 0 + + ; + return 0; +} _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------- ## -## Report this to bug-gawk@gnu.org ## -## ------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi - -echo "$as_me:$LINENO: checking for pid_t" >&5 -echo $ECHO_N "checking for pid_t... $ECHO_C" >&6 -if test "${ac_cv_type_pid_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12540,10 +9402,9 @@ int main () { -if ((pid_t *) 0) - return 0; -if (sizeof (pid_t)) - return 0; +static int test_array [1 - 2 * !(((long) (sizeof (unsigned long))) <= $ac_mid)]; +test_array [0] = 0 + ; return 0; } @@ -12570,53 +9431,78 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_pid_t=yes + ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_pid_t=no +ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 -echo "${ECHO_T}$ac_cv_type_pid_t" >&6 -if test $ac_cv_type_pid_t = yes; then - : + done else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 -cat >>confdefs.h <<_ACEOF -#define pid_t int +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ _ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (unsigned long))) < 0)]; +test_array [0] = 0 -fi - -echo "$as_me:$LINENO: checking return type of signal handlers" >&5 -echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6 -if test "${ac_cv_type_signal+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include -#ifdef signal -# undef signal -#endif -#ifdef __cplusplus -extern "C" void (*signal (int, void (*)(int)))(int); -#else -void (*signal ()) (); -#endif - +$ac_includes_default int main () { -int i; +static int test_array [1 - 2 * !(((long) (sizeof (unsigned long))) >= $ac_mid)]; +test_array [0] = 0 + ; return 0; } @@ -12643,28 +9529,32 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_signal=void + ac_lo=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_signal=int +ac_lo= ac_hi= fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 -echo "${ECHO_T}$ac_cv_type_signal" >&6 - -cat >>confdefs.h <<_ACEOF -#define RETSIGTYPE $ac_cv_type_signal -_ACEOF - - -echo "$as_me:$LINENO: checking for size_t" >&5 -echo $ECHO_N "checking for size_t... $ECHO_C" >&6 -if test "${ac_cv_type_size_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -12675,10 +9565,9 @@ int main () { -if ((size_t *) 0) - return 0; -if (sizeof (size_t)) - return 0; +static int test_array [1 - 2 * !(((long) (sizeof (unsigned long))) <= $ac_mid)]; +test_array [0] = 0 + ; return 0; } @@ -12705,72 +9594,30 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_size_t=yes + ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_size_t=no +ac_lo=`expr '(' $ac_mid ')' + 1` fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 -echo "${ECHO_T}$ac_cv_type_size_t" >&6 -if test $ac_cv_type_size_t = yes; then - : -else - -cat >>confdefs.h <<_ACEOF -#define size_t unsigned -_ACEOF - -fi - -echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5 -echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6 -if test "${ac_cv_type_uid_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "uid_t" >/dev/null 2>&1; then - ac_cv_type_uid_t=yes -else - ac_cv_type_uid_t=no -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5 -echo "${ECHO_T}$ac_cv_type_uid_t" >&6 -if test $ac_cv_type_uid_t = no; then - -cat >>confdefs.h <<\_ACEOF -#define uid_t int -_ACEOF - - -cat >>confdefs.h <<\_ACEOF -#define gid_t int -_ACEOF - -fi - -echo "$as_me:$LINENO: checking type of array argument to getgroups" >&5 -echo $ECHO_N "checking type of array argument to getgroups... $ECHO_C" >&6 -if test "${ac_cv_type_getgroups+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +done +case $ac_lo in +?*) ac_cv_sizeof_unsigned_long=$ac_lo;; +'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (unsigned long), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } ;; +esac else if test "$cross_compiling" = yes; then - ac_cv_type_getgroups=cross + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -12778,27 +9625,36 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Thanks to Mike Rendell for this test. */ -#include -#define NGID 256 -#undef MAX -#define MAX(x, y) ((x) > (y) ? (x) : (y)) - +$ac_includes_default +long longval () { return (long) (sizeof (unsigned long)); } +unsigned long ulongval () { return (long) (sizeof (unsigned long)); } +#include +#include int main () { - gid_t gidset[NGID]; - int i, n; - union { gid_t gval; long lval; } val; - val.lval = -1; - for (i = 0; i < NGID; i++) - gidset[i] = val.gval; - n = getgroups (sizeof (gidset) / MAX (sizeof (int), sizeof (gid_t)) - 1, - gidset); - /* Exit non-zero if getgroups seems to require an array of ints. This - happens when gid_t is short but getgroups modifies an array of ints. */ - exit ((n > 0 && gidset[n] != val.gval) ? 1 : 0); + FILE *f = fopen ("conftest.val", "w"); + if (! f) + exit (1); + if (((long) (sizeof (unsigned long))) < 0) + { + long i = longval (); + if (i != ((long) (sizeof (unsigned long)))) + exit (1); + fprintf (f, "%ld\n", i); + } + else + { + unsigned long i = ulongval (); + if (i != ((long) (sizeof (unsigned long)))) + exit (1); + fprintf (f, "%lu\n", i); + } + exit (ferror (f) || fclose (f) != 0); + + ; + return 0; } _ACEOF rm -f conftest$ac_exeext @@ -12812,134 +9668,79 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_getgroups=gid_t + ac_cv_sizeof_unsigned_long=`cat conftest.val` else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -ac_cv_type_getgroups=int +{ { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (unsigned long), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -if test $ac_cv_type_getgroups = cross; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "getgroups.*int.*gid_t" >/dev/null 2>&1; then - ac_cv_type_getgroups=gid_t -else - ac_cv_type_getgroups=int fi -rm -f conftest* - +rm -f conftest.val +else + ac_cv_sizeof_unsigned_long=0 fi fi -echo "$as_me:$LINENO: result: $ac_cv_type_getgroups" >&5 -echo "${ECHO_T}$ac_cv_type_getgroups" >&6 - +echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_long" >&5 +echo "${ECHO_T}$ac_cv_sizeof_unsigned_long" >&6 cat >>confdefs.h <<_ACEOF -#define GETGROUPS_T $ac_cv_type_getgroups +#define SIZEOF_UNSIGNED_LONG $ac_cv_sizeof_unsigned_long _ACEOF - - echo "$as_me:$LINENO: checking for long long" >&5 -echo $ECHO_N "checking for long long... $ECHO_C" >&6 -if test "${ac_cv_type_long_long+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -long long ll = 1LL; int i = 63; -int -main () -{ -long long llmax = (long long) -1; - return ll << i | ll >> i | llmax / ll | llmax % ll; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_long_long=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +#include -ac_cv_type_long_long=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_long_long" >&5 -echo "${ECHO_T}$ac_cv_type_long_long" >&6 - if test $ac_cv_type_long_long = yes; then +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "int.*sprintf" >/dev/null 2>&1; then cat >>confdefs.h <<\_ACEOF -#define HAVE_LONG_LONG 1 +#define SPRINTF_RET int _ACEOF - fi +else + cat >>confdefs.h <<\_ACEOF +#define SPRINTF_RET char * +_ACEOF +fi +rm -f conftest* - echo "$as_me:$LINENO: checking for unsigned long long" >&5 -echo $ECHO_N "checking for unsigned long long... $ECHO_C" >&6 -if test "${ac_cv_type_unsigned_long_long+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -unsigned long long ull = 1ULL; int i = 63; +#include int main () { -unsigned long long ullmax = (unsigned long long) -1; - return ull << i | ull >> i | ullmax / ull | ullmax % ull; + + time_t foo; + foo = 0; + ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -12953,53 +9754,37 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_unsigned_long_long=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_type_unsigned_long_long=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long_long" >&5 -echo "${ECHO_T}$ac_cv_type_unsigned_long_long" >&6 - if test $ac_cv_type_unsigned_long_long = yes; then cat >>confdefs.h <<\_ACEOF -#define HAVE_UNSIGNED_LONG_LONG 1 +#define TIME_T_IN_SYS_TYPES_H 1 _ACEOF - fi - - - - echo "$as_me:$LINENO: checking for intmax_t" >&5 -echo $ECHO_N "checking for intmax_t... $ECHO_C" >&6 -if test "${ac_cv_type_intmax_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >conftest.$ac_ext <<_ACEOF + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_includes_default +#include int main () { -if ((intmax_t *) 0) - return 0; -if (sizeof (intmax_t)) - return 0; + + wctype_t foo; + foo = 0; + ; return 0; } @@ -13026,71 +9811,31 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_intmax_t=yes + +cat >>confdefs.h <<\_ACEOF +#define HAVE_WCTYPE_T 1 +_ACEOF + else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_intmax_t=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_intmax_t" >&5 -echo "${ECHO_T}$ac_cv_type_intmax_t" >&6 -if test $ac_cv_type_intmax_t = yes; then - : -else - test $ac_cv_type_long_long = yes \ - && ac_type='long long' \ - || ac_type='long' - -cat >>confdefs.h <<_ACEOF -#define intmax_t $ac_type -_ACEOF - -fi - - - - - - if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then - - test $ac_cv_type_unsigned_long_long = yes \ - && ac_type='unsigned long long' \ - || ac_type='unsigned long' - -cat >>confdefs.h <<_ACEOF -#define uintmax_t $ac_type -_ACEOF - - else - -cat >>confdefs.h <<\_ACEOF -#define HAVE_UINTMAX_T 1 -_ACEOF - - fi - -echo "$as_me:$LINENO: checking for ssize_t" >&5 -echo $ECHO_N "checking for ssize_t... $ECHO_C" >&6 -if test "${ac_cv_type_ssize_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_includes_default +#include int main () { -if ((ssize_t *) 0) - return 0; -if (sizeof (ssize_t)) - return 0; + + wint_t foo; + foo = 0; + ; return 0; } @@ -13117,65 +9862,44 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_ssize_t=yes + +cat >>confdefs.h <<\_ACEOF +#define HAVE_WINT_T 1 +_ACEOF + else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_ssize_t=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_ssize_t" >&5 -echo "${ECHO_T}$ac_cv_type_ssize_t" >&6 -if test $ac_cv_type_ssize_t = yes; then - : -else -cat >>confdefs.h <<_ACEOF -#define ssize_t int -_ACEOF -fi -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "int.*sprintf" >/dev/null 2>&1; then -cat >>confdefs.h <<\_ACEOF -#define SPRINTF_RET int -_ACEOF + echo "$as_me:$LINENO: checking for socklen_t" >&5 +echo $ECHO_N "checking for socklen_t... $ECHO_C" >&6 +if test "${ac_cv_type_socklen_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >>confdefs.h <<\_ACEOF -#define SPRINTF_RET char * -_ACEOF - -fi -rm -f conftest* - -cat >conftest.$ac_ext <<_ACEOF + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include +#include + int main () { - - time_t foo; - foo = 0; - +if ((socklen_t *) 0) + return 0; +if (sizeof (socklen_t)) + return 0; ; return 0; } @@ -13202,30 +9926,50 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - -cat >>confdefs.h <<\_ACEOF -#define TIME_T_IN_SYS_TYPES_H 1 -_ACEOF - + ac_cv_type_socklen_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 +ac_cv_type_socklen_t=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -cat >conftest.$ac_ext <<_ACEOF +fi +echo "$as_me:$LINENO: result: $ac_cv_type_socklen_t" >&5 +echo "${ECHO_T}$ac_cv_type_socklen_t" >&6 +if test $ac_cv_type_socklen_t = yes; then + : +else + + echo "$as_me:$LINENO: checking for socklen_t equivalent" >&5 +echo $ECHO_N "checking for socklen_t equivalent... $ECHO_C" >&6 + if test "${rsync_cv_socklen_t_equiv+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + + # Systems have either "struct sockaddr *" or + # "void *" as the second argument to getpeername + rsync_cv_socklen_t_equiv= + for arg2 in "struct sockaddr" void; do + for t in int size_t unsigned long "unsigned long"; do + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include + +#include +#include + + int getpeername (int, $arg2 *, $t *); + int main () { - wctype_t foo; - foo = 0; + $t len; + getpeername(0,0,&len); ; return 0; @@ -13254,9 +9998,8 @@ echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then -cat >>confdefs.h <<\_ACEOF -#define HAVE_WCTYPE_T 1 -_ACEOF + rsync_cv_socklen_t_equiv="$t" + break else echo "$as_me: failed program was:" >&5 @@ -13264,6 +10007,25 @@ fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done + done + + if test "x$rsync_cv_socklen_t_equiv" = x; then + rsync_cv_socklen_t_equiv=int + fi + +fi + + echo "$as_me:$LINENO: result: $rsync_cv_socklen_t_equiv" >&5 +echo "${ECHO_T}$rsync_cv_socklen_t_equiv" >&6 + +cat >>confdefs.h <<_ACEOF +#define socklen_t $rsync_cv_socklen_t_equiv +_ACEOF + +fi + + for ac_func in vprintf @@ -14362,9 +11124,17 @@ + + + + + + for ac_func in fmod getgrent getgroups grantpt iswctype mbrlen \ memcmp memcpy memmove memset setlocale snprintf strchr \ strerror strftime strncasecmp strtod strtoul system tzset \ + isascii btowc \ + iswlower iswupper towlower towupper \ wcrtomb wcscoll wcscoll wctype do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` @@ -14841,12 +11611,7 @@ echo "$as_me:$LINENO: checking for printf %F format" >&5 echo $ECHO_N "checking for printf %F format... $ECHO_C" >&6 if test "$cross_compiling" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define PRINTF_HAS_F_FORMAT 0 -_ACEOF - - + has_f_format=no else cat >conftest.$ac_ext <<_ACEOF @@ -14876,24 +11641,26 @@ ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - -cat >>confdefs.h <<\_ACEOF -#define PRINTF_HAS_F_FORMAT 1 -_ACEOF - - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + has_f_format=yes else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 +has_f_format=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi +if test "$has_f_format" = yes; then + +cat >>confdefs.h <<\_ACEOF +#define PRINTF_HAS_F_FORMAT 1 +_ACEOF + +fi +echo "$as_me:$LINENO: result: $has_f_format" >&5 +echo "${ECHO_T}$has_f_format" >&6 gawk_have_sockets=no @@ -15879,6 +12646,70 @@ fi +echo "$as_me:$LINENO: checking for C/C++ restrict keyword" >&5 +echo $ECHO_N "checking for C/C++ restrict keyword... $ECHO_C" >&6 +if test "${ac_cv_c_restrict+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_cv_c_restrict=no + # Try the official restrict keyword, then gcc's __restrict, and + # the less common variants. + for ac_kw in restrict __restrict __restrict__ _Restrict; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +float * $ac_kw x; +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_c_restrict=$ac_kw; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done + +fi +echo "$as_me:$LINENO: result: $ac_cv_c_restrict" >&5 +echo "${ECHO_T}$ac_cv_c_restrict" >&6 + case $ac_cv_c_restrict in + restrict) ;; + no) +cat >>confdefs.h <<\_ACEOF +#define restrict +_ACEOF + ;; + *) cat >>confdefs.h <<_ACEOF +#define restrict $ac_cv_c_restrict +_ACEOF + ;; + esac + echo "$as_me:$LINENO: checking for inline" >&5 echo $ECHO_N "checking for inline... $ECHO_C" >&6 if test "${ac_cv_c_inline+set}" = set; then @@ -15987,7 +12818,18 @@ ac_config_headers="$ac_config_headers config.h:configh.in" - ac_config_files="$ac_config_files Makefile awklib/Makefile doc/Makefile intl/Makefile po/Makefile.in test/Makefile version.c:version.in" + + + + ac_config_files="$ac_config_files Makefile awklib/Makefile doc/Makefile po/Makefile.in test/Makefile version.c:version.in" + + + + + + + + cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -16372,7 +13214,7 @@ } >&5 cat >&5 <<_CSEOF -This file was extended by GNU Awk $as_me 3.1.4, which was +This file was extended by GNU Awk $as_me 3.1.5, which was generated by GNU Autoconf 2.59. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -16435,7 +13277,7 @@ cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -GNU Awk config.status 3.1.4 +GNU Awk config.status 3.1.5 configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" @@ -16555,7 +13397,6 @@ "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; "awklib/Makefile" ) CONFIG_FILES="$CONFIG_FILES awklib/Makefile" ;; "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - "intl/Makefile" ) CONFIG_FILES="$CONFIG_FILES intl/Makefile" ;; "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "test/Makefile" ) CONFIG_FILES="$CONFIG_FILES test/Makefile" ;; "version.c" ) CONFIG_FILES="$CONFIG_FILES version.c:version.in" ;; @@ -16658,7 +13499,6 @@ s,@AUTOMAKE@,$AUTOMAKE,;t t s,@AUTOHEADER@,$AUTOHEADER,;t t s,@MAKEINFO@,$MAKEINFO,;t t -s,@AMTAR@,$AMTAR,;t t s,@install_sh@,$install_sh,;t t s,@STRIP@,$STRIP,;t t s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t @@ -16667,6 +13507,9 @@ s,@AWK@,$AWK,;t t s,@SET_MAKE@,$SET_MAKE,;t t s,@am__leading_dot@,$am__leading_dot,;t t +s,@AMTAR@,$AMTAR,;t t +s,@am__tar@,$am__tar,;t t +s,@am__untar@,$am__untar,;t t s,@EGREP@,$EGREP,;t t s,@YACC@,$YACC,;t t s,@LN_S@,$LN_S,;t t @@ -16705,23 +13548,9 @@ s,@host_cpu@,$host_cpu,;t t s,@host_vendor@,$host_vendor,;t t s,@host_os@,$host_os,;t t -s,@ALLOCA@,$ALLOCA,;t t -s,@GLIBC21@,$GLIBC21,;t t -s,@HAVE_POSIX_PRINTF@,$HAVE_POSIX_PRINTF,;t t -s,@HAVE_ASPRINTF@,$HAVE_ASPRINTF,;t t -s,@HAVE_SNPRINTF@,$HAVE_SNPRINTF,;t t -s,@HAVE_WPRINTF@,$HAVE_WPRINTF,;t t +s,@INTL_MACOSX_LIBS@,$INTL_MACOSX_LIBS,;t t s,@LIBICONV@,$LIBICONV,;t t s,@LTLIBICONV@,$LTLIBICONV,;t t -s,@INTLBISON@,$INTLBISON,;t t -s,@BUILD_INCLUDED_LIBINTL@,$BUILD_INCLUDED_LIBINTL,;t t -s,@USE_INCLUDED_LIBINTL@,$USE_INCLUDED_LIBINTL,;t t -s,@CATOBJEXT@,$CATOBJEXT,;t t -s,@DATADIRNAME@,$DATADIRNAME,;t t -s,@INSTOBJEXT@,$INSTOBJEXT,;t t -s,@GENCAT@,$GENCAT,;t t -s,@INTLOBJS@,$INTLOBJS,;t t -s,@INTL_LIBTOOL_SUFFIX_PREFIX@,$INTL_LIBTOOL_SUFFIX_PREFIX,;t t s,@INTLLIBS@,$INTLLIBS,;t t s,@LIBINTL@,$LIBINTL,;t t s,@LTLIBINTL@,$LTLIBINTL,;t t @@ -17210,10 +14039,6 @@ /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'`/stamp-h$_am_stamp_count - # Run the commands associated with the file. - case $ac_file in - config.h ) cat $srcdir/custom.h >> config.h ;; - esac done _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF @@ -17355,27 +14180,21 @@ else continue fi - grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # We invoke sed twice because it is the simplest approach to - # changing $(DEPDIR) to its actual value in the expansion. - for file in `sed -n ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue @@ -17441,6 +14260,9 @@ /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac + # Treat a directory as a PO directory if and only if it has a + # POTFILES.in file. This allows packages to have multiple PO + # directories under different names or in different locations. if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then rm -f "$ac_dir/POTFILES" test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" @@ -17454,7 +14276,7 @@ if test -n "$OBSOLETE_ALL_LINGUAS"; then test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" fi - ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` + ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` # Hide the ALL_LINGUAS assigment from automake. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" @@ -17541,6 +14363,12 @@ chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save +sed '$i\ + echo $as_me: fixing Makefile to keep version.c\ + sed "/CONFIG_CLEAN_FILES/s/version.c//" < Makefile > $$.Makefile\ + mv $$.Makefile Makefile + ' < $CONFIG_STATUS > $$.gawk-hack + mv $$.gawk-hack $CONFIG_STATUS # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. @@ -17563,9 +14391,3 @@ $ac_cs_success || { (exit 1); exit 1; } fi - -# This is a significant and rather ugly hack. We want to keep -# version.c from being removed upon `make distclean'. -# We put the `$$' on the front for old systems with 14-char filenames. -sed '/CONFIG_CLEAN_FILES/s/version.c//' < Makefile > $$.Makefile -mv $$.Makefile Makefile diff -urN gawk-3.1.4/configure.ac gawk-3.1.5/configure.ac --- gawk-3.1.4/configure.ac 2004-08-02 12:09:52.000000000 +0300 +++ gawk-3.1.5/configure.ac 2005-07-26 21:43:51.000000000 +0300 @@ -1,7 +1,7 @@ dnl dnl configure.ac --- autoconf input file for gawk dnl -dnl Copyright (C) 1995-2004 the Free Software Foundation, Inc. +dnl Copyright (C) 1995-2005 the Free Software Foundation, Inc. dnl dnl This file is part of GAWK, the GNU implementation of the dnl AWK Programming Language. @@ -18,12 +18,12 @@ dnl dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA dnl dnl Process this file with autoconf to produce a configure script. -AC_INIT([GNU Awk], 3.1.4, bug-gawk@gnu.org, gawk) +AC_INIT([GNU Awk], 3.1.5, bug-gawk@gnu.org, gawk) # This is a hack. Different versions of install on different systems # are just too different. Chuck it and use install-sh. @@ -138,8 +138,8 @@ esac dnl initialize GNU gettext -AM_GNU_GETTEXT([no-libtool], [need-ngettext]) -AM_GNU_GETTEXT_VERSION(0.14.1) +AM_GNU_GETTEXT([external]) +AM_GNU_GETTEXT_VERSION([0.14.4]) dnl checks for header files AC_HEADER_STDC @@ -162,11 +162,13 @@ AC_TYPE_SIGNAL AC_SIZE_T AC_TYPE_GETGROUPS -jm_AC_TYPE_LONG_LONG -jm_AC_TYPE_UNSIGNED_LONG_LONG -jm_AC_TYPE_INTMAX_T -jm_AC_TYPE_UINTMAX_T +gl_AC_TYPE_LONG_LONG +gl_AC_TYPE_UNSIGNED_LONG_LONG +gl_AC_TYPE_INTMAX_T +gl_AC_TYPE_UINTMAX_T AC_CHECK_TYPE(ssize_t, int) +AC_CHECK_SIZEOF(unsigned int) +AC_CHECK_SIZEOF(unsigned long) AC_EGREP_HEADER([int.*sprintf], stdio.h, AC_DEFINE(SPRINTF_RET, int, [return type of sprintf]), AC_DEFINE(SPRINTF_RET, char *)) @@ -183,6 +185,62 @@ foo = 0; ], AC_DEFINE(HAVE_WCTYPE_T, 1, [systems should define this type here])) +dnl check for wint_t in +AC_TRY_COMPILE([#include ],[ + wint_t foo; + foo = 0; +], + AC_DEFINE(HAVE_WINT_T, 1, [systems should define this type here])) + +dnl Borrwed from rsync, thanks to to Jim Meyering. + +dnl Check for socklen_t: historically on BSD it is an int, and in +dnl POSIX 1g it is a type of its own, but some platforms use different +dnl types for the argument to getsockopt, getpeername, etc. So we +dnl have to test to find something that will work. + +dnl This is no good, because passing the wrong pointer on C compilers is +dnl likely to only generate a warning, not an error. + +AC_DEFUN([TYPE_SOCKLEN_T], +[ + AC_CHECK_TYPE([socklen_t], ,[ + AC_MSG_CHECKING([for socklen_t equivalent]) + AC_CACHE_VAL([rsync_cv_socklen_t_equiv], + [ + # Systems have either "struct sockaddr *" or + # "void *" as the second argument to getpeername + rsync_cv_socklen_t_equiv= + for arg2 in "struct sockaddr" void; do + for t in int size_t unsigned long "unsigned long"; do + AC_TRY_COMPILE([ +#include +#include + + int getpeername (int, $arg2 *, $t *); + ],[ + $t len; + getpeername(0,0,&len); + ],[ + rsync_cv_socklen_t_equiv="$t" + break + ]) + done + done + + if test "x$rsync_cv_socklen_t_equiv" = x; then +dnl Some systems get this. Default to int. -- ADR +dnl AC_MSG_ERROR([Cannot find a type to use in place of socklen_t]) + rsync_cv_socklen_t_equiv=int + fi + ]) + AC_MSG_RESULT($rsync_cv_socklen_t_equiv) + AC_DEFINE_UNQUOTED(socklen_t, $rsync_cv_socklen_t_equiv, + [type to use in place of socklen_t if not defined])], + [#include +#include ]) +]) +TYPE_SOCKLEN_T dnl checks for functions AC_FUNC_VPRINTF @@ -197,8 +255,10 @@ AC_CHECK_FUNCS(fmod getgrent getgroups grantpt iswctype mbrlen \ memcmp memcpy memmove memset setlocale snprintf strchr \ strerror strftime strncasecmp strtod strtoul system tzset \ + isascii btowc \ + iswlower iswupper towlower towupper \ wcrtomb wcscoll wcscoll wctype) -dnl this check for both mbrtowc and the mbstate_t type, which is good +dnl this check is for both mbrtowc and the mbstate_t type, which is good AC_FUNC_MBRTOWC dnl check for dynamic linking @@ -249,14 +309,14 @@ return 1; } ], -dnl action if true: - AC_DEFINE(PRINTF_HAS_F_FORMAT, 1, [Define to 1 if *printf supports %F format]) - AC_MSG_RESULT([yes]), -dnl action if false: - AC_MSG_RESULT([no]), -dnl action if cross-compiling, assume the worst: - AC_DEFINE(PRINTF_HAS_F_FORMAT, 0, [Define to 1 if *printf supports %F format]) + has_f_format=yes, + has_f_format=no, + has_f_format=no dnl Cross-compiling, assuming the worst. ) +if test "$has_f_format" = yes; then + AC_DEFINE(PRINTF_HAS_F_FORMAT, 1, [Define to 1 if *printf supports %F format]) +fi +AC_MSG_RESULT($has_f_format) dnl check for sockets GAWK_AC_LIB_SOCKETS @@ -270,21 +330,41 @@ dnl checks for compiler characteristics AC_C_CHAR_UNSIGNED AC_C_CONST +AC_C_RESTRICT AC_C_INLINE AC_C_STRINGIZE -AC_CONFIG_HEADERS([config.h:configh.in], [cat $srcdir/custom.h >> config.h]) -AC_CONFIG_FILES(Makefile \ - awklib/Makefile \ - doc/Makefile \ - intl/Makefile \ - po/Makefile.in \ - test/Makefile \ +AC_CONFIG_HEADERS([config.h:configh.in]) +AH_BOTTOM([#include "custom.h"]) + +AC_CONFIG_FILES(Makefile + awklib/Makefile + doc/Makefile + po/Makefile.in + test/Makefile [version.c:version.in]) -AC_OUTPUT -# This is a significant and rather ugly hack. We want to keep -# version.c from being removed upon `make distclean'. -# We put the `$$' on the front for old systems with 14-char filenames. -sed '/CONFIG_CLEAN_FILES/s/version.c//' < Makefile > $$.Makefile -mv $$.Makefile Makefile +dnl This is a significant and rather ugly hack. We want to keep +dnl version.c from being removed upon `make distclean'. +dnl We put the `$$' on the front for old systems with 14-char filenames. + +dnl At this point, `configure' has finished creating `config.status' which +dnl actually does all the checking and configuring. `config.status' is run +dnl by the AC_OUTPUT macro below. This step comes in between the two: it +dnl adds code to `config.status'. Doing it there ensures that this step +dnl happens *every* time `config.status' is run, such as when `make' decides +dnl to update something. Fun, fun, fun. + +dnl Be careful of multiple levels of shell quoting! + +dnl The trailing newline in the sed command is needed for Mac OS X. Sigh. + +AC_CONFIG_COMMANDS_POST([sed '$i\ + echo $as_me: fixing Makefile to keep version.c\ + sed "/CONFIG_CLEAN_FILES/s/version.c//" < Makefile > $$.Makefile\ + mv $$.Makefile Makefile + ' < $CONFIG_STATUS > $$.gawk-hack + mv $$.gawk-hack $CONFIG_STATUS]) + + +AC_OUTPUT diff -urN gawk-3.1.4/custom.h gawk-3.1.5/custom.h --- gawk-3.1.4/custom.h 2004-07-26 17:11:31.000000000 +0300 +++ gawk-3.1.5/custom.h 2005-05-11 18:28:14.000000000 +0300 @@ -28,7 +28,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* for MIPS RiscOS, from Nelson H. F. Beebe, beebe@math.utah.edu */ diff -urN gawk-3.1.4/depcomp gawk-3.1.5/depcomp --- gawk-3.1.4/depcomp 2004-06-21 16:38:36.000000000 +0300 +++ gawk-3.1.5/depcomp 2005-05-11 18:28:14.000000000 +0300 @@ -1,9 +1,9 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2004-04-25.13 +scriptversion=2005-02-09.22 -# Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -17,8 +17,8 @@ # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -43,17 +43,18 @@ depmode Dependency tracking mode. source Source file read by `PROGRAMS ARGS'. object Object file output by `PROGRAMS ARGS'. + DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputing dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF - exit 0 + exit $? ;; -v | --v*) echo "depcomp $scriptversion" - exit 0 + exit $? ;; esac @@ -61,18 +62,10 @@ echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi -# `libtool' can also be set to `yes' or `no'. - -if test -z "$depfile"; then - base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'` - dir=`echo "$object" | sed 's,/.*$,/,'` - if test "$dir" = "$object"; then - dir= - fi - # FIXME: should be _deps on DOS. - depfile="$dir.deps/$base" -fi +# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. +depfile=${depfile-`echo "$object" | + sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" @@ -294,33 +287,43 @@ base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then - # Dependencies are output in .lo.d with libtool 1.4. - # They are output in .o.d with libtool 1.5. - tmpdepfile1="$dir.libs/$base.lo.d" - tmpdepfile2="$dir.libs/$base.o.d" - tmpdepfile3="$dir.libs/$base.d" + # With Tru64 cc, shared objects can also be used to make a + # static library. This mecanism is used in libtool 1.4 series to + # handle both shared and static libraries in a single compilation. + # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. + # + # With libtool 1.5 this exception was removed, and libtool now + # generates 2 separate objects for the 2 libraries. These two + # compilations output dependencies in in $dir.libs/$base.o.d and + # in $dir$base.o.d. We have to check for both files, because + # one of the two compilations can be disabled. We should prefer + # $dir$base.o.d over $dir.libs/$base.o.d because the latter is + # automatically cleaned when .libs/ is deleted, while ignoring + # the former would cause a distcleancheck panic. + tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 + tmpdepfile2=$dir$base.o.d # libtool 1.5 + tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 + tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else - tmpdepfile1="$dir$base.o.d" - tmpdepfile2="$dir$base.d" - tmpdepfile3="$dir$base.d" + tmpdepfile1=$dir$base.o.d + tmpdepfile2=$dir$base.d + tmpdepfile3=$dir$base.d + tmpdepfile4=$dir$base.d "$@" -MD fi stat=$? if test $stat -eq 0; then : else - rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" + rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" exit $stat fi - if test -f "$tmpdepfile1"; then - tmpdepfile="$tmpdepfile1" - elif test -f "$tmpdepfile2"; then - tmpdepfile="$tmpdepfile2" - else - tmpdepfile="$tmpdepfile3" - fi + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" + do + test -f "$tmpdepfile" && break + done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" # That's a tab and a space in the []. diff -urN gawk-3.1.4/dfa.c gawk-3.1.5/dfa.c --- gawk-3.1.4/dfa.c 2004-07-26 17:11:41.000000000 +0300 +++ gawk-3.1.5/dfa.c 2005-07-26 21:07:43.000000000 +0300 @@ -1,5 +1,5 @@ /* dfa.c - deterministic extended regexp routines for GNU - Copyright 1988, 1998, 2000, 2002, 2004 Free Software Foundation, Inc. + Copyright 1988, 1998, 2000, 2002, 2004, 2005 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* Written June, 1988 by Mike Haertel Modified July, 1988 by Arthur David Olson to assist BMG speedups */ @@ -48,13 +48,6 @@ # include #endif -#include "mbsupport.h" /* defined MBS_SUPPORT if appropriate */ - -#ifdef MBS_SUPPORT -# include -# include -#endif - #ifndef DEBUG /* use the same approach as regex.c */ #undef assert @@ -101,26 +94,22 @@ host does not conform to Posix. */ #define ISASCIIDIGIT(c) ((unsigned) (c) - '0' <= 9) -/* Don't use gettext if ENABLE_NLS is not defined */ -/* If we (don't) have I18N. */ -/* glibc defines _ */ -#ifdef ENABLE_NLS -# ifndef _ -# ifdef HAVE_LIBINTL_H -# include -# ifndef _ -# define _(Str) gettext (Str) -# endif -# else -# define _(Str) (Str) -# endif -# endif -#else -# define _(Str) (Str) +/* gettext.h ensures that we don't use gettext if ENABLE_NLS is not defined */ +#include "gettext.h" +#define _(str) gettext (str) + +#ifndef NO_MBSUPPORT +#include "mbsupport.h" /* defines MBS_SUPPORT if appropriate */ +#endif +#ifdef MBS_SUPPORT +/* We can handle multibyte strings. */ +# include +# include #endif #include "regex.h" #include "dfa.h" +#include "hard-locale.h" /* HPUX, define those as macros in sys/param.h */ #ifdef setbit @@ -172,7 +161,6 @@ static char **comsubs PARAMS ((char *left, char *right)); static char **addlists PARAMS ((char **old, char **new)); static char **inboth PARAMS ((char **left, char **right)); -static int hard_locale PARAMS ((int category)); static ptr_t xcalloc (size_t n, size_t s) @@ -383,7 +371,7 @@ static int cur_mb_index; /* Byte index of the current scanning multibyte character. - singlebyte character : cur_mb_index = 0 + single byte character : cur_mb_index = 0 multibyte character 1st byte : cur_mb_index = 1 2nd byte : cur_mb_index = 2 @@ -394,7 +382,7 @@ byte of corresponding multibyte character in the input string. A element's value is 0 if corresponding character is a - singlebyte chracter. + single byte chracter. e.g. input : 'a', , , mblen_buf : 0, 3, 2, 1 */ @@ -405,9 +393,8 @@ inputstring[i] is a single-byte char, or 1st byte of a multibyte char. And inputwcs[i] is the codepoint. */ -static unsigned char const *buf_begin;/* refference to begin in dfaexec(). */ -static unsigned char const *buf_end; /* refference to end in dfaexec(). */ -static unsigned long buf_offset; /* Go fast. */ +static unsigned char const *buf_begin; /* reference to begin in dfaexec(). */ +static unsigned char const *buf_end; /* reference to end in dfaexec(). */ #endif /* MBS_SUPPORT */ #ifdef MBS_SUPPORT @@ -433,10 +420,10 @@ cur_mb_len was already set by mbrlen(). */ cur_mb_index = 1; else if (cur_mb_len < 1) - /* Invalid sequence. We treat it as a singlebyte character. + /* Invalid sequence. We treat it as a single byte character. cur_mb_index is aleady 0. */ cur_mb_len = 1; - /* Otherwise, cur_mb_len == 1, it is a singlebyte character. + /* Otherwise, cur_mb_len == 1, it is a single byte character. cur_mb_index is aleady 0. */ } } @@ -529,8 +516,8 @@ work_mbc->nchars = work_mbc->nranges = work_mbc->nch_classes = 0; work_mbc->nequivs = work_mbc->ncoll_elems = 0; - work_mbc->ch_classes = NULL; work_mbc->chars = NULL; + work_mbc->ch_classes = NULL; work_mbc->range_sts = work_mbc->range_ends = NULL; work_mbc->equivs = work_mbc->coll_elems = NULL; @@ -596,6 +583,9 @@ { wctype_t wt; /* Query the character class as wctype_t. */ + if (case_fold && (strcmp(str, "upper") == 0 || strcmp(str, "lower") == 0)) + strcpy(str, "alpha"); + wt = wctype (str); if (ch_classes_al == 0) @@ -634,7 +624,7 @@ work_mbc->coll_elems[work_mbc->ncoll_elems++] = elem; } } - wc = WEOF; + wc = wc1 = WEOF; } else /* We treat '[' as a normal character here. */ @@ -682,6 +672,28 @@ REALLOC_IF_NECESSARY(work_mbc->range_ends, wchar_t, range_ends_al, work_mbc->nranges + 1); work_mbc->range_ends[work_mbc->nranges++] = (wchar_t)wc2; + if (case_fold && (iswlower((wint_t)wc) || iswupper((wint_t)wc)) + && (iswlower((wint_t)wc2) || iswupper((wint_t)wc2))) + { + wint_t altcase; + altcase = wc; + if (iswlower((wint_t)wc)) + altcase = towupper((wint_t)wc); + else + altcase = towlower((wint_t)wc); + REALLOC_IF_NECESSARY(work_mbc->range_sts, wchar_t, + range_sts_al, work_mbc->nranges + 1); + work_mbc->range_sts[work_mbc->nranges] = (wchar_t)altcase; + + altcase = wc2; + if (iswlower((wint_t)wc2)) + altcase = towupper((wint_t)wc2); + else + altcase = towlower((wint_t)wc2); + REALLOC_IF_NECESSARY(work_mbc->range_ends, wchar_t, + range_ends_al, work_mbc->nranges + 1); + work_mbc->range_ends[work_mbc->nranges++] = (wchar_t)altcase; + } } else if (wc != WEOF) /* build normal characters. */ @@ -689,19 +701,12 @@ REALLOC_IF_NECESSARY(work_mbc->chars, wchar_t, chars_al, work_mbc->nchars + 1); work_mbc->chars[work_mbc->nchars++] = (wchar_t)wc; - if (case_fold && (iswlower((wint_t) wc) || iswupper((wint_t) wc))) + if (case_fold && (iswlower(wc) || iswupper(wc))) { - wint_t altcase; - - altcase = wc; /* keeps compiler happy */ - if (iswlower((wint_t) wc)) - altcase = towupper((wint_t) wc); - else if (iswupper((wint_t) wc)) - altcase = towlower((wint_t) wc); - - REALLOC_IF_NECESSARY(work_mbc->chars, wchar_t, chars_al, - work_mbc->nchars + 1); - work_mbc->chars[work_mbc->nchars++] = (wchar_t) altcase; + REALLOC_IF_NECESSARY(work_mbc->chars, wchar_t, chars_al, + work_mbc->nchars + 1); + work_mbc->chars[work_mbc->nchars++] = + (wchar_t) (iswlower(wc) ? towupper(wc) : towlower(wc)); } } } @@ -1063,14 +1068,14 @@ case '[': if (backslash) goto normal_char; - laststart = 0; + laststart = 0; #ifdef MBS_SUPPORT if (MB_CUR_MAX > 1) { /* In multibyte environment a bracket expression may contain multibyte characters, which must be treated as characters (not bytes). So we parse it by parse_bracket_exp_mb(). */ - parse_bracket_exp_mb(); + parse_bracket_exp_mb(); return lasttok = MBCSET; } #endif @@ -1129,17 +1134,15 @@ setbit_case_fold (c, ccl); } else { /* POSIX locales are painful - leave the decision to libc */ - /* char expr[6] = { '[', c, '-', c2, ']', '\0' }; */ regex_t re; - char expr[6]; + char expr[6]; /* = { '[', c, '-', c2, ']', '\0' }; */ expr[0] = '['; expr[1] = c; expr[2] = '-'; expr[3] = c2; expr[4] = ']'; expr[5] = '\0'; if (regcomp (&re, expr, case_fold ? REG_ICASE : 0) == REG_NOERROR) { for (c = 0; c < NOTCHAR; ++c) { - /* char buf[2] = { c, '\0' }; */ regmatch_t mat; - char buf[2]; + char buf[2]; /* = { c, '\0' }; */ buf[0] = c; buf[1] = '\0'; if (regexec (&re, buf, 1, &mat, 0) == REG_NOERROR @@ -1176,7 +1179,7 @@ setbit_case_fold (c, ccl); return lasttok = CSET + charclass_index(ccl); } - return c; + return lasttok = c; } } @@ -1207,16 +1210,16 @@ dfa->tindex); /* Set dfa->multibyte_prop. See struct dfa in dfa.h. */ if (t == MBCSET) - dfa->multibyte_prop[dfa->tindex] = ((dfa->nmbcsets - 1) << 2) + 3; + dfa->multibyte_prop[dfa->tindex] = ((dfa->nmbcsets - 1) << 2) + 3; else if (t < NOTCHAR) dfa->multibyte_prop[dfa->tindex] = (cur_mb_len == 1)? 3 /* single-byte char */ : (((cur_mb_index == 1)? 1 : 0) /* 1st-byte of multibyte char */ + ((cur_mb_index == cur_mb_len)? 2 : 0)); /* last-byte */ else - /* It may be unnecessary, but it is safer to treat other + /* It may be unnecessary, but it is safer to treat other symbols as single byte characters. */ - dfa->multibyte_prop[dfa->tindex] = 3; + dfa->multibyte_prop[dfa->tindex] = 3; } #endif @@ -1309,7 +1312,7 @@ addtok(tok); addtok(CAT); tok = lex(); - } + } } #endif /* MBS_SUPPORT */ } @@ -1446,7 +1449,7 @@ lasttok = END; laststart = 1; parens = 0; -#if ENABLE_NLS +#ifdef LC_COLLATE hard_LC_COLLATE = hard_locale (LC_COLLATE); #endif #ifdef MBS_SUPPORT @@ -2036,7 +2039,7 @@ static int initialized; /* Flag for static initialization. */ #ifdef MBS_SUPPORT int next_isnt_1st_byte = 0; /* Flag if we can't add state0. */ -#endif +#endif int i, j, k; /* Initialize the set of letters, if necessary. */ @@ -2218,11 +2221,11 @@ character, or the states of follows must accept the bytes which are not 1st byte of the multibyte character. Then, if a state of follows encounter a byte, it must not be - a 1st byte of a multibyte character nor singlebyte character. + a 1st byte of a multibyte character nor single byte character. We cansel to add state[0].follows to next state, because state[0] must accept 1st-byte - For example, we assume is a certain singlebyte + For example, we assume is a certain single byte character, is a certain multibyte character, and the codepoint of equals the 2nd byte of the codepoint of . @@ -2402,22 +2405,24 @@ #ifdef MBS_SUPPORT /* Multibyte character handling sub-routines for dfaexec. */ -/* Initial state may encounter the byte which is not a singlebyte character +/* Initial state may encounter the byte which is not a single byte character nor 1st byte of a multibyte character. But it is incorrect for initial state to accept such a byte. For example, in sjis encoding the regular expression like "\\" accepts the codepoint 0x5c, but should not accept the 2nd byte of the codepoint - 0x815c. Then Initial state must skip the bytes which are not a singlebyte + 0x815c. Then Initial state must skip the bytes which are not a single byte character nor 1st byte of a multibyte character. */ #define SKIP_REMAINS_MB_IF_INITIAL_STATE(s, p) \ if (s == 0) \ { \ - while (inputwcs[p - buf_begin + buf_offset] == 0 \ - && mblen_buf[p - buf_begin + buf_offset] > 0 \ - && (unsigned char const *)p < buf_end) \ + while (inputwcs[p - buf_begin] == 0 \ + && mblen_buf[p - buf_begin] > 0 \ + && (unsigned char const *)p < buf_end) \ ++p; \ if ((char *)p >= end) \ - { \ + { \ + free(mblen_buf); \ + free(inputwcs); \ return NULL; \ } \ } @@ -2511,8 +2516,8 @@ wchar_t wc; int mbclen; - wc = inputwcs[index + buf_offset]; - mbclen = (mblen_buf[index + buf_offset] == 0)? 1 : mblen_buf[index + buf_offset]; + wc = inputwcs[index]; + mbclen = (mblen_buf[index] == 0)? 1 : mblen_buf[index]; /* Check context. */ if (wc == (wchar_t)eolbyte) @@ -2554,14 +2559,14 @@ char buffer[128]; wchar_t wcbuf[6]; - /* Pointer to the structure to which we are currently reffering. */ + /* Pointer to the structure to which we are currently refering. */ struct mb_char_classes *work_mbc; int newline = 0; int letter = 0; - wchar_t wc; /* Current reffering character. */ + wchar_t wc; /* Current refering character. */ - wc = inputwcs[index + buf_offset]; + wc = inputwcs[index]; /* Check context. */ if (wc == (wchar_t)eolbyte) @@ -2582,10 +2587,10 @@ newline, d->states[s].letter, letter)) return 0; - /* Assign the current reffering operator to work_mbc. */ + /* Assign the current refering operator to work_mbc. */ work_mbc = &(d->mbcsets[(d->multibyte_prop[pos.index]) >> 2]); match = !work_mbc->invert; - match_len = (mblen_buf[index + buf_offset] == 0)? 1 : mblen_buf[index + buf_offset]; + match_len = (mblen_buf[index] == 0)? 1 : mblen_buf[index]; /* match with a character class? */ for (i = 0; inch_classes; i++) @@ -2700,8 +2705,8 @@ /* Calculate the length of the (single/multi byte) character to which p points. */ - *mbclen = (mblen_buf[*pp - buf_begin + buf_offset] == 0)? 1 - : mblen_buf[*pp - buf_begin + buf_offset]; + *mbclen = (mblen_buf[*pp - buf_begin] == 0)? 1 + : mblen_buf[*pp - buf_begin]; /* Calculate the state which can be reached from the state `s' by consuming `*mbclen' single bytes from the buffer. */ @@ -2738,7 +2743,7 @@ /* Transit state from s, then return new state and update the pointer of the buffer. This function is for some operator which can match with a multi- - byte character or a collating element(which may be multi characters). */ + byte character or a collating element (which may be multi characters). */ static int transit_state (struct dfa *d, int s, unsigned char const **pp) { @@ -2771,7 +2776,7 @@ if (nelem == 0 || maxlen == 0) /* This state has no multibyte operator which can match. - We need to check only one singlebyte character. */ + We need to check only one single byte character. */ { status_transit_state rs; rs = transit_state_singlebyte(d, s, *pp, &s1); @@ -2795,7 +2800,7 @@ `maxlen' bytes. */ rs = transit_state_consume_1char(d, s, pp, match_lens, &mbclen, &follows); - wc = inputwcs[*pp - mbclen - buf_begin + buf_offset]; + wc = inputwcs[*pp - mbclen - buf_begin]; s1 = state_index(d, &follows, wc == L'\n', iswalnum(wc)); realloc_trans_if_necessary(d, s1); @@ -2813,7 +2818,7 @@ &follows); } - wc = inputwcs[*pp - mbclen - buf_begin + buf_offset]; + wc = inputwcs[*pp - mbclen - buf_begin]; s1 = state_index(d, &follows, wc == L'\n', iswalnum(wc)); realloc_trans_if_necessary(d, s1); } @@ -2842,7 +2847,7 @@ int newline, int *count, int *backref) { register int s, s1, tmp; /* Current state. */ - register unsigned char const *p; /* Current input character. */ + register unsigned char const *p; /* Current input character. */ register int **trans, *t; /* Copy of d->trans so it can be optimized into a register. */ register unsigned char eol = eolbyte; /* Likewise for eolbyte. */ @@ -2871,21 +2876,12 @@ if (MB_CUR_MAX > 1) { int remain_bytes, i; - buf_begin -= buf_offset; - if (buf_begin <= (unsigned char const *)begin && (unsigned char const *) end <= buf_end) { - buf_offset = (unsigned char const *)begin - buf_begin; - buf_begin = begin; - buf_end = end; - goto go_fast; - } - - buf_offset = 0; buf_begin = begin; buf_end = end; /* initialize mblen_buf, and inputwcs. */ - REALLOC(mblen_buf, unsigned char, end - begin + 2); - REALLOC(inputwcs, wchar_t, end - begin + 2); + MALLOC(mblen_buf, unsigned char, end - begin + 2); + MALLOC(inputwcs, wchar_t, end - begin + 2); memset(&mbs, 0, sizeof(mbstate_t)); remain_bytes = 0; for (i = 0; i < end - begin + 1; i++) @@ -2916,21 +2912,20 @@ mblen_buf[i] = 0; inputwcs[i] = 0; /* sentinel */ } -go_fast: #endif /* MBS_SUPPORT */ for (;;) { #ifdef MBS_SUPPORT if (MB_CUR_MAX > 1) - while ((t = trans[s])) + while ((t = trans[s])) { - if ((char *) p > end) - break; - s1 = s; + if ((char *) p > end) + break; + s1 = s; if (d->states[s].mbps.nelem != 0) { - /* Can match with a multibyte character( and multi character + /* Can match with a multibyte character (and multi character collating element). */ unsigned char const *nextp; @@ -2953,10 +2948,10 @@ #endif /* MBS_SUPPORT */ while ((t = trans[s]) != 0) { /* hand-optimized loop */ s1 = t[*p++]; - if ((t = trans[s1]) == 0) { - tmp = s ; s = s1 ; s1 = tmp ; /* swap */ - break; - } + if ((t = trans[s1]) == 0) { + tmp = s ; s = s1 ; s1 = tmp ; /* swap */ + break; + } s = t[*p++]; } @@ -2966,22 +2961,29 @@ { if (backref) *backref = (d->states[s].backref != 0); - return (char *) p; +#ifdef MBS_SUPPORT + if (MB_CUR_MAX > 1) + { + free(mblen_buf); + free(inputwcs); + } +#endif /* MBS_SUPPORT */ + return (char *) p; } s1 = s; #ifdef MBS_SUPPORT if (MB_CUR_MAX > 1) { - unsigned char const *nextp; - nextp = p; - s = transit_state(d, s, &nextp); + unsigned char const *nextp; + nextp = p; + s = transit_state(d, s, &nextp); p = (unsigned char *)nextp; - /* Trans table might be updated. */ - trans = d->trans; - } - else + /* Trans table might be updated. */ + trans = d->trans; + } + else #endif /* MBS_SUPPORT */ s = d->fails[s][*p++]; continue; @@ -2993,9 +2995,16 @@ /* Check if we've run off the end of the buffer. */ if ((char *) p > end) - { - return NULL; - } + { +#ifdef MBS_SUPPORT + if (MB_CUR_MAX > 1) + { + free(mblen_buf); + free(inputwcs); + } +#endif /* MBS_SUPPORT */ + return NULL; + } if (s >= 0) { @@ -3058,7 +3067,7 @@ lcopy = malloc(len); if (!lcopy) - dfaerror(_("out of memory")); + dfaerror(_("memory exhausted")); /* This is a kludge. */ case_fold = 0; @@ -3358,14 +3367,14 @@ for (lcp = left; *lcp != '\0'; ++lcp) { len = 0; - rcp = strchr(right, *lcp); + rcp = strchr (right, *lcp); while (rcp != NULL) { for (i = 1; lcp[i] != '\0' && lcp[i] == rcp[i]; ++i) continue; if (i > len) len = i; - rcp = strchr(rcp + 1, *lcp); + rcp = strchr (rcp + 1, *lcp); } if (len == 0) continue; @@ -3668,9 +3677,9 @@ done: if (strlen(result)) { - dm = (struct dfamust *) malloc(sizeof (struct dfamust)); + MALLOC(dm, struct dfamust, 1); dm->exact = exact; - dm->must = malloc(strlen(result) + 1); + MALLOC(dm->must, char, strlen(result) + 1); strcpy(dm->must, result); dm->next = dfa->musts; dfa->musts = dm; @@ -3687,59 +3696,3 @@ free((char *) mp); } /* vim:set shiftwidth=2: */ -/* hard-locale.c -- Determine whether a locale is hard. - Copyright 1997, 1998, 1999 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - - -/* Return nonzero if the current CATEGORY locale is hard, i.e. if you - can't get away with assuming traditional C or POSIX behavior. */ -static int -hard_locale (int category) -{ -#if ! (defined ENABLE_NLS && HAVE_SETLOCALE) - return 0; -#else - - int hard = 1; - char const *p = setlocale (category, 0); - - if (p) - { -# if defined __GLIBC__ && __GLIBC__ >= 2 - if (strcmp (p, "C") == 0 || strcmp (p, "POSIX") == 0) - hard = 0; -# else - char *locale = xmalloc (strlen (p) + 1); - strcpy (locale, p); - - /* Temporarily set the locale to the "C" and "POSIX" locales to - find their names, so that we can determine whether one or the - other is the caller's locale. */ - if (((p = setlocale (category, "C")) && strcmp (p, locale) == 0) - || ((p = setlocale (category, "POSIX")) && strcmp (p, locale) == 0)) - hard = 0; - - /* Restore the caller's locale. */ - setlocale (category, locale); - free(locale); -# endif - } - - return hard; - -#endif -} diff -urN gawk-3.1.4/dfa.h gawk-3.1.5/dfa.h --- gawk-3.1.4/dfa.h 2004-07-26 17:11:50.000000000 +0300 +++ gawk-3.1.5/dfa.h 2005-05-11 18:28:14.000000000 +0300 @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* Written June, 1988 by Mike Haertel */ @@ -150,7 +150,7 @@ #ifdef MBS_SUPPORT ANYCHAR, /* ANYCHAR is a terminal symbol that matches - any multibyte(or singlebyte) characters. + any multibyte (or single byte) characters. It is used only if MB_CUR_MAX > 1. */ MBCSET, /* MBCSET is similar to CSET, but for @@ -305,9 +305,9 @@ int *multibyte_prop; /* The value of multibyte_prop[i] is defined by following rule. if tokens[i] < NOTCHAR - bit 1 : tokens[i] is a singlebyte character, or the last-byte of + bit 1 : tokens[i] is a single byte character, or the last-byte of a multibyte character. - bit 0 : tokens[i] is a singlebyte character, or the 1st-byte of + bit 0 : tokens[i] is a single byte character, or the 1st-byte of a multibyte character. if tokens[i] = MBCSET ("the index of mbcsets correspnd to this operator" << 2) + 3 diff -urN gawk-3.1.4/doc/ChangeLog gawk-3.1.5/doc/ChangeLog --- gawk-3.1.4/doc/ChangeLog 2004-08-02 12:18:45.000000000 +0300 +++ gawk-3.1.5/doc/ChangeLog 2005-07-26 21:46:43.000000000 +0300 @@ -1,3 +1,38 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + +Sun Jun 26 16:24:07 2005 Arnold D. Robbins + + * gawk.texi: Document `length(array)'. + * gawk.1: Ditto. + * awkcard.in: Ditto. + +Mon May 23 20:56:32 2005 Arnold D. Robbins + + * gawk.texi: Removed references to `--with-included-gettext'. + +Fri Apr 1 06:25:30 2005 Arnold D. Robbins + + * texinfo.tex: Updated to version 2005-01-30.17. + +Wed Feb 9 11:39:38 2005 Arnold D. Robbins + + * Makefile.am: Per Stepan Kasal, removed html rules, since + Automake does it for us. + +Tue Jan 4 18:47:34 2005 Arnold D. Robbins + + * texinfo.tex: Updated to version 2004-11-25.16. + +Mon Jan 3 14:09:57 2005 Arnold D. Robbins + + * texinfo.tex: Updated to version 2004-10-31.06. + +Wed Sep 22 11:40:06 2004 Arnold D. Robbins + + * gawk.1, gawk.texi, awkcard.in: Documented new --exec option. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/doc/Makefile.am gawk-3.1.5/doc/Makefile.am --- gawk-3.1.4/doc/Makefile.am 2004-07-28 18:21:55.000000000 +0300 +++ gawk-3.1.5/doc/Makefile.am 2005-07-26 21:20:13.000000000 +0300 @@ -1,7 +1,7 @@ # # doc/Makefile.am --- automake input file for gawk # -# Copyright (C) 2000, 2001, 2002, 2004 the Free Software Foundation, Inc. +# Copyright (C) 2000, 2001, 2002, 2004, 2005 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -18,7 +18,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # ## process this file with automake to produce Makefile.in @@ -91,13 +91,5 @@ awkcard.nc: $(CARDFILES) $(TROFF) $(CARDSRC_N) | $(SEDME) | cat $(srcdir)/setter.outline - > awkcard.ps && touch awkcard.nc -html: gawk.html gawkinet.html - -gawk.html: gawk.texi - $(MAKEINFO) --html $< - -gawkinet.html: gawkinet.texi - $(MAKEINFO) --html $< - clean: rm -f *.ps *~ awkcard.nc awkcard.tr *.html diff -urN gawk-3.1.4/doc/Makefile.in gawk-3.1.5/doc/Makefile.in --- gawk-3.1.4/doc/Makefile.in 2004-08-02 12:16:31.000000000 +0300 +++ gawk-3.1.5/doc/Makefile.in 2005-07-26 21:44:02.000000000 +0300 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.8.5 from Makefile.am. +# Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,7 +17,7 @@ # # doc/Makefile.am --- automake input file for gawk # -# Copyright (C) 2000, 2001, 2002, 2004 the Free Software Foundation, Inc. +# Copyright (C) 2000, 2001, 2002, 2004, 2005 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -34,7 +34,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # srcdir = @srcdir@ top_srcdir = @top_srcdir@ @@ -56,27 +56,21 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : +build_triplet = @build@ host_triplet = @host@ subdir = doc DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog \ texinfo.tex ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/intdiv0.m4 $(top_srcdir)/m4/intmax.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes-pri.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/longdouble.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes_h.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/longlong.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf-posix.m4 $(top_srcdir)/m4/progtest.m4 \ - $(top_srcdir)/m4/signed.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/strtod.m4 $(top_srcdir)/m4/uintmax_t.m4 \ - $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/m4/wchar_t.m4 \ - $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xsize.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/socket.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/strtod.m4 \ + $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -103,7 +97,6 @@ MANS = $(man_MANS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ @@ -111,15 +104,12 @@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ -BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@ -CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ -DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ @@ -127,22 +117,13 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ -GENCAT = @GENCAT@ -GLIBC21 = @GLIBC21@ GMSGFMT = @GMSGFMT@ -HAVE_ASPRINTF = @HAVE_ASPRINTF@ -HAVE_POSIX_PRINTF = @HAVE_POSIX_PRINTF@ -HAVE_SNPRINTF = @HAVE_SNPRINTF@ -HAVE_WPRINTF = @HAVE_WPRINTF@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INSTOBJEXT = @INSTOBJEXT@ -INTLBISON = @INTLBISON@ INTLLIBS = @INTLLIBS@ -INTLOBJS = @INTLOBJS@ -INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -171,7 +152,6 @@ SOCKET_LIBS = @SOCKET_LIBS@ STRIP = @STRIP@ U = @U@ -USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ @@ -184,6 +164,8 @@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -277,15 +259,11 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh .texi.info: - restore=: && \ - backupdir="$(am__leading_dot)am$$$$" && \ + restore=: && backupdir="$(am__leading_dot)am$$$$" && \ am__cwd=`pwd` && cd $(srcdir) && \ rm -rf $$backupdir && mkdir $$backupdir && \ for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \ - if test -f $$f; then \ - mv $$f $$backupdir; \ - restore=mv; \ - fi; \ + if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \ done; \ cd "$$am__cwd"; \ if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ @@ -298,8 +276,7 @@ cd $(srcdir) && \ $$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \ fi; \ - rm -rf $$backupdir; \ - exit $$rc + rm -rf $$backupdir; exit $$rc .texi.dvi: TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ @@ -312,21 +289,31 @@ $(TEXI2PDF) $< .texi.html: - $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ - -o $@ $< - if test ! -d $@ && test -d $(@:.html=); then \ - mv $(@:.html=) $@; else :; fi + rm -rf $(@:.html=.htp) + if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ + -o $(@:.html=.htp) $<; \ + then \ + rm -rf $@; \ + if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \ + mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \ + else \ + if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \ + rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \ + exit 1; \ + fi $(srcdir)/gawk.info: gawk.texi gawk.dvi: gawk.texi gawk.pdf: gawk.texi +gawk.html: gawk.texi $(srcdir)/gawkinet.info: gawkinet.texi gawkinet.dvi: gawkinet.texi gawkinet.pdf: gawkinet.texi +gawkinet.html: gawkinet.texi .dvi.ps: $(DVIPS) -o $@ $< uninstall-info-am: - $(PRE_UNINSTALL) + @$(PRE_UNINSTALL) @if (install-info --version && \ install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \ list='$(INFO_DEPS)'; \ @@ -342,7 +329,7 @@ relfile=`echo "$$file" | sed 's|^.*/||'`; \ relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \ (if cd "$(DESTDIR)$(infodir)"; then \ - echo " rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9])"; \ + echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \ rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \ else :; fi); \ done @@ -485,7 +472,7 @@ clean-generic: distclean-generic: - -rm -f $(CONFIG_CLEAN_FILES) + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -500,6 +487,8 @@ dvi-am: $(DVIS) +html: html-am + html-am: $(HTMLS) info: info-am @@ -574,13 +563,13 @@ .PHONY: all all-am check check-am clean clean-generic dist-info \ distclean distclean-generic distdir dvi dvi-am html html-am \ info info-am install install-am install-data install-data-am \ - install-exec install-exec-am install-info install-info-am \ - install-man install-man1 install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ + install-data-hook install-exec install-exec-am install-info \ + install-info-am install-man install-man1 install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-aminfo maintainer-clean-generic mostlyclean \ mostlyclean-aminfo mostlyclean-generic pdf pdf-am ps ps-am \ - uninstall uninstall-am uninstall-info-am uninstall-man \ - uninstall-man1 + uninstall uninstall-am uninstall-hook uninstall-info-am \ + uninstall-man uninstall-man1 # Link gawk.1 to pgawk.1 @@ -616,14 +605,6 @@ awkcard.nc: $(CARDFILES) $(TROFF) $(CARDSRC_N) | $(SEDME) | cat $(srcdir)/setter.outline - > awkcard.ps && touch awkcard.nc -html: gawk.html gawkinet.html - -gawk.html: gawk.texi - $(MAKEINFO) --html $< - -gawkinet.html: gawkinet.texi - $(MAKEINFO) --html $< - clean: rm -f *.ps *~ awkcard.nc awkcard.tr *.html # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -urN gawk-3.1.4/doc/ad.block gawk-3.1.5/doc/ad.block --- gawk-3.1.4/doc/ad.block 2004-05-31 16:10:11.000000000 +0300 +++ gawk-3.1.5/doc/ad.block 2005-05-11 18:31:55.000000000 +0300 @@ -30,8 +30,8 @@ .ce 7 \*(CBFree Software Foundation, Inc. .ft H -59 Temple Place \(em Suite 330 -Boston, MA 02111-1307 USA +51 Franklin Street, Fifth Floor +Boston, MA 02110-1301 USA Phone: +1-617-542-5942 Fax (including Japan): +1-617-542-2652 E-mail: gnu@gnu.org diff -urN gawk-3.1.4/doc/awkcard.in gawk-3.1.5/doc/awkcard.in --- gawk-3.1.4/doc/awkcard.in 2004-05-31 16:10:16.000000000 +0300 +++ gawk-3.1.5/doc/awkcard.in 2005-06-26 16:40:54.000000000 +0300 @@ -1,6 +1,7 @@ .\" AWK Reference Card --- Arnold Robbins, arnold@skeeve.com .\" -.\" Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. +.\" Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, +.\" 2003, 2004, 2005 Free Software Foundation, Inc. .\" .\" Permission is granted to make and distribute verbatim copies of .\" this reference card provided the copyright notice and this permission @@ -264,13 +265,18 @@ l lw(2.2i). \*(FC\-\^\-dump-variables\*(FR[\*(FC=\*(FIfile\*(FR] %T{ -Print a sorted list of global variables, +print a sorted list of global variables, their types and final values to \*(FIfile\*(FR. If no \*(FIfile\*(FR is provided, \*(FCgawk\*(FR uses \*(FCawkvars.out\*(FR. T} +\*(FC\-\^\-exec \*(FIfile\*(FR%T{ +read program text from \*(FIfile\fP. No other +options are processed. Useful with \*(FC#!\fP. +Also disables command-line variable assignments. +T} \*(FC\-\^\-gen\-po\*(FR%T{ process the program and print a GNU \*(FCgettext\*(FR format \*(FC\&.po\*(FR format file on standard output, @@ -1568,6 +1574,8 @@ .br returns the length of the string \*(FIs\*(FR, or the length of \*(FC$0\fP if \*(FIs\fP is not supplied. +\*(CBWith an array argument, returns the number of elements +in the array.\*(CD .ti -.2i \*(FCmatch(\*(FIs\*(FC, \*(FIr \*(CB\*(FR[\*(FC, \*(FIa\*(FR]\*(CD\*(FC)\*(FR .br @@ -1894,7 +1902,7 @@ .ES .nf \*(CDHost: \*(FCftp.gnu.org\*(FR -File: \*(FC/gnu/gawk/gawk-3.1.4.tar.gz\fP +File: \*(FC/gnu/gawk/gawk-3.1.5.tar.gz\fP .in +.2i .fi GNU \*(AK (\*(GK). There may be a later version. @@ -1921,7 +1929,7 @@ .\" --- Copying Permissions .ES .fi -\*(CDCopyright \(co 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 +\*(CDCopyright \(co 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. .sp .5 Permission is granted to make and distribute verbatim copies of this diff -urN gawk-3.1.4/doc/gawk.1 gawk-3.1.5/doc/gawk.1 --- gawk-3.1.4/doc/gawk.1 2004-07-28 16:36:56.000000000 +0300 +++ gawk-3.1.5/doc/gawk.1 2005-06-26 16:42:14.000000000 +0300 @@ -14,7 +14,7 @@ . if \w'\(rq' .ds rq "\(rq . \} .\} -.TH GAWK 1 "July 28 2004" "Free Software Foundation" "Utility Commands" +.TH GAWK 1 "June 26 2005" "Free Software Foundation" "Utility Commands" .SH NAME gawk \- pattern scanning and processing language .SH SYNOPSIS @@ -248,6 +248,36 @@ and so on.) .TP .PD 0 +.BI "\-W exec " file +.TP +.PD +.BI \-\^\-exec " file" +Similar to +.BR \-f , +however, this is option is the last one processed. +This should be used with +.B #! +scripts, particularly for CGI applications, to avoid +passing in options or source code (!) on the command line +from a URL. +This option disables command-line variable assignments. +.TP +.PD 0 +.B "\-W gen\-po" +.TP +.PD +.B \-\^\-gen\-po +Scan and parse the \*(AK program, and generate a \*(GN +.B \&.po +format file on standard output with entries for all localizable +strings in the program. The program itself is not executed. +See the \*(GN +.I gettext +distribution for more information on +.B \&.po +files. +.TP +.PD 0 .B "\-W help" .TP .PD 0 @@ -291,21 +321,6 @@ .IR awk . .TP .PD 0 -.B "\-W gen\-po" -.TP -.PD -.B \-\^\-gen\-po -Scan and parse the \*(AK program, and generate a \*(GN -.B \&.po -format file on standard output with entries for all localizable -strings in the program. The program itself is not executed. -See the \*(GN -.I gettext -distribution for more information on -.B \&.po -files. -.TP -.PD 0 .B "\-W non\-decimal\-data" .TP .PD @@ -2386,6 +2401,10 @@ if .I s is not supplied. +Starting with version 3.1.5, +as a non-standard extension, with an array argument, +.B length() +returns the number of elements in the array. .TP \fBmatch(\fIs\fB, \fIr \fR[\fB, \fIa\fR]\fB)\fR Returns the position in @@ -3372,7 +3391,7 @@ .SH VERSION INFORMATION This man page documents .IR gawk , -version 3.1.4. +version 3.1.5. .SH BUG REPORTS If you find a bug in .IR gawk , @@ -3416,7 +3435,7 @@ We thank him. .SH COPYING PERMISSIONS Copyright \(co 1989, 1991, 1992, 1993, 1994, 1995, 1996, -1997, 1998, 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. +1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. .PP Permission is granted to make and distribute verbatim copies of this manual page provided the copyright notice and this permission diff -urN gawk-3.1.4/doc/gawk.texi gawk-3.1.5/doc/gawk.texi --- gawk-3.1.4/doc/gawk.texi 2004-06-21 17:09:14.000000000 +0300 +++ gawk-3.1.5/doc/gawk.texi 2005-07-25 22:28:03.000000000 +0300 @@ -20,9 +20,9 @@ @c applies to and all the info about who's publishing this edition @c These apply across the board. -@set UPDATE-MONTH June, 2004 +@set UPDATE-MONTH June, 2005 @set VERSION 3.1 -@set PATCHLEVEL 4 +@set PATCHLEVEL 5 @set FSF @@ -110,7 +110,7 @@ @end iftex @copying -Copyright @copyright{} 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. +Copyright @copyright{} 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. @sp 2 This is Edition @value{EDITION} of @cite{@value{TITLE}: @value{SUBTITLE}}, @@ -187,8 +187,8 @@ @sp 1 Free Software Foundation @* -59 Temple Place --- Suite 330 @* -Boston, MA 02111-1307 USA @* +51 Franklin Street, Fifth Floor @* +Boston, MA 02110-1301 USA @* Phone: +1-617-542-5942 @* Fax: +1-617-542-2652 @* Email: @email{gnu@@gnu.org} @* @@ -2465,7 +2465,7 @@ -rw-r--r-- 1 arnold user 1933 Nov 7 13:05 Makefile -rw-r--r-- 1 arnold user 10809 Nov 7 13:03 awk.h -rw-r--r-- 1 arnold user 983 Apr 13 12:14 awk.tab.h --rw-r--r-- 1 arnold user 31869 Jun 15 12:20 awk.y +-rw-r--r-- 1 arnold user 31869 Jun 15 12:20 awkgram.y -rw-r--r-- 1 arnold user 22414 Nov 7 13:03 awk1.c -rw-r--r-- 1 arnold user 37455 Nov 7 13:03 awk2.c -rw-r--r-- 1 arnold user 27511 Dec 9 13:07 awk3.c @@ -4129,6 +4129,16 @@ @command{gawk} attempts to avoid this problem, but currently, there's no guarantee that this will never happen. +@quotation NOTE +Remember that in @command{awk}, the @samp{^} and @samp{$} anchor +metacharacters match the beginning and end of a @emph{string}, and not +the beginning and end of a @emph{line}. As a result, something like +@samp{RS = "^[[:upper:]]"} can only match at the beginning of a file. +This is because @command{gawk} views the input file as one long string +that happens to contain newline characters in it. +It is thus best to avoid anchor characters in the value of @code{RS}. +@end quotation + @cindex differences in @command{awk} and @command{gawk}, @code{RS}/@code{RT} variables The use of @code{RS} as a regular expression and the @code{RT} variable are @command{gawk} extensions; they are not available in @@ -6320,12 +6330,12 @@ @noindent For more information about locales and internationalization issues, -@strong{FIXME: see xxxx}. +see @ref{Locales}. @quotation NOTE The @samp{'} flag is a nice feature, but its use complicates things: it now becomes difficult to use it in command-line programs. For information -on appropriate quoting tricks, @strong{FIXME: see XXXX}. +on appropriate quoting tricks, see @ref{Quoting}. @end quotation @item @var{width} @@ -7191,7 +7201,7 @@ @code{ERRNO} to a string describing the problem. In @command{gawk}, -when closing a pipe or coprocess, +when closing a pipe or coprocess (input or output), the return value is the exit status of the command.@footnote{ This is a full 16-bit value as returned by the @code{wait} system call. See the system manual pages for information on @@ -10132,11 +10142,13 @@ @cindex @code{case} keyword @cindex @code{default} keyword -@strong{NOTE:} This @value{SUBSECTION} describes an experimental feature +@quotation NOTE +This @value{SUBSECTION} describes an experimental feature added in @command{gawk} 3.1.3. It is @emph{not} enabled by default. To enable it, use the @option{--enable-switch} option to @command{configure} when @command{gawk} is being configured and built. @xref{Additional Configuration Options}, for more information. +@end quotation The @code{switch} statement allows the evaluation of an expression and the execution of statements based on a @code{case} match. Case statements @@ -12429,6 +12441,18 @@ always supply the parentheses. @end quotation +@cindex differences between @command{gawk} and @command{awk} +Beginning with @command{gawk} @value{PVERSION} 3.2, when supplied an +array argument, the @code{length} function returns the number of elements +in the array. This is less useful than it might seem at first, as the +array is not guaranteed to be indexed from one to the number of elements +in it. +If @option{--lint} is provided on the command line +(@pxref{Options}), +@command{gawk} warns that passing an array argument is not portable. +If @option{--posix} is supplied, using an array argument is a fatal error +(@pxref{Arrays}). + @item match(@var{string}, @var{regexp} @r{[}, @var{array}@r{]}) @cindex @code{match} function The @code{match} function searches @var{string} for the @@ -12645,6 +12669,9 @@ you use the @option{--non-decimal-data} option, which isn't recommended. @xref{Nondecimal Data}, for more information.} +Note also that @code{strtonum} uses the current locale's decimal point +for recognizing numbers. + @cindex differences in @command{awk} and @command{gawk}, @code{strtonum} function (@command{gawk}) @code{strtonum} is a @command{gawk} extension; it is not available in compatibility mode (@pxref{Options}). @@ -15516,14 +15543,6 @@ If a translation of @command{gawk}'s messages exists, then @command{gawk} produces usage messages, warnings, and fatal errors in the local language. - -@cindex @code{--with-included-gettext} configuration option -@cindex configuration option, @code{--with-included-gettext} -On systems that do not use @value{PVERSION} 2 (or later) of the GNU C library, you should -configure @command{gawk} with the @option{--with-included-gettext} option -before compiling and installing it. -@xref{Additional Configuration Options}, -for more information. @c ENDOFRANGE inloc @node Advanced Features @@ -16444,6 +16463,29 @@ (This is a particularly easy mistake to make with simple variable names like @code{i}, @code{j}, etc.) +@item -W exec @var{file} +@itemx --exec @var{file} +@cindex @code{--exec} option +@cindex @command{awk} programs, location of +@cindex CGI, @command{awk} scripts for +Similar to @option{-f}, reads @command{awk} program text from @var{file}. +There are two differences. The fist is that this option also terminates option processing; anything +else on the command line is passed on directly to the @command{awk} program. +The second is that command line variable assignments of the form +@samp{@var{var}=@var{value}} are disallowed. + +This option is particularly necessary for World Wide Web CGI applications +that pass arguments through the URL; using this option prevents a malicious +(or other) user from passing in options, assignments, or @command{awk} source code (via +@option{--source}) to the CGI application. This option should be used +with @samp{#!} scripts (@pxref{Executable Scripts}), like so: + +@example +#! /usr/local/bin/gawk --exec + +@var{awk program here @dots{}} +@end example + @item -W gen-po @itemx --gen-po @cindex @code{--gen-po} option @@ -23291,6 +23333,15 @@ POSIX compliance for @code{sub} and @code{gsub} (@pxref{Gory Details}). +@item +The @option{--exec} option, for use in CGI scripts. +(@pxref{Options}). + +@item +The @code{length} function was extended to accept an array argument +and return the number of elements in the array +(@pxref{String Functions}). + @end itemize @c XXX ADD MORE STUFF HERE @@ -23533,8 +23584,8 @@ @display Free Software Foundation -59 Temple Place, Suite 330 -Boston, MA 02111-1307 USA +51 Franklin Street, Fifth Floor +Boston, MA 02110-1301 USA Phone: +1-617-542-5942 Fax (including Japan): +1-617-542-2652 Email: @email{gnu@@gnu.org} @@ -23714,11 +23765,8 @@ for various Unix systems. They are explained in @ref{Unix Installation}. -@item intl/* -@itemx po/* -The @file{intl} directory provides the GNU @code{gettext} library, which implements -@command{gawk}'s internationalization features, while the @file{po} library -contains message translations. +@item po/* +The @file{po} library contains message translations. @item awklib/extract.awk @itemx awklib/Makefile.am @@ -23868,17 +23916,6 @@ in @command{awk} programs (@pxref{Switch Statement}.) -@cindex Linux -@cindex GNU/Linux -@cindex @code{--with-included-gettext} configuration option -@cindex @code{--with-included-gettext} configuration option, configuring @command{gawk} with -@cindex configuration option, @code{--with-included-gettext} -@item --with-included-gettext -Use the version of the @code{gettext} library that comes with @command{gawk}. -This option should be used on systems that do @emph{not} use @value{PVERSION} 2 (or later) -of the GNU C library. -All known modern GNU/Linux systems use Glibc 2. Use this option on any other system. - @cindex @code{--disable-lint} configuration option @cindex configuration option, @code{--disable-lint} @item --disable-lint @@ -23905,10 +23942,12 @@ Disable all message-translation facilities. This is usually not desirable, but it may bring you some slight performance improvement. -You should also use this option if @option{--with-included-gettext} -doesn't work on your system. @end table +As of version 3.1.5, the @option{--with-included-gettext} configuration +option is no longer available, since @command{gawk} expects the +GNU @code{gettext} library to be installed as an external library. + @node Configuration Philosophy @appendixsubsec The Configuration Process @@ -24171,7 +24210,7 @@ $ export CPPFLAGS $ CFLAGS="-O2 -Zomf -Zmt" $ export CFLAGS -$ LDFLAGS="-s -Zcrtdll -Zlinker /exepack:2 -Zlinker /pm:vio -Zstack 0x8000" +$ LDFLAGS="-s -Zcrtdll -Zlinker /exepack:2 -Zlinker /pm:vio -Zstack 0x6000" $ export LDFLAGS $ RANLIB="echo" $ export RANLIB @@ -24186,11 +24225,13 @@ @command{configure} options @option{--infodir=c:/usr/share/info}, @option{--mandir=c:/usr/share/man} and @option{--libexecdir=c:/usr/lib}. +@ignore The internal @code{gettext} library tends to be problematic. It is therefore recommended to use either an external one (@option{--without-included-gettext}) or to disable NLS entirely (@option{--disable-nls}). +@end ignore -If you use GCC 2.95 or newer it is recommended to use also: +If you use GCC 2.95 it is recommended to use also: @example $ LIBS="-lgcc" @@ -24204,14 +24245,19 @@ $ export CPPFLAGS $ CFLAGS="-O2 -Zmt" $ export CFLAGS -$ LDFLAGS="-s -Zstack 0x8000" +$ LDFLAGS="-s -Zstack 0x6000" $ LIBS="-lgcc" $ unset RANLIB -$ ./configure --prefix=c:/usr --without-included-gettext +@c $ ./configure --prefix=c:/usr --without-included-gettext +$ ./configure --prefix=c:/usr $ make @end example @quotation NOTE +Versions later than GCC 2.95, i.e., GCC 3.x using the Innotek libc were not tested. +@end quotation + +@quotation NOTE Even if the compiled @command{gawk.exe} (@code{a.out}) executable contains a DOS header, it does @emph{not} work under DOS. To compile an executable that runs under DOS, @code{"-DPIPES_SIMULATED"} must be added to @env{CPPFLAGS}. @@ -24220,8 +24266,9 @@ After compilation the internal tests can be performed. Enter @samp{make check CMP="diff -a"} at your command prompt. All tests -but the @code{pid} test are expected to work properly. The @code{pid} -test fails because child processes are not started by @code{fork()}. +except for the @code{pid} test are expected to work properly. +The @code{pid} test fails because child processes are not started by +@code{fork()}. @samp{make install} works as expected. @@ -24891,7 +24938,7 @@ Juan Grigera, @email{juan@@biophnet.unlp.edu.ar}. @item OS/2 -The Unix for OS/2 team, @email{gawk-maintainer@@unixos2.org}. +Andreas Buening, @email{andreas.buening@@nexgo.de}. @cindex Davies, Stephen @item Tandem @@ -25453,6 +25500,11 @@ Be aware that you may have to re-do everything, perhaps from scratch, at some future time. +@strong{Caution:} If you have written your own dynamic extensions, +be sure to recompile them for each new @command{gawk} release. +There is no guarantee of binary compatibility between different +releases, no will there ever be such a guarantee. + @menu * Internals:: A brief look at some @command{gawk} internals. * Sample Library:: A example of new functions. @@ -25470,7 +25522,7 @@ spend some time reading the source code before trying to write extensions based on the material presented here. Of particular note are the files @file{awk.h}, @file{builtin.c}, and @file{eval.c}. -Reading @file{awk.y} in order to see how the parse tree is built +Reading @file{awkgram.y} in order to see how the parse tree is built would also be of use. @cindex @code{awk.h} file (internal) @@ -25663,6 +25715,70 @@ the value of @command{gawk}'s @code{ERRNO} variable, based on the current value of the C @code{errno} variable. It is provided as a convenience. + +@cindex @code{ERRNO} variable +@cindex @code{update_ERRNO_saved} internal function +@item void update_ERRNO_saved(int errno_saved) +This function is called from within a C extension function to set +the value of @command{gawk}'s @code{ERRNO} variable, based on the saved +value of the C @code{errno} variable provided as the argument. +It is provided as a convenience. + +@strong{Caution:} This function is new as of @command{gawk} 3.1.5. + +@cindex @code{ENVIRON} variable +@cindex @code{PROCINFO} variable +@cindex @code{register_deferred_variable} internal function +@item void register_deferred_variable(const char *name, NODE *(*load_func)(void)) +This function is called to register a function to be called when a +reference to an undefined variable with the given name is encountered. +The callback function will never be called if the variable exists already, +so, unless the calling code is running at program startup, it should first +check whether a variable of the given name already exists. +The argument function must return a pointer to a NODE containing the +newly created variable. This function is used to implement the builtin +@code{ENVIRON} and @code{PROCINFO} variables, so you can refer to them +for examples. + +@strong{Caution:} This function is new as of @command{gawk} 3.1.5. + +@cindex @code{IOBUF} internal structure +@cindex @code{iop_alloc} internal function +@cindex @code{get_record} input method +@cindex @code{close_func} input method +@cindex XML +@cindex @code{register_open_hook} internal function +@item void register_open_hook(void *(*open_func)(IOBUF *)) +This function is called to register a function to be called whenever +a new data file is opened, leading to the creation of an @code{IOBUF} +structure in @code{iop_alloc}. After creating the new @code{IOBUF}, +@code{iop_alloc} will call (in reverse order of registration, so the last +function registered is called first) each open hook until one returns +non-NULL. If any hook returns a non-NULL value, that value is assigned +to the @code{IOBUF}'s @code{opaque} field (which will presumably point +to a structure containing additional state associated with the input +processing), and no further open hooks are called. + +The function called will most likely want to set the @code{IOBUF} +@code{get_record} method to indicate that future input records should +be retrieved by calling that method instead of using the standard +@command{gawk} input processing. + +And the function will also probably want to set the @code{IOBUF} +@code{close_func} method to be called when the file is closed to clean +up any state associated with the input. + +Finally, hook functions should be prepared to receive an @code{IOBUF} +structure where the @code{fd} field is set to @code{INVALID_HANDLE}, +meaning that @command{gawk} was not able to open the file itself. In +this case, the hook function must be able to successfully open the file +and place a valid file descriptor there. + +Currently, for example, the hook function facility is used to implement +the XML parser shared library extension. For more info, please look in +@file{awk.h} and in @file{io.c}. + +@strong{Caution:} This function is new as of @command{gawk} 3.1.5. @end table An argument that is supposed to be an array needs to be handled with @@ -26235,13 +26351,6 @@ @item Databases It may be possible to map a GDBM/NDBM/SDBM file into an @command{awk} array. -@item Large character sets -It would be nice if @command{gawk} could handle UTF-8 and other -character sets that are larger than eight bits. -(@command{gawk} currently has partial multi-byte support, but it -needs an expert to really think out the multi-byte issues and consult -with the maintainer on the appropriate changes.) - @item More @code{lint} warnings There are more things that could be checked for portability. @end table @@ -27516,7 +27625,7 @@ @display Copyright @copyright{} 1989, 1991 Free Software Foundation, Inc. -59 Temple Place, Suite 330, Boston, MA 02111, USA +51 Franklin Street, Fifth Floor, Boston, MA 02111, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -27867,7 +27976,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, USA. @end smallexample Also add information on how to contact you by electronic and paper mail. @@ -27921,7 +28030,7 @@ @display Copyright @copyright{} 2000,2001,2002 Free Software Foundation, Inc. -59 Temple Place, Suite 330, Boston, MA 02111-1307, USA +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. diff -urN gawk-3.1.4/doc/gawkinet.info gawk-3.1.5/doc/gawkinet.info --- gawk-3.1.4/doc/gawkinet.info 2004-07-28 16:54:51.000000000 +0300 +++ gawk-3.1.5/doc/gawkinet.info 2005-05-11 18:35:08.000000000 +0300 @@ -3741,7 +3741,7 @@ Version 1.2, November 2002 Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -4422,6 +4422,6 @@ Node: PROTBASE154809 Node: Links167844 Node: GNU Free Documentation License171278 -Node: Index193666 +Node: Index193671  End Tag Table diff -urN gawk-3.1.4/doc/gawkinet.texi gawk-3.1.5/doc/gawkinet.texi --- gawk-3.1.4/doc/gawkinet.texi 2004-07-28 16:39:03.000000000 +0300 +++ gawk-3.1.5/doc/gawkinet.texi 2005-05-11 18:32:31.000000000 +0300 @@ -118,8 +118,8 @@ @sp 1 Free Software Foundation @* -59 Temple Place --- Suite 330 @* -Boston, MA 02111-1307 USA @* +51 Franklin Street, Fifth Floor @* +Boston, MA 02110-1301 USA @* Phone: +1-617-542-5942 @* Fax: +1-617-542-2652 @* Email: @email{gnu@@gnu.org} @* @@ -4733,7 +4733,7 @@ @display Copyright @copyright{} 2000,2001,2002 Free Software Foundation, Inc. -59 Temple Place, Suite 330, Boston, MA 02111-1307, USA +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. diff -urN gawk-3.1.4/doc/macros gawk-3.1.5/doc/macros --- gawk-3.1.4/doc/macros 1996-12-13 05:57:19.000000000 +0200 +++ gawk-3.1.5/doc/macros 2005-05-11 18:28:14.000000000 +0300 @@ -14,7 +14,7 @@ .\" .\" You should have received a copy of the GNU General Public License .\" along with this program; if not, write to the Free Software -.\" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +.\" Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA .\" .\" Generic SSC "card" macros .\" based on lots of other macros diff -urN gawk-3.1.4/doc/setter.outline gawk-3.1.5/doc/setter.outline --- gawk-3.1.4/doc/setter.outline 1996-12-13 05:57:20.000000000 +0200 +++ gawk-3.1.5/doc/setter.outline 2005-05-11 18:28:14.000000000 +0300 @@ -15,7 +15,7 @@ % % You should have received a copy of the GNU General Public License % along with this program; if not, write to the Free Software -% Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +% Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA % %! page cut marks and stuff for Pocket References - 10-26-88 - ph %! modified to move the cut marks onto the page diff -urN gawk-3.1.4/doc/texinfo.tex gawk-3.1.5/doc/texinfo.tex --- gawk-3.1.4/doc/texinfo.tex 2004-06-15 12:10:14.000000000 +0300 +++ gawk-3.1.5/doc/texinfo.tex 2005-05-11 18:28:15.000000000 +0300 @@ -3,10 +3,10 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2004-06-14.14} +\def\texinfoversion{2005-01-30.17} % % Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, -% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software +% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software % Foundation, Inc. % % This texinfo.tex file is free software; you can redistribute it and/or @@ -21,8 +21,8 @@ % % You should have received a copy of the GNU General Public License % along with this texinfo.tex file; see the file COPYING. If not, write -% to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -% Boston, MA 02111-1307, USA. +% to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +% Boston, MA 02110-1301, USA. % % As a special exception, when this file is read by TeX when processing % a Texinfo source document, you may use the result without @@ -89,10 +89,11 @@ \let\ptexhat=^ \let\ptexi=\i \let\ptexindent=\indent -\let\ptexnoindent=\noindent \let\ptexinsert=\insert \let\ptexlbrace=\{ \let\ptexless=< +\let\ptexnewwrite\newwrite +\let\ptexnoindent=\noindent \let\ptexplus=+ \let\ptexrbrace=\} \let\ptexslash=\/ @@ -608,7 +609,7 @@ % The \TeX{} logo, as in plain, but resetting the spacing so that a % period following counts as ending a sentence. (Idea found in latex.) % -\edef\TeX{\TeX \spacefactor=3000 } +\edef\TeX{\TeX \spacefactor=1000 } % @LaTeX{} logo. Not quite the same results as the definition in % latex.ltx, since we use a different font for the raised A; it's most @@ -1242,13 +1243,13 @@ % Read toc silently, to get counts of subentries for \pdfoutline. \def\numchapentry##1##2##3##4{% \def\thischapnum{##2}% - \let\thissecnum\empty - \let\thissubsecnum\empty + \def\thissecnum{0}% + \def\thissubsecnum{0}% }% \def\numsecentry##1##2##3##4{% \advancenumber{chap\thischapnum}% \def\thissecnum{##2}% - \let\thissubsecnum\empty + \def\thissubsecnum{0}% }% \def\numsubsecentry##1##2##3##4{% \advancenumber{sec\thissecnum}% @@ -1257,9 +1258,9 @@ \def\numsubsubsecentry##1##2##3##4{% \advancenumber{subsec\thissubsecnum}% }% - \let\thischapnum\empty - \let\thissecnum\empty - \let\thissubsecnum\empty + \def\thischapnum{0}% + \def\thissecnum{0}% + \def\thissubsecnum{0}% % % use \def rather than \let here because we redefine \chapentry et % al. a second time, below. @@ -1406,7 +1407,7 @@ \def\rm{\fam=0 \setfontstyle{rm}} \def\it{\fam=\itfam \setfontstyle{it}} \def\sl{\fam=\slfam \setfontstyle{sl}} -\def\bf{\fam=\bffam \setfontstyle{bf}} +\def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf} \def\tt{\fam=\ttfam \setfontstyle{tt}} % Texinfo sort of supports the sans serif font style, which plain TeX does not. @@ -1468,17 +1469,10 @@ \def\scbshape{csc} % Text fonts (11.2pt, magstep1). -\newcount\mainmagstep -\ifx\bigger\relax - % not really supported. - \mainmagstep=\magstep1 - \setfont\textrm\rmshape{12}{1000} - \setfont\texttt\ttshape{12}{1000} -\else - \mainmagstep=\magstephalf - \setfont\textrm\rmshape{10}{\mainmagstep} - \setfont\texttt\ttshape{10}{\mainmagstep} -\fi +\def\textnominalsize{11pt} +\edef\mainmagstep{\magstephalf} +\setfont\textrm\rmshape{10}{\mainmagstep} +\setfont\texttt\ttshape{10}{\mainmagstep} \setfont\textbf\bfshape{10}{\mainmagstep} \setfont\textit\itshape{10}{\mainmagstep} \setfont\textsl\slshape{10}{\mainmagstep} @@ -1495,6 +1489,7 @@ \def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf} % Fonts for indices, footnotes, small examples (9pt). +\def\smallnominalsize{9pt} \setfont\smallrm\rmshape{9}{1000} \setfont\smalltt\ttshape{9}{1000} \setfont\smallbf\bfshape{10}{900} @@ -1507,6 +1502,7 @@ \font\smallsy=cmsy9 % Fonts for small examples (8pt). +\def\smallernominalsize{8pt} \setfont\smallerrm\rmshape{8}{1000} \setfont\smallertt\ttshape{8}{1000} \setfont\smallerbf\bfshape{10}{800} @@ -1519,6 +1515,7 @@ \font\smallersy=cmsy8 % Fonts for title page (20.4pt): +\def\titlenominalsize{20pt} \setfont\titlerm\rmbshape{12}{\magstep3} \setfont\titleit\itbshape{10}{\magstep4} \setfont\titlesl\slbshape{10}{\magstep4} @@ -1533,6 +1530,7 @@ \def\authortt{\sectt} % Chapter (and unnumbered) fonts (17.28pt). +\def\chapnominalsize{17pt} \setfont\chaprm\rmbshape{12}{\magstep2} \setfont\chapit\itbshape{10}{\magstep3} \setfont\chapsl\slbshape{10}{\magstep3} @@ -1545,6 +1543,7 @@ \font\chapsy=cmsy10 scaled \magstep3 % Section fonts (14.4pt). +\def\secnominalsize{14pt} \setfont\secrm\rmbshape{12}{\magstep1} \setfont\secit\itbshape{10}{\magstep2} \setfont\secsl\slbshape{10}{\magstep2} @@ -1557,6 +1556,7 @@ \font\secsy=cmsy10 scaled \magstep2 % Subsection fonts (13.15pt). +\def\ssecnominalsize{13pt} \setfont\ssecrm\rmbshape{12}{\magstephalf} \setfont\ssecit\itbshape{10}{1315} \setfont\ssecsl\slbshape{10}{1315} @@ -1569,6 +1569,7 @@ \font\ssecsy=cmsy10 scaled 1315 % Reduced fonts for @acro in text (10pt). +\def\reducednominalsize{10pt} \setfont\reducedrm\rmshape{10}{1000} \setfont\reducedtt\ttshape{10}{1000} \setfont\reducedbf\bfshape{10}{1000} @@ -1608,6 +1609,7 @@ \let\tenbf=\textbf \let\tentt=\texttt \let\smallcaps=\textsc \let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy \let\tenttsl=\textttsl + \def\curfontsize{text}% \def\lsize{reduced}\def\lllsize{smaller}% \resetmathfonts \setleading{\textleading}} \def\titlefonts{% @@ -1615,13 +1617,16 @@ \let\tenbf=\titlebf \let\tentt=\titlett \let\smallcaps=\titlesc \let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy \let\tenttsl=\titlettsl + \def\curfontsize{title}% \def\lsize{chap}\def\lllsize{subsec}% \resetmathfonts \setleading{25pt}} \def\titlefont#1{{\titlefonts\rm #1}} \def\chapfonts{% \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc - \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy \let\tenttsl=\chapttsl + \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy + \let\tenttsl=\chapttsl + \def\curfontsize{chap}% \def\lsize{sec}\def\lllsize{text}% \resetmathfonts \setleading{19pt}} \def\secfonts{% @@ -1629,6 +1634,7 @@ \let\tenbf=\secbf \let\tentt=\sectt \let\smallcaps=\secsc \let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy \let\tenttsl=\secttsl + \def\curfontsize{sec}% \def\lsize{subsec}\def\lllsize{reduced}% \resetmathfonts \setleading{16pt}} \def\subsecfonts{% @@ -1636,6 +1642,7 @@ \let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc \let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy \let\tenttsl=\ssecttsl + \def\curfontsize{ssec}% \def\lsize{text}\def\lllsize{small}% \resetmathfonts \setleading{15pt}} \let\subsubsecfonts = \subsecfonts @@ -1644,6 +1651,7 @@ \let\tenbf=\reducedbf \let\tentt=\reducedtt \let\reducedcaps=\reducedsc \let\tensf=\reducedsf \let\teni=\reducedi \let\tensy=\reducedsy \let\tenttsl=\reducedttsl + \def\curfontsize{reduced}% \def\lsize{small}\def\lllsize{smaller}% \resetmathfonts \setleading{10.5pt}} \def\smallfonts{% @@ -1651,6 +1659,7 @@ \let\tenbf=\smallbf \let\tentt=\smalltt \let\smallcaps=\smallsc \let\tensf=\smallsf \let\teni=\smalli \let\tensy=\smallsy \let\tenttsl=\smallttsl + \def\curfontsize{small}% \def\lsize{smaller}\def\lllsize{smaller}% \resetmathfonts \setleading{10.5pt}} \def\smallerfonts{% @@ -1658,6 +1667,7 @@ \let\tenbf=\smallerbf \let\tentt=\smallertt \let\smallcaps=\smallersc \let\tensf=\smallersf \let\teni=\smalleri \let\tensy=\smallersy \let\tenttsl=\smallerttsl + \def\curfontsize{smaller}% \def\lsize{smaller}\def\lllsize{smaller}% \resetmathfonts \setleading{9.5pt}} @@ -1715,13 +1725,18 @@ \def\cite#1{{\sl #1}\futurelet\next\smartitalicx} \let\i=\smartitalic +\let\slanted=\smartslanted \let\var=\smartslanted \let\dfn=\smartslanted \let\emph=\smartitalic +% @b, explicit bold. \def\b#1{{\bf #1}} \let\strong=\b +% @sansserif, explicit sans. +\def\sansserif#1{{\sf #1}} + % We can't just use \exhyphenpenalty, because that only has effect at % the end of a paragraph. Restore normal hyphenation at the end of the % group within which \nohyphenation is presumably called. @@ -1929,6 +1944,10 @@ \def\sc#1{{\smallcaps#1}} % smallcaps font \def\ii#1{{\it #1}} % italic font +% @acronym for "FBI", "NATO", and the like. +% We print this one point size smaller, since it's intended for +% all-uppercase. +% \def\acronym#1{\doacronym #1,,\finish} \def\doacronym#1,#2,#3\finish{% {\selectfonts\lsize #1}% @@ -1938,10 +1957,70 @@ \fi } -% @pounds{} is a sterling sign, which is in the CM italic font. +% @abbr for "Comput. J." and the like. +% No font change, but don't do end-of-sentence spacing. +% +\def\abbr#1{\doabbr #1,,\finish} +\def\doabbr#1,#2,#3\finish{% + {\frenchspacing #1}% + \def\temp{#2}% + \ifx\temp\empty \else + \space ({\unsepspaces \ignorespaces \temp \unskip})% + \fi +} + +% @pounds{} is a sterling sign, which Knuth put in the CM italic font. % \def\pounds{{\it\$}} +% @euro{} comes from a separate font, depending on the current style. +% We use the free feym* fonts from the eurosym package by Henrik +% Theiling, which support regular, slanted, bold and bold slanted (and +% "outlined" (blackboard board, sort of) versions, which we don't need). +% It is available from http://www.ctan.org/tex-archive/fonts/eurosym. +% +% Although only regular is the truly official Euro symbol, we ignore +% that. The Euro is designed to be slightly taller than the regular +% font height. +% +% feymr - regular +% feymo - slanted +% feybr - bold +% feybo - bold slanted +% +% There is no good (free) typewriter version, to my knowledge. +% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide. +% Hmm. +% +% Also doesn't work in math. Do we need to do math with euro symbols? +% Hope not. +% +% +\def\euro{{\eurofont e}} +\def\eurofont{% + % We set the font at each command, rather than predefining it in + % \textfonts and the other font-switching commands, so that + % installations which never need the symbol don't have to have the + % font installed. + % + % There is only one designed size (nominal 10pt), so we always scale + % that to the current nominal size. + % + % By the way, simply using "at 1em" works for cmr10 and the like, but + % does not work for cmbx10 and other extended/shrunken fonts. + % + \def\eurosize{\csname\curfontsize nominalsize\endcsname}% + % + \ifx\curfontstyle\bfstylename + % bold: + \font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize + \else + % regular: + \font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize + \fi + \thiseurofont +} + % @registeredsymbol - R in a circle. The font for the R should really % be smaller yet, but lllsize is the best we can do for now. % Adapted from the plain.tex definition of \copyright. @@ -2265,17 +2344,13 @@ % \parskip glue -- logically it's part of the @item we just started. \nobreak \vskip-\parskip % - % Stop a page break at the \parskip glue coming up. (Unfortunately - % we can't prevent a possible page break at the following - % \baselineskip glue.) However, if what follows is an environment - % such as @example, there will be no \parskip glue; then - % the negative vskip we just would cause the example and the item to - % crash together. So we use this bizarre value of 10001 as a signal - % to \aboveenvbreak to insert \parskip glue after all. - % (Possibly there are other commands that could be followed by - % @example which need the same treatment, but not section titles; or - % maybe section titles are the only special case and they should be - % penalty 10001...) + % Stop a page break at the \parskip glue coming up. However, if + % what follows is an environment such as @example, there will be no + % \parskip glue; then the negative vskip we just inserted would + % cause the example and the item to crash together. So we use this + % bizarre value of 10001 as a signal to \aboveenvbreak to insert + % \parskip glue after all. Section titles are handled this way also. + % \penalty 10001 \endgroup \itemxneedsnegativevskipfalse @@ -2301,15 +2376,26 @@ % @table, @ftable, @vtable. \envdef\table{% \let\itemindex\gobble - \tablex + \tablecheck{table}% } \envdef\ftable{% \def\itemindex ##1{\doind {fn}{\code{##1}}}% - \tablex + \tablecheck{ftable}% } \envdef\vtable{% \def\itemindex ##1{\doind {vr}{\code{##1}}}% - \tablex + \tablecheck{vtable}% +} +\def\tablecheck#1{% + \ifnum \the\catcode`\^^M=\active + \endgroup + \errmessage{This command won't work in this context; perhaps the problem is + that we are \inenvironment\thisenv}% + \def\next{\doignore{#1}}% + \else + \let\next\tablex + \fi + \next } \def\tablex#1{% \def\itemindicate{#1}% @@ -2620,7 +2706,10 @@ \startsavinginserts % % @item within a multitable starts a normal row. - \let\item\crcr + % We use \def instead of \let so that if one of the multitable entries + % contains an @itemize, we don't choke on the \item (seen as \crcr aka + % \endtemplate) expanding \doitemize. + \def\item{\crcr}% % \tolerance=9500 \hbadness=9500 @@ -2705,19 +2794,17 @@ \global\setpercentfalse } -\def\setmultitablespacing{% test to see if user has set \multitablelinespace. -% If so, do nothing. If not, give it an appropriate dimension based on -% current baselineskip. +\def\setmultitablespacing{% + \def\multistrut{\strut}% just use the standard line spacing + % + % Compute \multitablelinespace (if not defined by user) for use in + % \multitableparskip calculation. We used define \multistrut based on + % this, but (ironically) that caused the spacing to be off. + % See bug-texinfo report from Werner Lemberg, 31 Oct 2004 12:52:20 +0100. \ifdim\multitablelinespace=0pt \setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip \global\advance\multitablelinespace by-\ht0 -%% strut to put in table in case some entry doesn't have descenders, -%% to keep lines equally spaced -\let\multistrut = \strut -\else -%% FIXME: what is \box0 supposed to be? -\gdef\multistrut{\vrule height\multitablelinespace depth\dp0 -width0pt\relax} \fi +\fi %% Test to see if parskip is larger than space between lines of %% table. If not, do nothing. %% If so, set to same dimension as multitablelinespace. @@ -2786,14 +2873,14 @@ \doignorecount = 0 % % Swallow text until we reach the matching `@end #1'. - \dodoignore {#1}% + \dodoignore{#1}% } { \catcode`_=11 % We want to use \_STOP_ which cannot appear in texinfo source. \obeylines % % \gdef\dodoignore#1{% - % #1 contains the string `ifinfo'. + % #1 contains the command name as a string, e.g., `ifinfo'. % % Define a command to find the next `@end #1', which must be on a line % by itself. @@ -2947,9 +3034,8 @@ % Index generation facilities % Define \newwrite to be identical to plain tex's \newwrite -% except not \outer, so it can be used within \newindex. -{\catcode`\@=11 -\gdef\newwrite{\alloc@7\write\chardef\sixt@@n}} +% except not \outer, so it can be used within macros and \if's. +\edef\newwrite{\makecsname{ptexnewwrite}} % \newindex {foo} defines an index named foo. % It automatically defines \fooindex such that @@ -3141,6 +3227,7 @@ \definedummyword{enddots}% \definedummyword{equiv}% \definedummyword{error}% + \definedummyword{euro}% \definedummyword{expansion}% \definedummyword{minus}% \definedummyword{pounds}% @@ -3279,6 +3366,7 @@ \def\enddots{...}% \def\equiv{==}% \def\error{error}% + \def\euro{euro}% \def\expansion{==>}% \def\minus{-}% \def\pounds{pounds}% @@ -3408,17 +3496,18 @@ \dosubindwrite % \ifx\lastskipmacro\zeroskipmacro - % if \lastskip was zero, perhaps the last item was a - % penalty, and perhaps it was >=10000, e.g., a \nobreak. - % In that case, we want to re-insert the penalty; since we - % just inserted a non-discardable item, any following glue - % (such as a \parskip) would be a breakpoint. For example: + % If \lastskip was zero, perhaps the last item was a penalty, and + % perhaps it was >=10000, e.g., a \nobreak. In that case, we want + % to re-insert the same penalty (values >10000 are used for various + % signals); since we just inserted a non-discardable item, any + % following glue (such as a \parskip) would be a breakpoint. For example: + % % @deffn deffn-whatever % @vindex index-whatever % Description. % would allow a break between the index-whatever whatsit % and the "Description." paragraph. - \ifnum\count255>9999 \nobreak \fi + \ifnum\count255>9999 \penalty\count255 \fi \else % On the other hand, if we had a nonzero \lastskip, % this make-up glue would be preceded by a non-discardable item @@ -3516,7 +3605,10 @@ \removelastskip % % We like breaks before the index initials, so insert a bonus. - \penalty -300 + \nobreak + \vskip 0pt plus 3\baselineskip + \penalty 0 + \vskip 0pt plus -3\baselineskip % % Typeset the initial. Making this add up to a whole number of % baselineskips increases the chance of the dots lining up from column @@ -3526,10 +3618,9 @@ % No shrink because it confuses \balancecolumns. \vskip 1.67\baselineskip plus .5\baselineskip \leftline{\secbf #1}% - \vskip .33\baselineskip plus .1\baselineskip - % % Do our best not to break after the initial. \nobreak + \vskip .33\baselineskip plus .1\baselineskip }} % \entry typesets a paragraph consisting of the text (#1), dot leaders, and @@ -4198,11 +4289,11 @@ \ifx\temptype\Ynothingkeyword \setbox0 = \hbox{}% \def\toctype{unnchap}% - \def\thischapter{#1}% + \gdef\thischapter{#1}% \else\ifx\temptype\Yomitfromtockeyword \setbox0 = \hbox{}% contents like unnumbered, but no toc entry \def\toctype{omit}% - \xdef\thischapter{}% + \gdef\thischapter{}% \else\ifx\temptype\Yappendixkeyword \setbox0 = \hbox{\putwordAppendix{} #3\enspace}% \def\toctype{app}% @@ -4350,14 +4441,14 @@ % glue accumulate. (Not a breakpoint because it's preceded by a % discardable item.) \vskip-\parskip - % - % This \nobreak is purely so the last item on the list is a \penalty - % of 10000. This is so other code, for instance \parsebodycommon, can - % check for and avoid allowing breakpoints. Otherwise, it would - % insert a valid breakpoint between: + % + % This is purely so the last item on the list is a known \penalty > + % 10000. This is so \startdefun can avoid allowing breakpoints after + % section headings. Otherwise, it would insert a valid breakpoint between: + % % @section sec-whatever % @deffn def-whatever - \nobreak + \penalty 10001 } @@ -4702,7 +4793,8 @@ % start of the next paragraph will insert \parskip. % \def\aboveenvbreak{{% - % =10000 instead of <10000 because of a special case in \itemzzz, q.v. + % =10000 instead of <10000 because of a special case in \itemzzz and + % \sectionheading, q.v. \ifnum \lastpenalty=10000 \else \advance\envskipamount by \parskip \endgraf @@ -5063,8 +5155,7 @@ } % @copying ... @end copying. -% Save the text away for @insertcopying later. Many commands won't be -% allowed in this context, but that's ok. +% Save the text away for @insertcopying later. % % We save the uninterpreted tokens, rather than creating a box. % Saving the text in a box would be much easier, but then all the @@ -5073,62 +5164,14 @@ % file; b) letting users define the frontmatter in as flexible order as % possible is very desirable. % -\def\copying{\begingroup - % Define a command to swallow text until we reach `@end copying'. - % \ is the escape char in this texinfo.tex file, so it is the - % delimiter for the command; @ will be the escape char when we read - % it, but that doesn't matter. - \long\def\docopying##1\end copying{\gdef\copyingtext{##1}\enddocopying}% - % - % We must preserve ^^M's in the input file; see \insertcopying below. - \catcode`\^^M = \active - \docopying -} - -% What we do to finish off the copying text. -% -\def\enddocopying{\endgroup\ignorespaces} - -% @insertcopying. Here we must play games with ^^M's. On the one hand, -% we need them to delimit commands such as `@end quotation', so they -% must be active. On the other hand, we certainly don't want every -% end-of-line to be a \par, as would happen with the normal active -% definition of ^^M. On the third hand, two ^^M's in a row should still -% generate a \par. -% -% Our approach is to make ^^M insert a space and a penalty1 normally; -% then it can also check if \lastpenalty=1. If it does, then manually -% do \par. -% -% This messes up the normal definitions of @c[omment], so we redefine -% it. Similarly for @ignore. (These commands are used in the gcc -% manual for man page generation.) -% -% Seems pretty fragile, most line-oriented commands will presumably -% fail, but for the limited use of getting the copying text (which -% should be quite simple) inserted, we can hope it's ok. -% -{\catcode`\^^M=\active % -\gdef\insertcopying{\begingroup % - \parindent = 0pt % looks wrong on title page - \def^^M{% - \ifnum \lastpenalty=1 % - \par % - \else % - \space \penalty 1 % - \fi % - }% - % - % Fix @c[omment] for catcode 13 ^^M's. - \def\c##1^^M{\ignorespaces}% - \let\comment = \c % - % - % Don't bother jumping through all the hoops that \doignore does, it - % would be very hard since the catcodes are already set. - \long\def\ignore##1\end ignore{\ignorespaces}% - % - \copyingtext % -\endgroup}% +\def\copying{\checkenv{}\begingroup\scanargctxt\docopying} +\def\docopying#1@end copying{\endgroup\def\copyingtext{#1}} +% +\def\insertcopying{% + \begingroup + \parindent = 0pt % paragraph indentation looks wrong on title page + \scanexp\copyingtext + \endgroup } \message{defuns,} @@ -5146,10 +5189,11 @@ % If there are two @def commands in a row, we'll have a \nobreak, % which is there to keep the function description together with its % header. But if there's nothing but headers, we need to allow a - % break somewhere. Check for penalty 10002 (inserted by - % \defargscommonending) instead of 10000, since the sectioning - % commands insert a \penalty10000, and we don't want to allow a break - % between a section heading and a defun. + % break somewhere. Check specifically for penalty 10002, inserted + % by \defargscommonending, instead of 10000, since the sectioning + % commands also insert a nobreak penalty, and we don't want to allow + % a break between a section heading and a defun. + % \ifnum\lastpenalty=10002 \penalty2000 \fi % % Similarly, after a section heading, do not allow a break. @@ -5473,7 +5517,7 @@ \ifx\eTeXversion\undefined \newwrite\macscribble \def\scantokens#1{% - \toks0={#1\endinput}% + \toks0={#1}% \immediate\openout\macscribble=\jobname.tmp \immediate\write\macscribble{\the\toks0}% \immediate\closeout\macscribble @@ -5486,7 +5530,11 @@ \newlinechar`\^^M \let\xeatspaces\eatspaces % Undo catcode changes of \startcontents and \doprintindex - \catcode`\@=0 \catcode`\\=\other \escapechar=`\@ + % When called from @insertcopying or (short)caption, we need active + % backslash to get it printed correctly. Previously, we had + % \catcode`\\=\other instead. We'll see whether a problem appears + % with macro expansion. --kasal, 19aug04 + \catcode`\@=0 \catcode`\\=\active \escapechar=`\@ % ... and \example \spaceisspace % @@ -5498,6 +5546,11 @@ \endgroup } +\def\scanexp#1{% + \edef\temp{\noexpand\scanmacro{#1}}% + \temp +} + \newcount\paramno % Count of parameters \newtoks\macname % Macro name \newif\ifrecursive % Is it recursive? @@ -5505,13 +5558,15 @@ % \do\macro1\do\macro2... % Utility routines. -% This does \let #1 = #2, except with \csnames. +% This does \let #1 = #2, with \csnames; that is, +% \let \csname#1\endcsname = \csname#2\endcsname +% (except of course we have to play expansion games). +% \def\cslet#1#2{% -\expandafter\expandafter -\expandafter\let -\expandafter\expandafter -\csname#1\endcsname -\csname#2\endcsname} + \expandafter\let + \csname#1\expandafter\endcsname + \csname#2\endcsname +} % Trim leading and trailing spaces off a string. % Concepts from aro-bend problem 15 (see CTAN). @@ -5538,30 +5593,36 @@ % done by making ^^M (\endlinechar) catcode 12 when reading the macro % body, and then making it the \newlinechar in \scanmacro. -\def\macrobodyctxt{% - \catcode`\~=\other +\def\scanctxt{% + \catcode`\"=\other + \catcode`\+=\other + \catcode`\<=\other + \catcode`\>=\other + \catcode`\@=\other \catcode`\^=\other \catcode`\_=\other \catcode`\|=\other - \catcode`\<=\other - \catcode`\>=\other - \catcode`\+=\other + \catcode`\~=\other +} + +\def\scanargctxt{% + \scanctxt + \catcode`\\=\other + \catcode`\^^M=\other +} + +\def\macrobodyctxt{% + \scanctxt \catcode`\{=\other \catcode`\}=\other - \catcode`\@=\other \catcode`\^^M=\other - \usembodybackslash} + \usembodybackslash +} \def\macroargctxt{% - \catcode`\~=\other - \catcode`\^=\other - \catcode`\_=\other - \catcode`\|=\other - \catcode`\<=\other - \catcode`\>=\other - \catcode`\+=\other - \catcode`\@=\other - \catcode`\\=\other} + \scanctxt + \catcode`\\=\other +} % \mbodybackslash is the definition of \ in @macro bodies. % It maps \foo\ => \csname macarg.foo\endcsname => #N @@ -6367,11 +6428,14 @@ \endgroup} -% @float FLOATTYPE,LOC ... @end float for displayed figures, tables, etc. -% We don't actually implement floating yet, we just plop the float "here". -% But it seemed the best name for the future. +% @float FLOATTYPE,LABEL,LOC ... @end float for displayed figures, tables, +% etc. We don't actually implement floating yet, we always include the +% float "here". But it seemed the best name for the future. % -\envparseargdef\float{\dofloat #1,,,\finish} +\envparseargdef\float{\eatcommaspace\eatcommaspace\dofloat#1, , ,\finish} + +% There may be a space before second and/or third parameter; delete it. +\def\eatcommaspace#1, {#1,} % #1 is the optional FLOATTYPE, the text label for this float, typically % "Figure", "Table", "Example", etc. Can't contain commas. If omitted, @@ -6392,6 +6456,10 @@ \let\thisshortcaption=\empty % % don't lose footnotes inside @float. + % + % BEWARE: when the floats start float, we have to issue warning whenever an + % insert appears inside a float which could possibly float. --kasal, 26may04 + % \startsavinginserts % % We can't be used inside a paragraph. @@ -6476,7 +6544,7 @@ \fi % % caption text. - \appendtomacro\captionline\thiscaption + \appendtomacro\captionline{\scanexp\thiscaption}% \fi % % If we have anything to print, print it, with space before. @@ -6484,6 +6552,9 @@ \ifx\captionline\empty \else \vskip.5\parskip \captionline + % + % Space below caption. + \vskip\parskip \fi % % If have an xref label, write the list of floats info. Do this @@ -6494,37 +6565,44 @@ % caption if specified, else the full caption if specified, else nothing. {% \atdummies \turnoffactive \otherbackslash - \immediate\write\auxfile{@xrdef{\floatlabel-lof}{% - \floatident - \ifx\thisshortcaption\empty - \ifx\thiscaption\empty \else : \thiscaption \fi - \else - : \thisshortcaption - \fi - }}% + % since we read the caption text in the macro world, where ^^M + % is turned into a normal character, we have to scan it back, so + % we don't write the literal three characters "^^M" into the aux file. + \scanexp{% + \xdef\noexpand\gtemp{% + \ifx\thisshortcaption\empty + \thiscaption + \else + \thisshortcaption + \fi + }% + }% + \immediate\write\auxfile{@xrdef{\floatlabel-lof}{\floatident + \ifx\gtemp\empty \else : \gtemp \fi}}% }% \fi - % - % Space below caption, if we printed anything. - \ifx\printedsomething\empty \else \vskip\parskip \fi \egroup % end of \vtop + % + % place the captured inserts + % + % BEWARE: when the floats start float, we have to issue warning whenever an + % insert appears inside a float which could possibly float. --kasal, 26may04 + % \checkinserts } % Append the tokens #2 to the definition of macro #1, not expanding either. % -\newtoks\appendtomacroAtoks -\newtoks\appendtomacroBtoks \def\appendtomacro#1#2{% - \appendtomacroAtoks = \expandafter{#1}% - \appendtomacroBtoks = {#2}% - \edef#1{\the\appendtomacroAtoks \the\appendtomacroBtoks}% + \expandafter\def\expandafter#1\expandafter{#1#2}% } -% @caption, @shortcaption are easy. +% @caption, @shortcaption % -\long\def\caption#1{\checkenv\float \def\thiscaption{#1}} -\def\shortcaption#1{\checkenv\float \def\thisshortcaption{#1}} +\def\caption{\docaption\thiscaption} +\def\shortcaption{\docaption\thisshortcaption} +\def\docaption{\checkenv\float \bgroup\scanargctxt\defcaption} +\def\defcaption#1#2{\egroup \def#1{#2}} % The parameter is the control sequence identifying the counter we are % going to use. Create it if it doesn't exist and assign it to \floatno. diff -urN gawk-3.1.4/eval.c gawk-3.1.5/eval.c --- gawk-3.1.4/eval.c 2004-07-26 17:11:57.000000000 +0300 +++ gawk-3.1.5/eval.c 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2004 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" @@ -322,6 +322,9 @@ { FUNC, "FUNC" }, { FIELD, "FIELD" }, { INTLSTR, "INTLSTR" }, +#ifdef WSTRCUR + { WSTRCUR, "WSTRCUR" }, +#endif { 0, NULL }, }; @@ -375,7 +378,7 @@ */ static inline void -make_scalar P((NODE *tree)) +make_scalar(NODE *tree) { switch (tree->type) { case Node_var_array: @@ -517,13 +520,13 @@ NODE *t1; Regexp *rp; /* see comments in match_op() code about this. */ - int kludge_need_start = FALSE; + int kludge_need_start = 0; t1 = force_string(switch_value); rp = re_update(case_stmt->lnode); if (avoid_dfa(tree, t1->stptr, t1->stlen)) - kludge_need_start = TRUE; + kludge_need_start = RE_NEED_START; match_found = (research(rp, t1->stptr, 0, t1->stlen, kludge_need_start) >= 0); if (t1 != switch_value) free_temp(t1); @@ -879,6 +882,41 @@ return 1; } +/* + * calc_exp_posint --- calculate x^n for positive integral n, + * using exponentiation by squaring without recursion. + */ + +static AWKNUM +calc_exp_posint(AWKNUM x, long n) +{ + AWKNUM mult = 1; + + while (n > 1) { + if ((n % 2) == 1) + mult *= x; + x *= x; + n /= 2; + } + return mult * x; +} + +/* calc_exp --- calculate x1^x2 */ + +static AWKNUM +calc_exp(AWKNUM x1, AWKNUM x2) +{ + long lx; + + if ((lx = x2) == x2) { /* integer exponent */ + if (lx == 0) + return 1; + return (lx > 0) ? calc_exp_posint(x1, lx) + : 1.0 / calc_exp_posint(x1, -lx); + } + return (AWKNUM) pow((double) x1, (double) x2); +} + /* r_tree_eval --- evaluate a subtree */ NODE * @@ -888,7 +926,6 @@ register NODE **lhs; register int di; AWKNUM x, x1, x2; - long lx; #ifdef _CRAY long lx2; #endif @@ -1138,6 +1175,7 @@ erealloc(l->stptr, char *, nlen, "interpret"); memcpy(l->stptr + l->stlen, r->stptr, r->stlen); l->stlen += r->stlen; + l->stptr[l->stlen] = '\0'; } else { char *nval; size_t nlen = l->stlen + r->stlen + 2; @@ -1230,19 +1268,7 @@ unref(t2); switch (tree->type) { case Node_exp: - if ((lx = x2) == x2 && lx >= 0) { /* integer exponent */ - if (lx == 0) - x = 1; - else if (lx == 1) - x = x1; - else { - /* doing it this way should be more precise */ - for (x = x1; --lx; ) - x *= x1; - } - } else - x = pow((double) x1, (double) x2); - return tmp_number(x); + return tmp_number(calc_exp(x1, x2)); case Node_times: return tmp_number(x1 * x2); @@ -1396,8 +1422,6 @@ { AWKNUM rval, lval; NODE **lhs; - AWKNUM t1, t2; - long ltemp; NODE *tmp; Func_ptr after_assign = NULL; int post = FALSE; @@ -1435,19 +1459,7 @@ break; case Node_assign_exp: - if ((ltemp = rval) == rval) { /* integer exponent */ - if (ltemp == 0) - *lhs = make_number((AWKNUM) 1); - else if (ltemp == 1) - *lhs = make_number(lval); - else { - /* doing it this way should be more precise */ - for (t1 = t2 = lval; --ltemp; ) - t1 *= t2; - *lhs = make_number(t1); - } - } else - *lhs = make_number((AWKNUM) pow((double) lval, (double) rval)); + *lhs = make_number(calc_exp(lval, rval)); break; case Node_assign_times: @@ -1457,7 +1469,10 @@ case Node_assign_quotient: if (rval == (AWKNUM) 0) fatal(_("division by zero attempted in `/='")); + { #ifdef _CRAY + long ltemp; + /* special case for integer division, put in for Cray */ ltemp = rval; if (ltemp == 0) { @@ -1470,6 +1485,7 @@ else #endif /* _CRAY */ *lhs = make_number(lval / rval); + } break; case Node_assign_mod: @@ -1478,9 +1494,13 @@ #ifdef HAVE_FMOD *lhs = make_number(fmod(lval, rval)); #else /* ! HAVE_FMOD */ + { + AWKNUM t1, t2; + (void) modf(lval / rval, &t1); t2 = lval - rval * t1; *lhs = make_number(t2); + } #endif /* ! HAVE_FMOD */ break; @@ -1785,7 +1805,7 @@ } #ifdef FUNC_TRACE - fprintf(stderr, _("function %s called\n"), name->stptr); + fprintf(stderr, "function `%s' called\n", name->stptr); #endif push_args(f->lnode->param_cnt, arg_list, stack_ptr, name->stptr, f->parmlist); @@ -2059,7 +2079,7 @@ register Regexp *rp; int i; int match = TRUE; - int kludge_need_start = FALSE; /* FIXME: --- see below */ + int kludge_need_start = 0; /* FIXME: --- see below */ if (tree->type == Node_nomatch) match = FALSE; @@ -2074,7 +2094,7 @@ * FIXME: * * Any place where research() is called with a last parameter of - * FALSE, we need to use the avoid_dfa test. This appears here and + * zero, we need to use the avoid_dfa test. This appears here and * in the code for Node_K_switch. * * A new or improved dfa that distinguishes beginning/end of @@ -2084,7 +2104,7 @@ * The avoid_dfa() function is in re.c; it is not very smart. */ if (avoid_dfa(tree, t1->stptr, t1->stlen)) - kludge_need_start = TRUE; + kludge_need_start = RE_NEED_START; i = research(rp, t1->stptr, 0, t1->stlen, kludge_need_start); i = (i == -1) ^ (match == TRUE); free_temp(t1); @@ -2159,7 +2179,7 @@ if (BINMODE == 0 && v->stlen != 0) { /* arbitrary string, assume both */ BINMODE = 3; - warning("BINMODE: arbitary string value treated as \"rw\""); + warning("BINMODE: arbitrary string value treated as \"rw\""); } } else BINMODE = (int) force_number(BINMODE_node->var_value); @@ -2207,7 +2227,7 @@ #else static const char float_formats[] = "efgEFG"; #endif -#if ENABLE_NLS && defined(HAVE_LOCALE_H) +#if defined(HAVE_LOCALE_H) static const char flags[] = " +-#'"; #else static const char flags[] = " +-#"; @@ -2369,19 +2389,27 @@ return *lhs_p; } -/* update_ERRNO --- update the value of ERRNO */ +/* update_ERRNO_saved --- update the value of ERRNO based on argument */ void -update_ERRNO() +update_ERRNO_saved(int errcode) { char *cp; - cp = strerror(errno); + cp = strerror(errcode); cp = gettext(cp); unref(ERRNO_node->var_value); ERRNO_node->var_value = make_string(cp, strlen(cp)); } +/* update_ERRNO --- update the value of ERRNO based on errno */ + +void +update_ERRNO() +{ + update_ERRNO_saved(errno); +} + /* comp_func --- array index comparison function for qsort */ static int diff -urN gawk-3.1.4/eval_p.c gawk-3.1.5/eval_p.c --- gawk-3.1.4/eval_p.c 2002-10-28 10:16:13.000000000 +0200 +++ gawk-3.1.5/eval_p.c 2005-05-11 18:28:15.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #define PROFILING 1 diff -urN gawk-3.1.4/ext.c gawk-3.1.5/ext.c --- gawk-3.1.4/ext.c 2004-07-26 17:12:12.000000000 +0300 +++ gawk-3.1.5/ext.c 2005-07-26 21:23:55.000000000 +0300 @@ -7,7 +7,7 @@ */ /* - * Copyright (C) 1995 - 2001, 2003, 2004 the Free Software Foundation, Inc. + * Copyright (C) 1995 - 2001, 2003-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -24,7 +24,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" @@ -198,7 +198,7 @@ if (t == NULL) { if (i >= tree->param_cnt) /* must be fatal */ - fatal(_("function `%s' defined to take no more than `%d' argument(s)"), + fatal(_("function `%s' defined to take no more than %d argument(s)"), tree->param, tree->param_cnt); if (! optional) fatal(_("function `%s': missing argument #%d"), diff -urN gawk-3.1.4/extension/ChangeLog gawk-3.1.5/extension/ChangeLog --- gawk-3.1.4/extension/ChangeLog 2004-08-02 12:18:50.000000000 +0300 +++ gawk-3.1.5/extension/ChangeLog 2005-07-26 21:46:47.000000000 +0300 @@ -1,3 +1,13 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + +Sun Jun 26 09:03:32 2005 Arnold D. Robbins + + * filefuncs.c (do_stat): Check return value from readlink() + for error. Pass in `sizeof(buf) - 1' to leave room for trailing + zero byte. From: Glenn Zazulia . + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/extension/arrayparm.c gawk-3.1.5/extension/arrayparm.c --- gawk-3.1.4/extension/arrayparm.c 2004-06-21 17:05:21.000000000 +0300 +++ gawk-3.1.5/extension/arrayparm.c 2005-05-11 18:28:15.000000000 +0300 @@ -27,7 +27,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" diff -urN gawk-3.1.4/extension/dl.c gawk-3.1.5/extension/dl.c --- gawk-3.1.4/extension/dl.c 2002-04-16 14:48:43.000000000 +0300 +++ gawk-3.1.5/extension/dl.c 2005-05-11 18:28:15.000000000 +0300 @@ -23,7 +23,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" diff -urN gawk-3.1.4/extension/filefuncs.c gawk-3.1.5/extension/filefuncs.c --- gawk-3.1.4/extension/filefuncs.c 2004-06-21 17:05:51.000000000 +0300 +++ gawk-3.1.5/extension/filefuncs.c 2005-07-26 21:07:43.000000000 +0300 @@ -7,7 +7,7 @@ */ /* - * Copyright (C) 2001, 2004 the Free Software Foundation, Inc. + * Copyright (C) 2001, 2004, 2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -24,7 +24,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" @@ -260,14 +260,16 @@ char buf[BUFSIZ*2]; int linksize; - linksize = readlink(file->stptr, buf, sizeof buf); - /* should make this smarter */ - if (linksize == sizeof(buf)) - fatal("size of symbolic link too big"); - buf[linksize] = '\0'; - - aptr = assoc_lookup(array, tmp_string("linkval", 7), FALSE); - *aptr = make_string(buf, linksize); + linksize = readlink(file->stptr, buf, sizeof(buf) - 1); + if (linksize >= 0) { + /* should make this smarter */ + if (linksize >= sizeof(buf) - 1) + fatal("size of symbolic link too big"); + buf[linksize] = '\0'; + + aptr = assoc_lookup(array, tmp_string("linkval", 7), FALSE); + *aptr = make_string(buf, linksize); + } } /* add a type field */ diff -urN gawk-3.1.4/extension/fork.c gawk-3.1.5/extension/fork.c --- gawk-3.1.4/extension/fork.c 2004-06-21 17:06:25.000000000 +0300 +++ gawk-3.1.5/extension/fork.c 2005-05-11 18:28:15.000000000 +0300 @@ -22,7 +22,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" diff -urN gawk-3.1.4/extension/ordchr.c gawk-3.1.5/extension/ordchr.c --- gawk-3.1.4/extension/ordchr.c 2004-06-21 17:06:44.000000000 +0300 +++ gawk-3.1.5/extension/ordchr.c 2005-05-11 18:28:15.000000000 +0300 @@ -25,7 +25,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" diff -urN gawk-3.1.4/extension/readfile.c gawk-3.1.5/extension/readfile.c --- gawk-3.1.4/extension/readfile.c 2004-06-21 17:07:33.000000000 +0300 +++ gawk-3.1.5/extension/readfile.c 2005-05-11 18:28:15.000000000 +0300 @@ -27,7 +27,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" diff -urN gawk-3.1.4/extension/xreadlink.c gawk-3.1.5/extension/xreadlink.c --- gawk-3.1.4/extension/xreadlink.c 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/extension/xreadlink.c 2005-06-26 09:18:21.000000000 +0300 @@ -0,0 +1,93 @@ +/* xreadlink.c -- readlink wrapper to return the link name in malloc'd storage + + Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. + If not, write to the Free Software Foundation, + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +/* Written by Jim Meyering */ + +#if HAVE_CONFIG_H +# include +#endif + +#include "xreadlink.h" + +#include +#include +#include +#include +#include +#if HAVE_UNISTD_H +# include +#endif + +#ifndef SIZE_MAX +# define SIZE_MAX ((size_t) -1) +#endif +#ifndef SSIZE_MAX +# define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2)) +#endif + +#define MAXSIZE (SIZE_MAX < SSIZE_MAX ? SIZE_MAX : SSIZE_MAX) + +#include "xalloc.h" + +/* Call readlink to get the symbolic link value of FILE. + SIZE is a hint as to how long the link is expected to be; + typically it is taken from st_size. It need not be correct. + Return a pointer to that NUL-terminated string in malloc'd storage. + If readlink fails, return NULL (caller may use errno to diagnose). + If malloc fails, or if the link value is longer than SSIZE_MAX :-), + give a diagnostic and exit. */ + +char * +xreadlink (char const *file, size_t size) +{ + /* The initial buffer size for the link value. A power of 2 + detects arithmetic overflow earlier, but is not required. */ + size_t buf_size = size < MAXSIZE ? size + 1 : MAXSIZE; + + while (1) + { + char *buffer = xmalloc (buf_size); + ssize_t r = readlink (file, buffer, buf_size); + size_t link_length = r; + + /* On AIX 5L v5.3 and HP-UX 11i v2 04/09, readlink returns -1 + with errno == ERANGE if the buffer is too small. */ + if (r < 0 && errno != ERANGE) + { + int saved_errno = errno; + free (buffer); + errno = saved_errno; + return NULL; + } + + if (link_length < buf_size) + { + buffer[link_length] = 0; + return buffer; + } + + free (buffer); + if (buf_size <= MAXSIZE / 2) + buf_size *= 2; + else if (buf_size < MAXSIZE) + buf_size = MAXSIZE; + else + xalloc_die (); + } +} diff -urN gawk-3.1.4/extension/xreadlink.h gawk-3.1.5/extension/xreadlink.h --- gawk-3.1.4/extension/xreadlink.h 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/extension/xreadlink.h 2005-06-27 13:44:48.000000000 +0300 @@ -0,0 +1,23 @@ +/* readlink wrapper to return the link name in malloc'd storage + + Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. + If not, write to the Free Software Foundation, + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +/* Written by Jim Meyering */ + +#include +char *xreadlink (char const *, size_t); diff -urN gawk-3.1.4/field.c gawk-3.1.5/field.c --- gawk-3.1.4/field.c 2004-07-28 16:41:17.000000000 +0300 +++ gawk-3.1.5/field.c 2005-05-11 18:28:15.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2004 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,11 +20,22 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" +/* + * In case that the system doesn't have isblank(). + * Don't bother with autoconf ifdef junk, just force it. + * See dfa.c and regex_internal.h and regcomp.c. Bleah. + */ +static int +is_blank(int c) +{ + return c == ' ' || c == '\t'; +} + typedef void (* Setfunc) P((long, char *, long, NODE *)); static long (*parse_field) P((long, char **, int, NODE *, @@ -372,7 +383,7 @@ scan++; field = scan; while (scan < end - && research(rp, scan, 0, (end - scan), TRUE) != -1 + && research(rp, scan, 0, (end - scan), RE_NEED_START) != -1 && nf < up_to) { if (REEND(rp, scan) == RESTART(rp, scan)) { /* null match */ #ifdef MBS_SUPPORT @@ -910,16 +921,38 @@ emalloc(FIELDWIDTHS, int *, fw_alloc * sizeof(int), "set_FIELDWIDTHS"); FIELDWIDTHS[0] = 0; for (i = 1; ; i++) { + unsigned long int tmp; if (i >= fw_alloc) { fw_alloc *= 2; erealloc(FIELDWIDTHS, int *, fw_alloc * sizeof(int), "set_FIELDWIDTHS"); } - FIELDWIDTHS[i] = (int) strtoul(scan, &end, 10); - if (end == scan) - break; - if (FIELDWIDTHS[i] <= 0) - fatal(_("field %d in FIELDWIDTHS, must be > 0"), i); + /* Ensure that there is no leading `-' sign. Otherwise, + strtoul would accept it and return a bogus result. */ + while (is_blank(*scan)) { + ++scan; + } + if (*scan == '-') + fatal(_("invalid FIELDWIDTHS value, near `%s'"), + scan); + + /* Detect an invalid base-10 integer, a valid value that + is followed by something other than a blank or '\0', + or a value that is not in the range [1..INT_MAX]. */ + errno = 0; + tmp = strtoul(scan, &end, 10); + if (errno != 0 + || !(*end == '\0' || is_blank(*end)) + || !(0 < tmp && tmp <= INT_MAX)) + fatal(_("invalid FIELDWIDTHS value, near `%s'"), + scan); + FIELDWIDTHS[i] = tmp; scan = end; + /* Skip past any trailing blanks. */ + while (is_blank(*scan)) { + ++scan; + } + if (*scan == '\0') + break; } FIELDWIDTHS[i] = -1; @@ -951,10 +984,10 @@ */ if (save_fs && FS_node->var_value->stlen == save_fs->stlen - && STREQN(FS_node->var_value->stptr, save_fs->stptr, save_fs->stlen) + && memcmp(FS_node->var_value->stptr, save_fs->stptr, save_fs->stlen) == 0 && save_rs && RS_node->var_value->stlen == save_rs->stlen - && STREQN(RS_node->var_value->stptr, save_rs->stptr, save_rs->stlen)) { + && memcmp(RS_node->var_value->stptr, save_rs->stptr, save_rs->stlen) == 0) { if (FS_regexp != NULL) FS_regexp = (IGNORECASE ? FS_re_no_case : FS_re_yes_case); diff -urN gawk-3.1.4/gawkmisc.c gawk-3.1.5/gawkmisc.c --- gawk-3.1.4/gawkmisc.c 2004-07-28 16:41:24.000000000 +0300 +++ gawk-3.1.5/gawkmisc.c 2005-05-11 18:28:16.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" diff -urN gawk-3.1.4/getopt.c gawk-3.1.5/getopt.c --- gawk-3.1.4/getopt.c 2003-09-13 01:31:19.000000000 +0300 +++ gawk-3.1.5/getopt.c 2005-05-11 18:28:16.000000000 +0300 @@ -2,7 +2,7 @@ NOTE: getopt is now part of the C library, so if you don't know what "Keep this file name-space clean" means, talk to drepper@gnu.org before changing it! - Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002,2003 + Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002,2003,2004 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -18,8 +18,8 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ /* This tells Alpha OSF/1 not to define a getopt prototype in . Ditto for AIX 3.2 and . */ @@ -31,14 +31,6 @@ # include #endif -#if !defined __STDC__ || !__STDC__ -/* This is a separate conditional since some stdc systems - reject `defined (const)'. */ -# ifndef const -# define const -# endif -#endif - #include /* Comment out all this code if we are using the GNU C Library, and are not @@ -69,26 +61,21 @@ # include #endif /* GNU C library. */ +#include + #ifdef VMS # include -# if HAVE_STRING_H - 0 -# include -# endif #endif -#ifndef _ -/* This is for other GNU distributions with internationalized messages. */ -# if (HAVE_LIBINTL_H && ENABLE_NLS) || defined _LIBC -# include -# ifndef _ -# define _(msgid) gettext (msgid) -# endif -# else -# define _(msgid) (msgid) -# endif -# if defined _LIBC && defined USE_IN_LIBIO -# include -# endif +#ifdef _LIBC +# include +#else +# include "gettext.h" +# define _(msgid) gettext (msgid) +#endif + +#if defined _LIBC && defined USE_IN_LIBIO +# include #endif #ifndef attribute_hidden @@ -110,6 +97,7 @@ they can distinguish the relative order of options and other arguments. */ #include "getopt.h" +#include "getopt_int.h" /* For communication from `getopt' to the caller. When `getopt' finds an option that takes an argument, @@ -134,21 +122,6 @@ /* 1003.2 says this must be 1 before any call. */ int optind = 1; -/* Formerly, initialization of getopt depended on optind==0, which - causes problems with re-calling getopt as programs generally don't - know that. */ - -int __getopt_initialized attribute_hidden; - -/* The next char to be scanned in the option-element - in which the last option character we returned was found. - This allows us to pick up the scan where we left off. - - If this is zero, or a null string, it means resume the scan - by advancing to the next ARGV-element. */ - -static char *nextchar; - /* Callers store zero here to inhibit the error message for unrecognized options. */ @@ -160,57 +133,12 @@ int optopt = '?'; -/* Describe how to deal with options that follow non-option ARGV-elements. +/* Keep a global copy of all internal members of getopt_data. */ - If the caller did not specify anything, - the default is REQUIRE_ORDER if the environment variable - POSIXLY_CORRECT is defined, PERMUTE otherwise. - - REQUIRE_ORDER means don't recognize them as options; - stop option processing when the first non-option is seen. - This is what Unix does. - This mode of operation is selected by either setting the environment - variable POSIXLY_CORRECT, or using `+' as the first character - of the list of option characters. - - PERMUTE is the default. We permute the contents of ARGV as we scan, - so that eventually all the non-options are at the end. This allows options - to be given in any order, even with programs that were not written to - expect this. - - RETURN_IN_ORDER is an option available to programs that were written - to expect options and other ARGV-elements in any order and that care about - the ordering of the two. We describe each non-option ARGV-element - as if it were the argument of an option with character code 1. - Using `-' as the first character of the list of option characters - selects this mode of operation. - - The special argument `--' forces an end of option-scanning regardless - of the value of `ordering'. In the case of RETURN_IN_ORDER, only - `--' can cause `getopt' to return -1 with `optind' != ARGC. */ +static struct _getopt_data getopt_data; -static enum -{ - REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER -} ordering; - -/* Value of POSIXLY_CORRECT environment variable. */ -static char *posixly_correct; -#ifdef __GNU_LIBRARY__ -/* We want to avoid inclusion of string.h with non-GNU libraries - because there are many ways it can cause trouble. - On some systems, it contains special magic macros that don't work - in GCC. */ -# include -# define my_index strchr -#else - -# if HAVE_STRING_H -# include -# else -# include -# endif +#ifndef __GNU_LIBRARY__ /* Avoid depending on library functions or files whose names are inconsistent. */ @@ -219,43 +147,8 @@ extern char *getenv (); #endif -static char * -my_index (str, chr) - const char *str; - int chr; -{ - while (*str) - { - if (*str == chr) - return (char *) str; - str++; - } - return 0; -} - -/* If using GCC, we can safely declare strlen this way. - If not using GCC, it is ok not to declare it. */ -#ifdef __GNUC__ -/* Note that Motorola Delta 68k R3V7 comes with GCC but not stddef.h. - That was relevant to code that was here before. */ -# if (!defined __STDC__ || !__STDC__) && !defined strlen -/* gcc with -traditional declares the built-in strlen to return int, - and has done so at least since version 2.4.5. -- rms. */ -extern int strlen (const char *); -# endif /* not __STDC__ */ -#endif /* __GNUC__ */ - #endif /* not __GNU_LIBRARY__ */ -/* Handle permutation of arguments. */ - -/* Describe the part of ARGV that contains non-options that have - been skipped. `first_nonopt' is the index in ARGV of the first of them; - `last_nonopt' is the index after the last of them. */ - -static int first_nonopt; -static int last_nonopt; - #ifdef _LIBC /* Stored original parameters. XXX This is no good solution. We should rather copy the args so @@ -269,14 +162,11 @@ # ifdef USE_NONOPTION_FLAGS /* Defined in getopt_init.c */ extern char *__getopt_nonoption_flags; - -static int nonoption_flags_max_len; -static int nonoption_flags_len; # endif # ifdef USE_NONOPTION_FLAGS # define SWAP_FLAGS(ch1, ch2) \ - if (nonoption_flags_len > 0) \ + if (d->__nonoption_flags_len > 0) \ { \ char __tmp = __getopt_nonoption_flags[ch1]; \ __getopt_nonoption_flags[ch1] = __getopt_nonoption_flags[ch2]; \ @@ -298,17 +188,12 @@ `first_nonopt' and `last_nonopt' are relocated so that they describe the new indices of the non-options in ARGV after they are moved. */ -#if defined __STDC__ && __STDC__ -static void exchange (char **); -#endif - static void -exchange (argv) - char **argv; +exchange (char **argv, struct _getopt_data *d) { - int bottom = first_nonopt; - int middle = last_nonopt; - int top = optind; + int bottom = d->__first_nonopt; + int middle = d->__last_nonopt; + int top = d->optind; char *tem; /* Exchange the shorter segment with the far end of the longer segment. @@ -320,19 +205,19 @@ /* First make sure the handling of the `__getopt_nonoption_flags' string can work normally. Our top argument must be in the range of the string. */ - if (nonoption_flags_len > 0 && top >= nonoption_flags_max_len) + if (d->__nonoption_flags_len > 0 && top >= d->__nonoption_flags_max_len) { /* We must extend the array. The user plays games with us and presents new arguments. */ char *new_str = malloc (top + 1); if (new_str == NULL) - nonoption_flags_len = nonoption_flags_max_len = 0; + d->__nonoption_flags_len = d->__nonoption_flags_max_len = 0; else { memset (__mempcpy (new_str, __getopt_nonoption_flags, - nonoption_flags_max_len), - '\0', top + 1 - nonoption_flags_max_len); - nonoption_flags_max_len = top + 1; + d->__nonoption_flags_max_len), + '\0', top + 1 - d->__nonoption_flags_max_len); + d->__nonoption_flags_max_len = top + 1; __getopt_nonoption_flags = new_str; } } @@ -378,76 +263,71 @@ /* Update records for the slots the non-options now occupy. */ - first_nonopt += (optind - last_nonopt); - last_nonopt = optind; + d->__first_nonopt += (d->optind - d->__last_nonopt); + d->__last_nonopt = d->optind; } /* Initialize the internal data when the first call is made. */ -#if defined __STDC__ && __STDC__ -static const char *_getopt_initialize (int, char *const *, const char *); -#endif static const char * -_getopt_initialize (argc, argv, optstring) - int argc; - char *const *argv; - const char *optstring; +_getopt_initialize (int argc, char *const *argv, const char *optstring, + struct _getopt_data *d) { /* Start processing options with ARGV-element 1 (since ARGV-element 0 is the program name); the sequence of previously skipped non-option ARGV-elements is empty. */ - first_nonopt = last_nonopt = optind; + d->__first_nonopt = d->__last_nonopt = d->optind; - nextchar = NULL; + d->__nextchar = NULL; - posixly_correct = getenv ("POSIXLY_CORRECT"); + d->__posixly_correct = !!getenv ("POSIXLY_CORRECT"); /* Determine how to handle the ordering of options and nonoptions. */ if (optstring[0] == '-') { - ordering = RETURN_IN_ORDER; + d->__ordering = RETURN_IN_ORDER; ++optstring; } else if (optstring[0] == '+') { - ordering = REQUIRE_ORDER; + d->__ordering = REQUIRE_ORDER; ++optstring; } - else if (posixly_correct != NULL) - ordering = REQUIRE_ORDER; + else if (d->__posixly_correct) + d->__ordering = REQUIRE_ORDER; else - ordering = PERMUTE; + d->__ordering = PERMUTE; #if defined _LIBC && defined USE_NONOPTION_FLAGS - if (posixly_correct == NULL + if (!d->__posixly_correct && argc == __libc_argc && argv == __libc_argv) { - if (nonoption_flags_max_len == 0) + if (d->__nonoption_flags_max_len == 0) { if (__getopt_nonoption_flags == NULL || __getopt_nonoption_flags[0] == '\0') - nonoption_flags_max_len = -1; + d->__nonoption_flags_max_len = -1; else { const char *orig_str = __getopt_nonoption_flags; - int len = nonoption_flags_max_len = strlen (orig_str); - if (nonoption_flags_max_len < argc) - nonoption_flags_max_len = argc; + int len = d->__nonoption_flags_max_len = strlen (orig_str); + if (d->__nonoption_flags_max_len < argc) + d->__nonoption_flags_max_len = argc; __getopt_nonoption_flags = - (char *) malloc (nonoption_flags_max_len); + (char *) malloc (d->__nonoption_flags_max_len); if (__getopt_nonoption_flags == NULL) - nonoption_flags_max_len = -1; + d->__nonoption_flags_max_len = -1; else memset (__mempcpy (__getopt_nonoption_flags, orig_str, len), - '\0', nonoption_flags_max_len - len); + '\0', d->__nonoption_flags_max_len - len); } } - nonoption_flags_len = nonoption_flags_max_len; + d->__nonoption_flags_len = d->__nonoption_flags_max_len; } else - nonoption_flags_len = 0; + d->__nonoption_flags_len = 0; #endif return optstring; @@ -510,29 +390,25 @@ long-named options. */ int -_getopt_internal (argc, argv, optstring, longopts, longind, long_only) - int argc; - char *const *argv; - const char *optstring; - const struct option *longopts; - int *longind; - int long_only; +_getopt_internal_r (int argc, char *const *argv, const char *optstring, + const struct option *longopts, int *longind, + int long_only, struct _getopt_data *d) { - int print_errors = opterr; + int print_errors = d->opterr; if (optstring[0] == ':') print_errors = 0; if (argc < 1) return -1; - optarg = NULL; + d->optarg = NULL; - if (optind == 0 || !__getopt_initialized) + if (d->optind == 0 || !d->__initialized) { - if (optind == 0) - optind = 1; /* Don't scan ARGV[0], the program name. */ - optstring = _getopt_initialize (argc, argv, optstring); - __getopt_initialized = 1; + if (d->optind == 0) + d->optind = 1; /* Don't scan ARGV[0], the program name. */ + optstring = _getopt_initialize (argc, argv, optstring, d); + d->__initialized = 1; } /* Test whether ARGV[optind] points to a non-option argument. @@ -540,40 +416,41 @@ from the shell indicating it is not an option. The later information is only used when the used in the GNU libc. */ #if defined _LIBC && defined USE_NONOPTION_FLAGS -# define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0' \ - || (optind < nonoption_flags_len \ - && __getopt_nonoption_flags[optind] == '1')) +# define NONOPTION_P (argv[d->optind][0] != '-' || argv[d->optind][1] == '\0' \ + || (d->optind < d->__nonoption_flags_len \ + && __getopt_nonoption_flags[d->optind] == '1')) #else -# define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0') +# define NONOPTION_P (argv[d->optind][0] != '-' || argv[d->optind][1] == '\0') #endif - if (nextchar == NULL || *nextchar == '\0') + if (d->__nextchar == NULL || *d->__nextchar == '\0') { /* Advance to the next ARGV-element. */ /* Give FIRST_NONOPT & LAST_NONOPT rational values if OPTIND has been moved back by the user (who may also have changed the arguments). */ - if (last_nonopt > optind) - last_nonopt = optind; - if (first_nonopt > optind) - first_nonopt = optind; + if (d->__last_nonopt > d->optind) + d->__last_nonopt = d->optind; + if (d->__first_nonopt > d->optind) + d->__first_nonopt = d->optind; - if (ordering == PERMUTE) + if (d->__ordering == PERMUTE) { /* If we have just processed some options following some non-options, exchange them so that the options come first. */ - if (first_nonopt != last_nonopt && last_nonopt != optind) - exchange ((char **) argv); - else if (last_nonopt != optind) - first_nonopt = optind; + if (d->__first_nonopt != d->__last_nonopt + && d->__last_nonopt != d->optind) + exchange ((char **) argv, d); + else if (d->__last_nonopt != d->optind) + d->__first_nonopt = d->optind; /* Skip any additional non-options and extend the range of non-options previously skipped. */ - while (optind < argc && NONOPTION_P) - optind++; - last_nonopt = optind; + while (d->optind < argc && NONOPTION_P) + d->optind++; + d->__last_nonopt = d->optind; } /* The special ARGV-element `--' means premature end of options. @@ -581,28 +458,29 @@ then exchange with previous non-options as if it were an option, then skip everything else like a non-option. */ - if (optind != argc && !strcmp (argv[optind], "--")) + if (d->optind != argc && !strcmp (argv[d->optind], "--")) { - optind++; + d->optind++; - if (first_nonopt != last_nonopt && last_nonopt != optind) - exchange ((char **) argv); - else if (first_nonopt == last_nonopt) - first_nonopt = optind; - last_nonopt = argc; + if (d->__first_nonopt != d->__last_nonopt + && d->__last_nonopt != d->optind) + exchange ((char **) argv, d); + else if (d->__first_nonopt == d->__last_nonopt) + d->__first_nonopt = d->optind; + d->__last_nonopt = argc; - optind = argc; + d->optind = argc; } /* If we have done all the ARGV-elements, stop the scan and back over any non-options that we skipped and permuted. */ - if (optind == argc) + if (d->optind == argc) { /* Set the next-arg-index to point at the non-options that we previously skipped, so the caller will digest them. */ - if (first_nonopt != last_nonopt) - optind = first_nonopt; + if (d->__first_nonopt != d->__last_nonopt) + d->optind = d->__first_nonopt; return -1; } @@ -611,17 +489,17 @@ if (NONOPTION_P) { - if (ordering == REQUIRE_ORDER) + if (d->__ordering == REQUIRE_ORDER) return -1; - optarg = argv[optind++]; + d->optarg = argv[d->optind++]; return 1; } /* We have found another option-ARGV-element. Skip the initial punctuation. */ - nextchar = (argv[optind] + 1 - + (longopts != NULL && argv[optind][1] == '-')); + d->__nextchar = (argv[d->optind] + 1 + + (longopts != NULL && argv[d->optind][1] == '-')); } /* Decode the current option-ARGV-element. */ @@ -640,8 +518,9 @@ This distinction seems to be the most useful approach. */ if (longopts != NULL - && (argv[optind][1] == '-' - || (long_only && (argv[optind][2] || !my_index (optstring, argv[optind][1]))))) + && (argv[d->optind][1] == '-' + || (long_only && (argv[d->optind][2] + || !strchr (optstring, argv[d->optind][1]))))) { char *nameend; const struct option *p; @@ -651,15 +530,15 @@ int indfound = -1; int option_index; - for (nameend = nextchar; *nameend && *nameend != '='; nameend++) + for (nameend = d->__nextchar; *nameend && *nameend != '='; nameend++) /* Do nothing. */ ; /* Test all long options for either exact match or abbreviated matches. */ for (p = longopts, option_index = 0; p->name; p++, option_index++) - if (!strncmp (p->name, nextchar, nameend - nextchar)) + if (!strncmp (p->name, d->__nextchar, nameend - d->__nextchar)) { - if ((unsigned int) (nameend - nextchar) + if ((unsigned int) (nameend - d->__nextchar) == (unsigned int) strlen (p->name)) { /* Exact match found. */ @@ -690,7 +569,7 @@ char *buf; if (__asprintf (&buf, _("%s: option `%s' is ambiguous\n"), - argv[0], argv[optind]) >= 0) + argv[0], argv[d->optind]) >= 0) { _IO_flockfile (stderr); @@ -709,25 +588,25 @@ } #else fprintf (stderr, _("%s: option `%s' is ambiguous\n"), - argv[0], argv[optind]); + argv[0], argv[d->optind]); #endif } - nextchar += strlen (nextchar); - optind++; - optopt = 0; + d->__nextchar += strlen (d->__nextchar); + d->optind++; + d->optopt = 0; return '?'; } if (pfound != NULL) { option_index = indfound; - optind++; + d->optind++; if (*nameend) { /* Don't test has_arg with >, because some C compilers don't allow it to be used on enums. */ if (pfound->has_arg) - optarg = nameend + 1; + d->optarg = nameend + 1; else { if (print_errors) @@ -737,7 +616,7 @@ int n; #endif - if (argv[optind - 1][1] == '-') + if (argv[d->optind - 1][1] == '-') { /* --option */ #if defined _LIBC && defined USE_IN_LIBIO @@ -756,12 +635,13 @@ #if defined _LIBC && defined USE_IN_LIBIO n = __asprintf (&buf, _("\ %s: option `%c%s' doesn't allow an argument\n"), - argv[0], argv[optind - 1][0], + argv[0], argv[d->optind - 1][0], pfound->name); #else fprintf (stderr, _("\ %s: option `%c%s' doesn't allow an argument\n"), - argv[0], argv[optind - 1][0], pfound->name); + argv[0], argv[d->optind - 1][0], + pfound->name); #endif } @@ -787,16 +667,16 @@ #endif } - nextchar += strlen (nextchar); + d->__nextchar += strlen (d->__nextchar); - optopt = pfound->val; + d->optopt = pfound->val; return '?'; } } else if (pfound->has_arg == 1) { - if (optind < argc) - optarg = argv[optind++]; + if (d->optind < argc) + d->optarg = argv[d->optind++]; else { if (print_errors) @@ -806,7 +686,7 @@ if (__asprintf (&buf, _("\ %s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]) >= 0) + argv[0], argv[d->optind - 1]) >= 0) { _IO_flockfile (stderr); @@ -827,15 +707,15 @@ #else fprintf (stderr, _("%s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]); + argv[0], argv[d->optind - 1]); #endif } - nextchar += strlen (nextchar); - optopt = pfound->val; + d->__nextchar += strlen (d->__nextchar); + d->optopt = pfound->val; return optstring[0] == ':' ? ':' : '?'; } } - nextchar += strlen (nextchar); + d->__nextchar += strlen (d->__nextchar); if (longind != NULL) *longind = option_index; if (pfound->flag) @@ -850,8 +730,8 @@ or the option starts with '--' or is not a valid short option, then it's an error. Otherwise interpret it as a short option. */ - if (!long_only || argv[optind][1] == '-' - || my_index (optstring, *nextchar) == NULL) + if (!long_only || argv[d->optind][1] == '-' + || strchr (optstring, *d->__nextchar) == NULL) { if (print_errors) { @@ -860,15 +740,15 @@ int n; #endif - if (argv[optind][1] == '-') + if (argv[d->optind][1] == '-') { /* --option */ #if defined _LIBC && defined USE_IN_LIBIO n = __asprintf (&buf, _("%s: unrecognized option `--%s'\n"), - argv[0], nextchar); + argv[0], d->__nextchar); #else fprintf (stderr, _("%s: unrecognized option `--%s'\n"), - argv[0], nextchar); + argv[0], d->__nextchar); #endif } else @@ -876,10 +756,10 @@ /* +option or -option */ #if defined _LIBC && defined USE_IN_LIBIO n = __asprintf (&buf, _("%s: unrecognized option `%c%s'\n"), - argv[0], argv[optind][0], nextchar); + argv[0], argv[d->optind][0], d->__nextchar); #else fprintf (stderr, _("%s: unrecognized option `%c%s'\n"), - argv[0], argv[optind][0], nextchar); + argv[0], argv[d->optind][0], d->__nextchar); #endif } @@ -903,9 +783,9 @@ } #endif } - nextchar = (char *) ""; - optind++; - optopt = 0; + d->__nextchar = (char *) ""; + d->optind++; + d->optopt = 0; return '?'; } } @@ -913,12 +793,12 @@ /* Look at and handle the next short option-character. */ { - char c = *nextchar++; - char *temp = my_index (optstring, c); + char c = *d->__nextchar++; + char *temp = strchr (optstring, c); /* Increment `optind' when we start to process its last character. */ - if (*nextchar == '\0') - ++optind; + if (*d->__nextchar == '\0') + ++d->optind; if (temp == NULL || c == ':') { @@ -929,7 +809,7 @@ int n; #endif - if (posixly_correct) + if (d->__posixly_correct) { /* 1003.2 specifies the format of this message. */ #if defined _LIBC && defined USE_IN_LIBIO @@ -969,7 +849,7 @@ } #endif } - optopt = c; + d->optopt = c; return '?'; } /* Convenience. Treat POSIX -W foo same as long option --foo */ @@ -984,14 +864,14 @@ int option_index; /* This is an option that requires an argument. */ - if (*nextchar != '\0') + if (*d->__nextchar != '\0') { - optarg = nextchar; + d->optarg = d->__nextchar; /* If we end this ARGV-element by taking the rest as an arg, we must advance to the next element now. */ - optind++; + d->optind++; } - else if (optind == argc) + else if (d->optind == argc) { if (print_errors) { @@ -1023,7 +903,7 @@ argv[0], c); #endif } - optopt = c; + d->optopt = c; if (optstring[0] == ':') c = ':'; else @@ -1031,22 +911,23 @@ return c; } else - /* We already incremented `optind' once; + /* We already incremented `d->optind' once; increment it again when taking next ARGV-elt as argument. */ - optarg = argv[optind++]; + d->optarg = argv[d->optind++]; /* optarg is now the argument, see if it's in the table of longopts. */ - for (nextchar = nameend = optarg; *nameend && *nameend != '='; nameend++) + for (d->__nextchar = nameend = d->optarg; *nameend && *nameend != '='; + nameend++) /* Do nothing. */ ; /* Test all long options for either exact match or abbreviated matches. */ for (p = longopts, option_index = 0; p->name; p++, option_index++) - if (!strncmp (p->name, nextchar, nameend - nextchar)) + if (!strncmp (p->name, d->__nextchar, nameend - d->__nextchar)) { - if ((unsigned int) (nameend - nextchar) == strlen (p->name)) + if ((unsigned int) (nameend - d->__nextchar) == strlen (p->name)) { /* Exact match found. */ pfound = p; @@ -1072,7 +953,7 @@ char *buf; if (__asprintf (&buf, _("%s: option `-W %s' is ambiguous\n"), - argv[0], argv[optind]) >= 0) + argv[0], argv[d->optind]) >= 0) { _IO_flockfile (stderr); @@ -1091,11 +972,11 @@ } #else fprintf (stderr, _("%s: option `-W %s' is ambiguous\n"), - argv[0], argv[optind]); + argv[0], argv[d->optind]); #endif } - nextchar += strlen (nextchar); - optind++; + d->__nextchar += strlen (d->__nextchar); + d->optind++; return '?'; } if (pfound != NULL) @@ -1106,7 +987,7 @@ /* Don't test has_arg with >, because some C compilers don't allow it to be used on enums. */ if (pfound->has_arg) - optarg = nameend + 1; + d->optarg = nameend + 1; else { if (print_errors) @@ -1141,14 +1022,14 @@ #endif } - nextchar += strlen (nextchar); + d->__nextchar += strlen (d->__nextchar); return '?'; } } else if (pfound->has_arg == 1) { - if (optind < argc) - optarg = argv[optind++]; + if (d->optind < argc) + d->optarg = argv[d->optind++]; else { if (print_errors) @@ -1158,7 +1039,7 @@ if (__asprintf (&buf, _("\ %s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]) >= 0) + argv[0], argv[d->optind - 1]) >= 0) { _IO_flockfile (stderr); @@ -1179,14 +1060,14 @@ #else fprintf (stderr, _("%s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]); + argv[0], argv[d->optind - 1]); #endif } - nextchar += strlen (nextchar); + d->__nextchar += strlen (d->__nextchar); return optstring[0] == ':' ? ':' : '?'; } } - nextchar += strlen (nextchar); + d->__nextchar += strlen (d->__nextchar); if (longind != NULL) *longind = option_index; if (pfound->flag) @@ -1196,7 +1077,7 @@ } return pfound->val; } - nextchar = NULL; + d->__nextchar = NULL; return 'W'; /* Let the application handle it. */ } if (temp[1] == ':') @@ -1204,26 +1085,26 @@ if (temp[2] == ':') { /* This is an option that accepts an argument optionally. */ - if (*nextchar != '\0') + if (*d->__nextchar != '\0') { - optarg = nextchar; - optind++; + d->optarg = d->__nextchar; + d->optind++; } else - optarg = NULL; - nextchar = NULL; + d->optarg = NULL; + d->__nextchar = NULL; } else { /* This is an option that requires an argument. */ - if (*nextchar != '\0') + if (*d->__nextchar != '\0') { - optarg = nextchar; + d->optarg = d->__nextchar; /* If we end this ARGV-element by taking the rest as an arg, we must advance to the next element now. */ - optind++; + d->optind++; } - else if (optind == argc) + else if (d->optind == argc) { if (print_errors) { @@ -1256,7 +1137,7 @@ argv[0], c); #endif } - optopt = c; + d->optopt = c; if (optstring[0] == ':') c = ':'; else @@ -1265,8 +1146,8 @@ else /* We already incremented `optind' once; increment it again when taking next ARGV-elt as argument. */ - optarg = argv[optind++]; - nextchar = NULL; + d->optarg = argv[d->optind++]; + d->__nextchar = NULL; } } return c; @@ -1274,10 +1155,26 @@ } int -getopt (argc, argv, optstring) - int argc; - char *const *argv; - const char *optstring; +_getopt_internal (int argc, char *const *argv, const char *optstring, + const struct option *longopts, int *longind, int long_only) +{ + int result; + + getopt_data.optind = optind; + getopt_data.opterr = opterr; + + result = _getopt_internal_r (argc, argv, optstring, longopts, + longind, long_only, &getopt_data); + + optind = getopt_data.optind; + optarg = getopt_data.optarg; + optopt = getopt_data.optopt; + + return result; +} + +int +getopt (int argc, char *const *argv, const char *optstring) { return _getopt_internal (argc, argv, optstring, (const struct option *) 0, @@ -1293,9 +1190,7 @@ the above definition of `getopt'. */ int -main (argc, argv) - int argc; - char **argv; +main (int argc, char **argv) { int c; int digit_optind = 0; diff -urN gawk-3.1.4/getopt.h gawk-3.1.5/getopt.h --- gawk-3.1.4/getopt.h 2004-02-04 17:33:45.000000000 +0200 +++ gawk-3.1.5/getopt.h 2005-05-11 18:28:16.000000000 +0300 @@ -1,5 +1,6 @@ /* Declarations for getopt. - Copyright (C) 1989-1994, 1996-1999,2001,2003 Free Software Foundation, Inc. + Copyright (C) 1989-1994,1996-1999,2001,2003,2004 + Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -14,8 +15,8 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ #ifndef _GETOPT_H @@ -35,7 +36,10 @@ #endif #ifndef __THROW -# if defined __cplusplus /* ADR: nuke this: && __GNUC_PREREQ (2,8) */ +# ifndef __GNUC_PREREQ +# define __GNUC_PREREQ(maj, min) (0) +# endif +# if defined __cplusplus && __GNUC_PREREQ (2,8) # define __THROW throw () # else # define __THROW @@ -101,11 +105,7 @@ struct option { -# if (defined __STDC__ && __STDC__) || defined __cplusplus const char *name; -# else - char *name; -# endif /* has_arg can't be an enum because some compilers complain about type mismatches in all the code that assumes it is an int. */ int has_arg; @@ -145,18 +145,17 @@ arguments to the option '\0'. This behavior is specific to the GNU `getopt'. */ -#if (defined __STDC__ && __STDC__) || defined __cplusplus -# ifdef __GNU_LIBRARY__ +#ifdef __GNU_LIBRARY__ /* Many other libraries have conflicting prototypes for getopt, with differences in the consts, in stdlib.h. To avoid compilation errors, only prototype getopt for the GNU C library. */ extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) __THROW; -# else /* not __GNU_LIBRARY__ */ +#else /* not __GNU_LIBRARY__ */ extern int getopt (); -# endif /* __GNU_LIBRARY__ */ +#endif /* __GNU_LIBRARY__ */ -# ifndef __need_getopt +#ifndef __need_getopt extern int getopt_long (int ___argc, char *const *___argv, const char *__shortopts, const struct option *__longopts, int *__longind) @@ -166,21 +165,7 @@ const struct option *__longopts, int *__longind) __THROW; -/* Internal only. Users should not call this directly. */ -extern int _getopt_internal (int ___argc, char *const *___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind, - int __long_only); -# endif -#else /* not __STDC__ */ -extern int getopt (); -# ifndef __need_getopt -extern int getopt_long (); -extern int getopt_long_only (); - -extern int _getopt_internal (); -# endif -#endif /* __STDC__ */ +#endif #ifdef __cplusplus } diff -urN gawk-3.1.4/getopt1.c gawk-3.1.5/getopt1.c --- gawk-3.1.4/getopt1.c 2002-08-07 00:10:35.000000000 +0300 +++ gawk-3.1.5/getopt1.c 2005-05-11 18:28:16.000000000 +0300 @@ -1,5 +1,5 @@ /* getopt_long and getopt_long_only entry points for GNU getopt. - Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98 + Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98,2004 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -15,8 +15,8 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ #ifdef HAVE_CONFIG_H #include @@ -27,14 +27,7 @@ #else # include "getopt.h" #endif - -#if !defined __STDC__ || !__STDC__ -/* This is a separate conditional since some stdc systems - reject `defined (const)'. */ -#ifndef const -#define const -#endif -#endif +#include "getopt_int.h" #include @@ -68,36 +61,41 @@ #endif int -getopt_long (argc, argv, options, long_options, opt_index) - int argc; - char *const *argv; - const char *options; - const struct option *long_options; - int *opt_index; +getopt_long (int argc, char *const *argv, const char *options, + const struct option *long_options, int *opt_index) { return _getopt_internal (argc, argv, options, long_options, opt_index, 0); } +int +_getopt_long_r (int argc, char *const *argv, const char *options, + const struct option *long_options, int *opt_index, + struct _getopt_data *d) +{ + return _getopt_internal_r (argc, argv, options, long_options, opt_index, + 0, d); +} + /* Like getopt_long, but '-' as well as '--' can indicate a long option. If an option that starts with '-' (not '--') doesn't match a long option, but does match a short option, it is parsed as a short option instead. */ int -getopt_long_only (argc, argv, options, long_options, opt_index) - int argc; - char *const *argv; - const char *options; - const struct option *long_options; - int *opt_index; +getopt_long_only (int argc, char *const *argv, const char *options, + const struct option *long_options, int *opt_index) { return _getopt_internal (argc, argv, options, long_options, opt_index, 1); } -# ifdef _LIBC -libc_hidden_def (getopt_long) -libc_hidden_def (getopt_long_only) -# endif +int +_getopt_long_only_r (int argc, char *const *argv, const char *options, + const struct option *long_options, int *opt_index, + struct _getopt_data *d) +{ + return _getopt_internal_r (argc, argv, options, long_options, opt_index, + 1, d); +} #endif /* Not ELIDE_CODE. */ @@ -106,9 +104,7 @@ #include int -main (argc, argv) - int argc; - char **argv; +main (int argc, char **argv) { int c; int digit_optind = 0; diff -urN gawk-3.1.4/getopt_int.h gawk-3.1.5/getopt_int.h --- gawk-3.1.4/getopt_int.h 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/getopt_int.h 2005-05-11 18:28:16.000000000 +0300 @@ -0,0 +1,130 @@ +/* Internal declarations for getopt. + Copyright (C) 1989-1994,1996-1999,2001,2003,2004 + Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ + +#ifndef _GETOPT_INT_H +#define _GETOPT_INT_H 1 + +extern int _getopt_internal (int ___argc, char *const *___argv, + const char *__shortopts, + const struct option *__longopts, int *__longind, + int __long_only); + + +/* Reentrant versions which can handle parsing multiple argument + vectors at the same time. */ + +/* Data type for reentrant functions. */ +struct _getopt_data +{ + /* These have exactly the same meaning as the corresponding global + variables, except that they are used for the reentrant + versions of getopt. */ + int optind; + int opterr; + int optopt; + char *optarg; + + /* Internal members. */ + + /* True if the internal members have been initialized. */ + int __initialized; + + /* The next char to be scanned in the option-element + in which the last option character we returned was found. + This allows us to pick up the scan where we left off. + + If this is zero, or a null string, it means resume the scan + by advancing to the next ARGV-element. */ + char *__nextchar; + + /* Describe how to deal with options that follow non-option ARGV-elements. + + If the caller did not specify anything, + the default is REQUIRE_ORDER if the environment variable + POSIXLY_CORRECT is defined, PERMUTE otherwise. + + REQUIRE_ORDER means don't recognize them as options; + stop option processing when the first non-option is seen. + This is what Unix does. + This mode of operation is selected by either setting the environment + variable POSIXLY_CORRECT, or using `+' as the first character + of the list of option characters. + + PERMUTE is the default. We permute the contents of ARGV as we + scan, so that eventually all the non-options are at the end. + This allows options to be given in any order, even with programs + that were not written to expect this. + + RETURN_IN_ORDER is an option available to programs that were + written to expect options and other ARGV-elements in any order + and that care about the ordering of the two. We describe each + non-option ARGV-element as if it were the argument of an option + with character code 1. Using `-' as the first character of the + list of option characters selects this mode of operation. + + The special argument `--' forces an end of option-scanning regardless + of the value of `ordering'. In the case of RETURN_IN_ORDER, only + `--' can cause `getopt' to return -1 with `optind' != ARGC. */ + + enum + { + REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER + } __ordering; + + /* If the POSIXLY_CORRECT environment variable is set. */ + int __posixly_correct; + + + /* Handle permutation of arguments. */ + + /* Describe the part of ARGV that contains non-options that have + been skipped. `first_nonopt' is the index in ARGV of the first + of them; `last_nonopt' is the index after the last of them. */ + + int __first_nonopt; + int __last_nonopt; + +#if defined _LIBC && defined USE_NONOPTION_FLAGS + int __nonoption_flags_max_len; + int __nonoption_flags_len; +# endif +}; + +/* The initializer is necessary to set OPTIND and OPTERR to their + default values and to clear the initialization flag. */ +#define _GETOPT_DATA_INITIALIZER { 1, 1 } + +extern int _getopt_internal_r (int ___argc, char *const *___argv, + const char *__shortopts, + const struct option *__longopts, int *__longind, + int __long_only, struct _getopt_data *__data); + +extern int _getopt_long_r (int ___argc, char *const *___argv, + const char *__shortopts, + const struct option *__longopts, int *__longind, + struct _getopt_data *__data); + +extern int _getopt_long_only_r (int ___argc, char *const *___argv, + const char *__shortopts, + const struct option *__longopts, + int *__longind, + struct _getopt_data *__data); + +#endif /* getopt_int.h */ diff -urN gawk-3.1.4/gettext.h gawk-3.1.5/gettext.h --- gawk-3.1.4/gettext.h 2002-10-28 10:16:13.000000000 +0200 +++ gawk-3.1.5/gettext.h 2005-07-26 21:24:49.000000000 +0300 @@ -1,5 +1,5 @@ /* Convenience header for conditional use of GNU . - Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc. + Copyright (C) 1995-1998, 2000-2002, 2005 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published @@ -13,7 +13,7 @@ You should have received a copy of the GNU Library General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef _LIBGETTEXT_H @@ -38,7 +38,10 @@ as well because people using "gettext.h" will not include , and also including would fail on SunOS 4, whereas is OK. */ -#if defined(__sun) +/* ADR: Include even if not ENABLE_NLS so can pay attention + * to locale number formats, etc. + */ +#if defined(__sun) || defined(HAVE_LOCALE_H) # include #endif diff -urN gawk-3.1.4/hard-locale.h gawk-3.1.5/hard-locale.h --- gawk-3.1.4/hard-locale.h 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/hard-locale.h 2005-05-11 18:28:16.000000000 +0300 @@ -0,0 +1,64 @@ +/* hard-locale.h -- Same as hard-locale.c. + * + * For gawk, put this in a header file, provides source code + * compatibility with GNU grep for dfa.c, so that dfa.c need + * not be continually modified by hand. + */ +/* hard-locale.c -- Determine whether a locale is hard. + Copyright 1997, 1998, 1999 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + + +/* Return nonzero if the current CATEGORY locale is hard, i.e. if you + can't get away with assuming traditional C or POSIX behavior. */ +static int +hard_locale (int category) +{ +#if ! (defined ENABLE_NLS && HAVE_SETLOCALE) + return 0; +#else + + int hard = 1; + char const *p = setlocale (category, 0); + + if (p) + { +# if defined __GLIBC__ && __GLIBC__ >= 2 + if (strcmp (p, "C") == 0 || strcmp (p, "POSIX") == 0) + hard = 0; +# else + static ptr_t xmalloc PARAMS ((size_t n)); + + char *locale = xmalloc (strlen (p) + 1); + strcpy (locale, p); + + /* Temporarily set the locale to the "C" and "POSIX" locales to + find their names, so that we can determine whether one or the + other is the caller's locale. */ + if (((p = setlocale (category, "C")) && strcmp (p, locale) == 0) + || ((p = setlocale (category, "POSIX")) && strcmp (p, locale) == 0)) + hard = 0; + + /* Restore the caller's locale. */ + setlocale (category, locale); + free(locale); +# endif + } + + return hard; + +#endif +} diff -urN gawk-3.1.4/install-sh gawk-3.1.5/install-sh --- gawk-3.1.4/install-sh 2004-06-21 16:38:34.000000000 +0300 +++ gawk-3.1.5/install-sh 2005-05-11 18:28:16.000000000 +0300 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2004-04-01.17 +scriptversion=2005-02-02.21 # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -58,9 +58,6 @@ rmprog="${RMPROG-rm}" mkdirprog="${MKDIRPROG-mkdir}" -transformbasename= -transform_arg= -instcmd="$mvprog" chmodcmd="$chmodprog 0755" chowncmd= chgrpcmd= @@ -70,23 +67,27 @@ src= dst= dir_arg= +dstarg= +no_target_directory= -usage="Usage: $0 [OPTION]... SRCFILE DSTFILE +usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY - or: $0 -d DIRECTORIES... + or: $0 [OPTION]... -t DIRECTORY SRCFILES... + or: $0 [OPTION]... -d DIRECTORIES... -In the first form, install SRCFILE to DSTFILE, removing SRCFILE by default. -In the second, create the directory path DIR. +In the 1st form, copy SRCFILE to DSTFILE. +In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. +In the 4th, create DIRECTORIES. Options: --b=TRANSFORMBASENAME --c copy source (using $cpprog) instead of moving (using $mvprog). +-c (ignored) -d create directories instead of installing files. --g GROUP $chgrp installed files to GROUP. --m MODE $chmod installed files to MODE. --o USER $chown installed files to USER. --s strip installed files (using $stripprog). --t=TRANSFORM +-g GROUP $chgrpprog installed files to GROUP. +-m MODE $chmodprog installed files to MODE. +-o USER $chownprog installed files to USER. +-s $stripprog installed files. +-t DIRECTORY install into DIRECTORY. +-T report an error if DSTFILE is a directory. --help display this help and exit. --version display version info and exit. @@ -96,12 +97,7 @@ while test -n "$1"; do case $1 in - -b=*) transformbasename=`echo $1 | sed 's/-b=//'` - shift - continue;; - - -c) instcmd=$cpprog - shift + -c) shift continue;; -d) dir_arg=true @@ -113,7 +109,7 @@ shift continue;; - --help) echo "$usage"; exit 0;; + --help) echo "$usage"; exit $?;; -m) chmodcmd="$chmodprog $2" shift @@ -129,14 +125,20 @@ shift continue;; - -t=*) transformarg=`echo $1 | sed 's/-t=//'` - shift - continue;; + -t) dstarg=$2 + shift + shift + continue;; + + -T) no_target_directory=true + shift + continue;; - --version) echo "$0 $scriptversion"; exit 0;; + --version) echo "$0 $scriptversion"; exit $?;; *) # When -d is used, all remaining arguments are directories to create. - test -n "$dir_arg" && break + # When -t is used, the destination is already specified. + test -n "$dir_arg$dstarg" && break # Otherwise, the last argument is the destination. Remove it from $@. for arg do @@ -174,13 +176,13 @@ src= if test -d "$dst"; then - instcmd=: + mkdircmd=: chmodcmd= else - instcmd=$mkdirprog + mkdircmd=$mkdirprog fi else - # Waiting for this to be detected by the "$instcmd $src $dsttmp" command + # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then @@ -202,12 +204,16 @@ # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then + if test -n "$no_target_directory"; then + echo "$0: $dstarg: Is a directory" >&2 + exit 1 + fi dst=$dst/`basename "$src"` fi fi # This sed command emulates the dirname command. - dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` + dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` # Make sure that the destination directory exists. @@ -220,7 +226,8 @@ oIFS=$IFS # Some sh's can't handle IFS=/ for some reason. IFS='%' - set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` + set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` + shift IFS=$oIFS pathcomp= @@ -229,51 +236,42 @@ pathcomp=$pathcomp$1 shift if test ! -d "$pathcomp"; then - $mkdirprog "$pathcomp" || lasterr=$? + $mkdirprog "$pathcomp" # mkdir can fail with a `File exist' error in case several # install-sh are creating the directory concurrently. This # is OK. - test ! -d "$pathcomp" && { (exit ${lasterr-1}); exit; } + test -d "$pathcomp" || exit fi pathcomp=$pathcomp/ done fi if test -n "$dir_arg"; then - $doit $instcmd "$dst" \ + $doit $mkdircmd "$dst" \ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } else - # If we're going to rename the final executable, determine the name now. - if test -z "$transformarg"; then - dstfile=`basename "$dst"` - else - dstfile=`basename "$dst" $transformbasename \ - | sed $transformarg`$transformbasename - fi - - # don't allow the sed command to completely eliminate the filename. - test -z "$dstfile" && dstfile=`basename "$dst"` + dstfile=`basename "$dst"` # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. - trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0 + trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 trap '(exit $?); exit' 1 2 13 15 - # Move or copy the file name to the temp name - $doit $instcmd "$src" "$dsttmp" && + # Copy the file name to the temp name. + $doit $cpprog "$src" "$dsttmp" && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore - # errors from the above "$doit $instcmd $src $dsttmp" command. + # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ @@ -298,7 +296,7 @@ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ || { echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 - (exit 1); exit + (exit 1); exit 1 } else : @@ -309,12 +307,12 @@ $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" } } - fi || { (exit 1); exit; } + fi || { (exit 1); exit 1; } done # The final little trick to "correctly" pass the exit status to the exit trap. { - (exit 0); exit + (exit 0); exit 0 } # Local variables: diff -urN gawk-3.1.4/io.c gawk-3.1.5/io.c --- gawk-3.1.4/io.c 2004-07-28 16:41:56.000000000 +0300 +++ gawk-3.1.5/io.c 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2004 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" @@ -199,8 +199,7 @@ static jmp_buf filebuf; /* for do_nextfile() */ -#if defined(MSDOS) || defined(OS2) || defined(WIN32) \ - || defined(__EMX__) || defined(__CYGWIN__) +#if defined(MSDOS) || defined(OS2) || defined(WIN32) || defined(__EMX__) || defined(__CYGWIN__) /* binmode --- convert BINMODE to string for fopen */ static const char * @@ -384,6 +383,7 @@ } /* Don't close standard files or else crufty code elsewhere will lose */ + /* FIXME: *DO* close it. Just reopen on an invalid handle. */ if (iop->fd == fileno(stdin) || iop->fd == fileno(stdout) || iop->fd == fileno(stderr)) @@ -391,6 +391,9 @@ else ret = close(iop->fd); + if (iop->close_func != NULL) + (*iop->close_func)(iop); + if (ret == -1) warning(_("close of fd %d (`%s') failed (%s)"), iop->fd, iop->name, strerror(errno)); @@ -575,7 +578,7 @@ /* now check for a match */ if (strlen(rp->value) == tmp->stlen - && STREQN(rp->value, str, tmp->stlen) + && memcmp(rp->value, str, tmp->stlen) == 0 && ((rp->flag & ~(RED_NOBUF|RED_EOF|RED_PTY)) == tflag || (outflag != 0 && (rp->flag & (RED_FILE|RED_WRITE)) == outflag))) { @@ -586,7 +589,7 @@ if (do_lint && rpflag != newflag) lintwarn( _("unnecessary mixing of `>' and `>>' for file `%.*s'"), - tmp->stlen, rp->value); + (int) tmp->stlen, rp->value); break; } @@ -602,7 +605,7 @@ rp->flag = tflag; rp->fp = NULL; rp->iop = NULL; - rp->pid = 0; /* unlikely that we're worried about init */ + rp->pid = -1; rp->status = 0; /* maintain list in most-recently-used first order */ if (red_head != NULL) @@ -763,7 +766,7 @@ struct redirect *rp; for (rp = red_head; rp != NULL; rp = rp->next) - if (strlen(rp->value) == len && STREQN(rp->value, str, len)) + if (strlen(rp->value) == len && memcmp(rp->value, str, len) == 0) return rp; return NULL; @@ -793,7 +796,7 @@ if (rp->fp == NULL || rp->fp == stderr || rp->fp == stdout) continue; - if ((rp->flag & RED_FILE) != 0) { + if ((rp->flag & (RED_FILE|RED_WRITE)) == (RED_FILE|RED_WRITE)) { rp->flag |= RED_USED; errno = 0; if (/* do_lint && */ fclose(rp->fp) != 0) @@ -834,7 +837,7 @@ for (rp = red_head; rp != NULL; rp = rp->next) { if (strlen(rp->value) == tmp->stlen - && STREQN(rp->value, tmp->stptr, tmp->stlen)) + && memcmp(rp->value, tmp->stptr, tmp->stlen) == 0) break; } @@ -843,7 +846,7 @@ if (do_lint) lintwarn(_("close: `%.*s' is not an open file, pipe or co-process"), - tmp->stlen, tmp->stptr); + (int) tmp->stlen, tmp->stptr); /* update ERRNO manually, using errno = ENOENT is a stretch. */ cp = _("close of redirection that was never opened"); @@ -949,7 +952,8 @@ /* SVR4 awk checks and warns about status of close */ if (status != 0) { - char *s = strerror(errno); + int save_errno = errno; + char *s = strerror(save_errno); /* * Too many people have complained about this. @@ -966,7 +970,7 @@ if (! do_traditional) { /* set ERRNO too so that program can get at it */ - update_ERRNO(); + update_ERRNO_saved(save_errno); } } @@ -1049,7 +1053,7 @@ /* close_io --- close all open files, called when exiting */ int -close_io() +close_io(int *stdio_problem) { register struct redirect *rp; register struct redirect *next; @@ -1071,13 +1075,16 @@ * on stdout and stderr. Since we don't really need to close * them, we just flush them, and do that across the board. */ + *stdio_problem = FALSE; if (fflush(stdout)) { warning(_("error writing standard output (%s)"), strerror(errno)); status++; + *stdio_problem = TRUE; } if (fflush(stderr)) { warning(_("error writing standard error (%s)"), strerror(errno)); status++; + *stdio_problem = TRUE; } return status; } @@ -1202,7 +1209,7 @@ } else { /* remote host is ANY => create a server */ if (type == INET_TCP) { int clientsocket_fd = INVALID_HANDLE; - int namelen = sizeof(remote_addr); + socklen_t namelen = sizeof(remote_addr); if (listen(socket_fd, 1) >= 0 && (clientsocket_fd = accept(socket_fd, @@ -1215,10 +1222,10 @@ socket_fd = INVALID_HANDLE; } } else if (type == INET_UDP) { +#ifdef MSG_PEEK char buf[10]; - int readle; + socklen_t readle; -#ifdef MSG_PEEK if (recvfrom(socket_fd, buf, 1, MSG_PEEK, (struct sockaddr *) & remote_addr, & readle) < 1 @@ -1433,7 +1440,7 @@ iop->end = iop->buf + len; iop->dataend = iop->end; iop->fd = -1; - iop->flag = IOP_IS_INTERNAL; + iop->flag = IOP_IS_INTERNAL | IOP_AT_START; } /* specfdopen --- open an fd special file */ @@ -1586,11 +1593,19 @@ if (openfd != INVALID_HANDLE) { if (os_isdir(openfd)) fatal(_("file `%s' is a directory"), name); - - if (openfd > fileno(stderr)) - os_close_on_exec(openfd, name, "file", ""); } - return iop_alloc(openfd, name, iop); + /* + * At this point, fd could still be INVALID_HANDLE. + * We pass it to `iop_alloc' anyway, in case an open hook + * can manage to open the file. + */ + iop = iop_alloc(openfd, name, iop); + if (iop != NULL) { + if (iop->fd > fileno(stderr)) + os_close_on_exec(iop->fd, name, "file", ""); + } else if (openfd != INVALID_HANDLE) /* have an fd, but IOP is null */ + (void) close(openfd); /* avoid fd leak */ + return iop; } /* two_way_open --- open a two way communications channel */ @@ -2024,7 +2039,6 @@ int pid; int status = 0; struct redirect *redp; - extern int errno; hstat = signal(SIGHUP, SIG_IGN); istat = signal(SIGINT, SIG_IGN); @@ -2205,7 +2219,6 @@ static IOBUF * gawk_popen(const char *cmd, struct redirect *rp) { - extern char *strdup P((const char *)); int current; char *name; static char cmdbuf[256]; @@ -2218,7 +2231,8 @@ if ((current = open(name, O_RDONLY)) == INVALID_HANDLE) return NULL; pipes[current].name = name; - pipes[current].command = strdup(cmd); + emalloc(pipes[current].command, char *, strlen(cmd)+1, "gawk_popen"); + strcpy(pipes[current].command, cmd); os_close_on_exec(current, cmd, "pipe", "from"); rp->iop = iop_alloc(current, name, NULL); if (rp->iop == NULL) @@ -2273,7 +2287,7 @@ rp = redirect(tree->rnode, &redir_error); if (rp == NULL && redir_error) { /* failed redirect */ if (! do_traditional) - update_ERRNO(); + update_ERRNO_saved(redir_error); return tmp_number((AWKNUM) -1.0); } @@ -2284,8 +2298,8 @@ errcode = 0; cnt = get_a_record(&s, iop, &errcode); if (errcode != 0) { - if (! do_traditional) - update_ERRNO(); + if (! do_traditional && (errcode != -1)) + update_ERRNO_saved(errcode); return tmp_number((AWKNUM) -1.0); } @@ -2439,35 +2453,65 @@ } #endif +/* open hooks, mainly for use by extension functions */ + +static struct open_hook { + struct open_hook *next; + void *(*open_func)(IOBUF *); +} *open_hooks; + +/* register_open_hook --- add an open hook to the list */ + +void +register_open_hook(void *(*open_func)(IOBUF *)) +{ + struct open_hook *oh; + + emalloc(oh, struct open_hook *, sizeof(*oh), "register_open_hook"); + oh->open_func = open_func; + oh->next = open_hooks; + open_hooks = oh; +} + /* iop_alloc --- allocate an IOBUF structure for an open fd */ static IOBUF * iop_alloc(int fd, const char *name, IOBUF *iop) { - struct stat sbuf; + struct stat sbuf; + struct open_hook *oh; - if (fd == INVALID_HANDLE) - return NULL; - if (iop == NULL) - emalloc(iop, IOBUF *, sizeof(IOBUF), "iop_alloc"); + if (iop == NULL) + emalloc(iop, IOBUF *, sizeof(IOBUF), "iop_alloc"); memset(iop, '\0', sizeof(IOBUF)); - iop->flag = 0; - if (isatty(fd)) - iop->flag |= IOP_IS_TTY; - iop->readsize = iop->size = optimal_bufsize(fd, & sbuf); - iop->sbuf = sbuf; - if (do_lint && S_ISREG(sbuf.st_mode) && sbuf.st_size == 0) - lintwarn(_("data file `%s' is empty"), name); - errno = 0; - iop->fd = fd; - iop->count = iop->scanoff = 0; - iop->name = name; - emalloc(iop->buf, char *, iop->size += 2, "iop_alloc"); - iop->off = iop->buf; - iop->dataend = NULL; - iop->end = iop->buf + iop->size; iop->flag = 0; - return iop; + iop->fd = fd; + iop->name = name; + + /* walk through open hooks, stop at first one that responds */ + for (oh = open_hooks; oh != NULL; oh = oh->next) { + if ((iop->opaque = (*oh->open_func)(iop)) != NULL) + break; + } + + if (iop->fd == INVALID_HANDLE) { + free(iop); + return NULL; + } + if (isatty(iop->fd)) + iop->flag |= IOP_IS_TTY; + iop->readsize = iop->size = optimal_bufsize(iop->fd, & sbuf); + iop->sbuf = sbuf; + if (do_lint && S_ISREG(sbuf.st_mode) && sbuf.st_size == 0) + lintwarn(_("data file `%s' is empty"), name); + errno = 0; + iop->count = iop->scanoff = 0; + emalloc(iop->buf, char *, iop->size += 2, "iop_alloc"); + iop->off = iop->buf; + iop->dataend = NULL; + iop->end = iop->buf + iop->size; + iop->flag |= IOP_AT_START; + return iop; } #define set_RT_to_null() \ @@ -2661,6 +2705,7 @@ register char *bp; size_t restart = 0, reend = 0; Regexp *RSre = RS_regexp; + int regex_flags = RE_NEED_START; memset(recm, '\0', sizeof(struct recmatch)); recm->start = iop->off; @@ -2669,9 +2714,11 @@ if (*state == INDATA) bp += iop->scanoff; + if ((iop->flag & IOP_AT_START) == 0) + regex_flags |= RE_NO_BOL; again: /* case 1, no match */ - if (research(RSre, bp, 0, iop->dataend - bp, TRUE) == -1) { + if (research(RSre, bp, 0, iop->dataend - bp, regex_flags) == -1) { /* set len, in case this all there is. */ recm->len = iop->dataend - iop->off; return NOTERM; @@ -2854,6 +2901,9 @@ if (at_eof(iop) && no_data_left(iop)) return EOF; + if (iop->get_record != NULL) + return (*iop->get_record)(out, iop, errcode); + /* = */ if (has_no_data(iop) || no_data_left(iop)) { iop->count = read(iop->fd, iop->buf, iop->readsize); @@ -2883,6 +2933,8 @@ ret = (*matchrec)(iop, & recm, & state); + iop->flag &= ~IOP_AT_START; + if (ret == REC_OK) break; @@ -3022,7 +3074,7 @@ */ if (save_rs && RS_node->var_value->stlen == save_rs->stlen - && STREQN(RS_node->var_value->stptr, save_rs->stptr, save_rs->stlen)) { + && memcmp(RS_node->var_value->stptr, save_rs->stptr, save_rs->stlen) == 0) { /* * It could be that just IGNORECASE changed. If so, * update the regex and then do the same for FS. @@ -3118,6 +3170,8 @@ { IOP_NO_FREE, "IOP_NO_FREE" }, { IOP_NOFREE_OBJ, "IOP_NOFREE_OBJ" }, { IOP_AT_EOF, "IOP_AT_EOF" }, + { IOP_CLOSED, "IOP_CLOSED" }, + { IOP_AT_START, "IOP_AT_START" }, { 0, NULL } }; diff -urN gawk-3.1.4/m4/ChangeLog gawk-3.1.5/m4/ChangeLog --- gawk-3.1.4/m4/ChangeLog 2004-08-02 12:18:59.000000000 +0300 +++ gawk-3.1.5/m4/ChangeLog 2005-07-26 21:46:51.000000000 +0300 @@ -1,3 +1,21 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + +Wed Jul 6 17:05:32 2005 Arnold D. Robbins + + * gettext.m4: Per Bruno Haible, revert the change for the test + for locale.h from Sergey Poznyakoff. + +Wed Jun 8 20:45:17 2005 Sergey Poznyakoff + + * gettext.m4: Move test for locale.h and LC_MESSAGES in AM_GNU_GETTEXT. + Makes things work when the library is external. + +Mon May 30 21:31:43 2005 Arnold D. Robbins + + * intmax_t.m4: Updated macro for intmax_t from Jim Meyering. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/m4/arch.m4 gawk-3.1.5/m4/arch.m4 --- gawk-3.1.4/m4/arch.m4 2004-01-15 15:47:26.000000000 +0200 +++ gawk-3.1.5/m4/arch.m4 2005-05-11 18:28:16.000000000 +0300 @@ -18,7 +18,7 @@ dnl dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA dnl dnl Check for AIX and add _XOPEN_SOURCE_EXTENDED diff -urN gawk-3.1.4/m4/codeset.m4 gawk-3.1.5/m4/codeset.m4 --- gawk-3.1.4/m4/codeset.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/codeset.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # codeset.m4 serial AM1 (gettext-0.10.40) dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. diff -urN gawk-3.1.4/m4/gettext.m4 gawk-3.1.5/m4/gettext.m4 --- gawk-3.1.4/m4/gettext.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/gettext.m4 2005-07-06 17:04:08.000000000 +0300 @@ -1,10 +1,8 @@ -# gettext.m4 serial 28 (gettext-0.13) -dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# gettext.m4 serial 37 (gettext-0.14.4) +dnl Copyright (C) 1995-2005 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public @@ -65,8 +63,8 @@ ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], , [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT ])])])]) - define(gt_included_intl, ifelse([$1], [external], [no], [yes])) - define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], [])) + define([gt_included_intl], ifelse([$1], [external], [no], [yes])) + define([gt_libtool_suffix_prefix], ifelse([$1], [use-libtool], [l], [])) AC_REQUIRE([AM_PO_SUBDIRS])dnl ifelse(gt_included_intl, yes, [ @@ -92,6 +90,9 @@ AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) ]) + dnl Sometimes, on MacOS X, libintl requires linking with CoreFoundation. + gt_INTL_MACOSX + dnl Set USE_NLS. AM_NLS @@ -138,7 +139,7 @@ ], [])[extern int _nl_msg_cat_cntr; extern int *_nl_domain_bindings;], [bindtextdomain ("", ""); -return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings], +return * gettext ("")]ifelse([$2], [need-ngettext], [ + * ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings], gt_cv_func_gnugettext_libc=yes, gt_cv_func_gnugettext_libc=no)]) @@ -172,9 +173,9 @@ #ifdef __cplusplus "C" #endif -const char *_nl_expand_alias ();], +const char *_nl_expand_alias (const char *);], [bindtextdomain ("", ""); -return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], +return * gettext ("")]ifelse([$2], [need-ngettext], [ + * ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias ("")], gt_cv_func_gnugettext_libintl=yes, gt_cv_func_gnugettext_libintl=no) dnl Now see whether libintl exists and depends on libiconv. @@ -193,9 +194,9 @@ #ifdef __cplusplus "C" #endif -const char *_nl_expand_alias ();], +const char *_nl_expand_alias (const char *);], [bindtextdomain ("", ""); -return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], +return * gettext ("")]ifelse([$2], [need-ngettext], [ + * ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias ("")], [LIBINTL="$LIBINTL $LIBICONV" LTLIBINTL="$LTLIBINTL $LTLIBICONV" gt_cv_func_gnugettext_libintl=yes @@ -238,6 +239,7 @@ LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` fi + CATOBJEXT= if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then dnl Mark actions to use GNU gettext tools. @@ -245,6 +247,15 @@ fi ]) + if test -n "$INTL_MACOSX_LIBS"; then + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then + dnl Some extra flags are needed during linking. + LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" + LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" + fi + fi + if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then AC_DEFINE(ENABLE_NLS, 1, @@ -320,6 +331,7 @@ AC_SUBST(GENCAT) dnl For backward compatibility. Some Makefiles may be using this. + INTLOBJS= if test "$USE_INCLUDED_LIBINTL" = yes; then INTLOBJS="\$(GETTOBJS)" fi @@ -350,6 +362,7 @@ AC_REQUIRE([AM_MKINSTALLDIRS])dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl + AC_REQUIRE([gt_GLIBC2])dnl AC_REQUIRE([AC_PROG_RANLIB])dnl AC_REQUIRE([AC_ISC_POSIX])dnl AC_REQUIRE([AC_HEADER_STDC])dnl @@ -358,22 +371,23 @@ AC_REQUIRE([AC_C_INLINE])dnl AC_REQUIRE([AC_TYPE_OFF_T])dnl AC_REQUIRE([AC_TYPE_SIZE_T])dnl - AC_REQUIRE([jm_AC_TYPE_LONG_LONG])dnl + AC_REQUIRE([gl_AC_TYPE_LONG_LONG])dnl AC_REQUIRE([gt_TYPE_LONGDOUBLE])dnl AC_REQUIRE([gt_TYPE_WCHAR_T])dnl AC_REQUIRE([gt_TYPE_WINT_T])dnl - AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) - AC_REQUIRE([jm_AC_HEADER_STDINT_H]) + AC_REQUIRE([gl_AC_HEADER_INTTYPES_H]) + AC_REQUIRE([gl_AC_HEADER_STDINT_H]) AC_REQUIRE([gt_TYPE_INTMAX_T]) AC_REQUIRE([gt_PRINTF_POSIX]) AC_REQUIRE([AC_FUNC_ALLOCA])dnl AC_REQUIRE([AC_FUNC_MMAP])dnl - AC_REQUIRE([jm_GLIBC21])dnl + AC_REQUIRE([gl_GLIBC21])dnl AC_REQUIRE([gt_INTDIV0])dnl - AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])dnl + AC_REQUIRE([gl_AC_TYPE_UINTMAX_T])dnl AC_REQUIRE([gt_HEADER_INTTYPES_H])dnl AC_REQUIRE([gt_INTTYPES_PRI])dnl AC_REQUIRE([gl_XSIZE])dnl + AC_REQUIRE([gt_INTL_MACOSX])dnl AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], @@ -427,7 +441,11 @@ AM_ICONV AM_LANGINFO_CODESET if test $ac_cv_header_locale_h = yes; then - AM_LC_MESSAGES + gt_LC_MESSAGES + fi + + if test -n "$INTL_MACOSX_LIBS"; then + CPPFLAGS="$CPPFLAGS -I/System/Library/Frameworks/CoreFoundation.framework/Headers" fi dnl intl/plural.c is generated from intl/plural.y. It requires bison, @@ -463,6 +481,50 @@ ]) +dnl Checks for special options needed on MacOS X. +dnl Defines INTL_MACOSX_LIBS. +AC_DEFUN([gt_INTL_MACOSX], +[ + dnl Check for API introduced in MacOS X 10.2. + AC_CACHE_CHECK([for CFPreferencesCopyAppValue], + gt_cv_func_CFPreferencesCopyAppValue, + [gt_save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS -I/System/Library/Frameworks/CoreFoundation.framework/Headers" + gt_save_LIBS="$LIBS" + LIBS="$LIBS -framework CoreFoundation" + AC_TRY_LINK([#include ], + [CFPreferencesCopyAppValue(NULL, NULL)], + [gt_cv_func_CFPreferencesCopyAppValue=yes], + [gt_cv_func_CFPreferencesCopyAppValue=no]) + CPPFLAGS="$gt_save_CPPFLAGS" + LIBS="$gt_save_LIBS"]) + if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then + AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], 1, + [Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in the CoreFoundation framework.]) + fi + dnl Check for API introduced in MacOS X 10.3. + AC_CACHE_CHECK([for CFLocaleCopyCurrent], gt_cv_func_CFLocaleCopyCurrent, + [gt_save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS -I/System/Library/Frameworks/CoreFoundation.framework/Headers" + gt_save_LIBS="$LIBS" + LIBS="$LIBS -framework CoreFoundation" + AC_TRY_LINK([#include ], [CFLocaleCopyCurrent();], + [gt_cv_func_CFLocaleCopyCurrent=yes], + [gt_cv_func_CFLocaleCopyCurrent=no]) + CPPFLAGS="$gt_save_CPPFLAGS" + LIBS="$gt_save_LIBS"]) + if test $gt_cv_func_CFLocaleCopyCurrent = yes; then + AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], 1, + [Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the CoreFoundation framework.]) + fi + INTL_MACOSX_LIBS= + if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then + INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" + fi + AC_SUBST([INTL_MACOSX_LIBS]) +]) + + dnl gt_CHECK_DECL(FUNC, INCLUDES) dnl Check whether a function is declared. AC_DEFUN([gt_CHECK_DECL], diff -urN gawk-3.1.4/m4/glibc2.m4 gawk-3.1.5/m4/glibc2.m4 --- gawk-3.1.4/m4/glibc2.m4 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/m4/glibc2.m4 2005-05-11 18:28:16.000000000 +0300 @@ -0,0 +1,30 @@ +# glibc2.m4 serial 1 +dnl Copyright (C) 2000-2002, 2004 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +# Test for the GNU C Library, version 2.0 or newer. +# From Bruno Haible. + +AC_DEFUN([gt_GLIBC2], + [ + AC_CACHE_CHECK(whether we are using the GNU C Library 2 or newer, + ac_cv_gnu_library_2, + [AC_EGREP_CPP([Lucky GNU user], + [ +#include +#ifdef __GNU_LIBRARY__ + #if (__GLIBC__ >= 2) + Lucky GNU user + #endif +#endif + ], + ac_cv_gnu_library_2=yes, + ac_cv_gnu_library_2=no) + ] + ) + AC_SUBST(GLIBC2) + GLIBC2="$ac_cv_gnu_library_2" + ] +) diff -urN gawk-3.1.4/m4/glibc21.m4 gawk-3.1.5/m4/glibc21.m4 --- gawk-3.1.4/m4/glibc21.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/glibc21.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,15 +1,13 @@ -# glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40) -dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# glibc21.m4 serial 3 +dnl Copyright (C) 2000-2002, 2004 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. # Test for the GNU C Library, version 2.1 or newer. # From Bruno Haible. -AC_DEFUN([jm_GLIBC21], +AC_DEFUN([gl_GLIBC21], [ AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer, ac_cv_gnu_library_2_1, diff -urN gawk-3.1.4/m4/iconv.m4 gawk-3.1.5/m4/iconv.m4 --- gawk-3.1.4/m4/iconv.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/iconv.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # iconv.m4 serial AM4 (gettext-0.11.3) dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. diff -urN gawk-3.1.4/m4/intdiv0.m4 gawk-3.1.5/m4/intdiv0.m4 --- gawk-3.1.4/m4/intdiv0.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/intdiv0.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # intdiv0.m4 serial 1 (gettext-0.11.3) dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. diff -urN gawk-3.1.4/m4/intmax.m4 gawk-3.1.5/m4/intmax.m4 --- gawk-3.1.4/m4/intmax.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/intmax.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ -# intmax.m4 serial 1 (gettext-0.12) -dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# intmax.m4 serial 2 (gettext-0.14.2) +dnl Copyright (C) 2002-2005 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. dnl Test whether the system has the 'intmax_t' type, but don't attempt to @@ -12,11 +10,11 @@ AC_DEFUN([gt_TYPE_INTMAX_T], [ - AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) - AC_REQUIRE([jm_AC_HEADER_STDINT_H]) + AC_REQUIRE([gl_AC_HEADER_INTTYPES_H]) + AC_REQUIRE([gl_AC_HEADER_STDINT_H]) AC_CACHE_CHECK(for intmax_t, gt_cv_c_intmax_t, [AC_TRY_COMPILE([ -#include +#include #include #if HAVE_STDINT_H_WITH_UINTMAX #include diff -urN gawk-3.1.4/m4/intmax_t.m4 gawk-3.1.5/m4/intmax_t.m4 --- gawk-3.1.4/m4/intmax_t.m4 2003-03-28 11:30:36.000000000 +0300 +++ gawk-3.1.5/m4/intmax_t.m4 2005-05-30 21:31:39.000000000 +0300 @@ -6,15 +6,23 @@ # Define intmax_t to long or long long if doesn't define. -AC_DEFUN([jm_AC_TYPE_INTMAX_T], +AC_DEFUN([gl_AC_TYPE_INTMAX_T], [ - AC_REQUIRE([jm_AC_TYPE_LONG_LONG]) - AC_CHECK_TYPE(intmax_t, , - [test $ac_cv_type_long_long = yes \ - && ac_type='long long' \ - || ac_type='long' - AC_DEFINE_UNQUOTED(intmax_t, $ac_type, - [Define to widest signed type if doesn't define.])]) + dnl For simplicity, we assume that a header file defines 'intmax_t' if and + dnl only if it defines 'uintmax_t'. + AC_REQUIRE([gl_AC_HEADER_INTTYPES_H]) + AC_REQUIRE([gl_AC_HEADER_STDINT_H]) + if test $gl_cv_header_inttypes_h = no && test $gl_cv_header_stdint_h = no; then + AC_REQUIRE([gl_AC_TYPE_LONG_LONG]) + test $ac_cv_type_long_long = yes \ + && ac_type='long long' \ + || ac_type='long' + AC_DEFINE_UNQUOTED(intmax_t, $ac_type, + [Define to long or long long if and don't define.]) + else + AC_DEFINE(HAVE_INTMAX_T, 1, + [Define if you have the 'intmax_t' type in or .]) + fi ]) # Define uintmax_t to unsigned long or unsigned long long diff -urN gawk-3.1.4/m4/inttypes-pri.m4 gawk-3.1.5/m4/inttypes-pri.m4 --- gawk-3.1.4/m4/inttypes-pri.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/inttypes-pri.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # inttypes-pri.m4 serial 1 (gettext-0.11.4) dnl Copyright (C) 1997-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. diff -urN gawk-3.1.4/m4/inttypes.m4 gawk-3.1.5/m4/inttypes.m4 --- gawk-3.1.4/m4/inttypes.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/inttypes.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # inttypes.m4 serial 1 (gettext-0.11.4) dnl Copyright (C) 1997-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Paul Eggert. diff -urN gawk-3.1.4/m4/inttypes_h.m4 gawk-3.1.5/m4/inttypes_h.m4 --- gawk-3.1.4/m4/inttypes_h.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/inttypes_h.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,26 +1,24 @@ -# inttypes_h.m4 serial 5 (gettext-0.12) -dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# inttypes_h.m4 serial 6 +dnl Copyright (C) 1997-2004 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Paul Eggert. # Define HAVE_INTTYPES_H_WITH_UINTMAX if exists, # doesn't clash with , and declares uintmax_t. -AC_DEFUN([jm_AC_HEADER_INTTYPES_H], +AC_DEFUN([gl_AC_HEADER_INTTYPES_H], [ - AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h, + AC_CACHE_CHECK([for inttypes.h], gl_cv_header_inttypes_h, [AC_TRY_COMPILE( [#include #include ], [uintmax_t i = (uintmax_t) -1;], - jm_ac_cv_header_inttypes_h=yes, - jm_ac_cv_header_inttypes_h=no)]) - if test $jm_ac_cv_header_inttypes_h = yes; then + gl_cv_header_inttypes_h=yes, + gl_cv_header_inttypes_h=no)]) + if test $gl_cv_header_inttypes_h = yes; then AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1, [Define if exists, doesn't clash with , and declares uintmax_t. ]) diff -urN gawk-3.1.4/m4/isc-posix.m4 gawk-3.1.5/m4/isc-posix.m4 --- gawk-3.1.4/m4/isc-posix.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/isc-posix.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # isc-posix.m4 serial 2 (gettext-0.11.2) dnl Copyright (C) 1995-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. # This file is not needed with autoconf-2.53 and newer. Remove it in 2005. diff -urN gawk-3.1.4/m4/lcmessage.m4 gawk-3.1.5/m4/lcmessage.m4 --- gawk-3.1.4/m4/lcmessage.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/lcmessage.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ -# lcmessage.m4 serial 3 (gettext-0.11.3) -dnl Copyright (C) 1995-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# lcmessage.m4 serial 4 (gettext-0.14.2) +dnl Copyright (C) 1995-2002, 2004-2005 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public @@ -20,12 +18,12 @@ # Check whether LC_MESSAGES is available in . -AC_DEFUN([AM_LC_MESSAGES], +AC_DEFUN([gt_LC_MESSAGES], [ - AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, + AC_CACHE_CHECK([for LC_MESSAGES], gt_cv_val_LC_MESSAGES, [AC_TRY_LINK([#include ], [return LC_MESSAGES], - am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) - if test $am_cv_val_LC_MESSAGES = yes; then + gt_cv_val_LC_MESSAGES=yes, gt_cv_val_LC_MESSAGES=no)]) + if test $gt_cv_val_LC_MESSAGES = yes; then AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your file defines LC_MESSAGES.]) fi diff -urN gawk-3.1.4/m4/lib-ld.m4 gawk-3.1.5/m4/lib-ld.m4 --- gawk-3.1.4/m4/lib-ld.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/lib-ld.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # lib-ld.m4 serial 3 (gettext-0.13) dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl Subroutines of libtool.m4, dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision diff -urN gawk-3.1.4/m4/lib-link.m4 gawk-3.1.5/m4/lib-link.m4 --- gawk-3.1.4/m4/lib-link.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/lib-link.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,13 +1,13 @@ -# lib-link.m4 serial 4 (gettext-0.12) -dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# lib-link.m4 serial 6 (gettext-0.14.3) +dnl Copyright (C) 2001-2005 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. +AC_PREREQ(2.50) + dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and dnl the libraries corresponding to explicit and implicit dependencies. dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and @@ -95,6 +95,8 @@ dnl hardcode_direct, hardcode_minus_L. AC_DEFUN([AC_LIB_RPATH], [ + dnl Tell automake >= 1.10 to complain if config.rpath is missing. + m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])]) AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host @@ -350,7 +352,7 @@ if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi @@ -399,7 +401,7 @@ if test "X$additional_libdir" = "X/usr/local/lib"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi diff -urN gawk-3.1.4/m4/lib-prefix.m4 gawk-3.1.5/m4/lib-prefix.m4 --- gawk-3.1.4/m4/lib-prefix.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/lib-prefix.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ -# lib-prefix.m4 serial 3 (gettext-0.13) -dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# lib-prefix.m4 serial 4 (gettext-0.14.2) +dnl Copyright (C) 2001-2005 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. @@ -71,7 +69,7 @@ if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi diff -urN gawk-3.1.4/m4/longdouble.m4 gawk-3.1.5/m4/longdouble.m4 --- gawk-3.1.4/m4/longdouble.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/longdouble.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # longdouble.m4 serial 1 (gettext-0.12) dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. dnl Test whether the compiler supports the 'long double' type. diff -urN gawk-3.1.4/m4/longlong.m4 gawk-3.1.5/m4/longlong.m4 --- gawk-3.1.4/m4/longlong.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/longlong.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,16 +1,14 @@ -# longlong.m4 serial 4 -dnl Copyright (C) 1999-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# longlong.m4 serial 5 +dnl Copyright (C) 1999-2004 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Paul Eggert. # Define HAVE_LONG_LONG if 'long long' works. -AC_DEFUN([jm_AC_TYPE_LONG_LONG], +AC_DEFUN([gl_AC_TYPE_LONG_LONG], [ AC_CACHE_CHECK([for long long], ac_cv_type_long_long, [AC_TRY_LINK([long long ll = 1LL; int i = 63;], diff -urN gawk-3.1.4/m4/nls.m4 gawk-3.1.5/m4/nls.m4 --- gawk-3.1.4/m4/nls.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/nls.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ -# nls.m4 serial 1 (gettext-0.12) -dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# nls.m4 serial 2 (gettext-0.14.3) +dnl Copyright (C) 1995-2003, 2005 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public @@ -19,6 +17,8 @@ dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. +AC_PREREQ(2.50) + AC_DEFUN([AM_NLS], [ AC_MSG_CHECKING([whether NLS is requested]) @@ -32,6 +32,8 @@ AC_DEFUN([AM_MKINSTALLDIRS], [ + dnl Tell automake >= 1.10 to complain if mkinstalldirs is missing. + m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([mkinstalldirs])]) dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly dnl find the mkinstalldirs script in another subdir but $(top_srcdir). dnl Try to locate it. diff -urN gawk-3.1.4/m4/po.m4 gawk-3.1.5/m4/po.m4 --- gawk-3.1.4/m4/po.m4 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/m4/po.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ -# po.m4 serial 3 (gettext-0.14) -dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# po.m4 serial 7 (gettext-0.14.3) +dnl Copyright (C) 1995-2005 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public @@ -19,6 +17,8 @@ dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. +AC_PREREQ(2.50) + dnl Checks for all prerequisites of the po subdirectory. AC_DEFUN([AM_PO_SUBDIRS], [ @@ -34,7 +34,7 @@ dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions. dnl The second test excludes FreeBSD msgfmt. AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, - [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && + [$ac_dir/$ac_word --statistics /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], :) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) @@ -43,7 +43,7 @@ dnl The first test excludes Solaris xgettext and early GNU xgettext versions. dnl The second test excludes FreeBSD xgettext. AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, - [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && + [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], :) dnl Remove leftover from FreeBSD xgettext call. @@ -51,7 +51,7 @@ dnl Search for GNU msgmerge 0.11 or newer in the PATH. AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, - [$ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1], :) + [$ac_dir/$ac_word --update -q /dev/null /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1], :) dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. dnl Test whether we really found GNU msgfmt. @@ -106,6 +106,9 @@ /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac + # Treat a directory as a PO directory if and only if it has a + # POTFILES.in file. This allows packages to have multiple PO + # directories under different names or in different locations. if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then rm -f "$ac_dir/POTFILES" test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" @@ -119,7 +122,7 @@ if test -n "$OBSOLETE_ALL_LINGUAS"; then test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" fi - ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` + ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` # Hide the ALL_LINGUAS assigment from automake. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" @@ -298,7 +301,7 @@ fi if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then # The LINGUAS file contains the set of available languages. - ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` + ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" else # Set ALL_LINGUAS to the value of the Makefile variable LINGUAS. @@ -348,7 +351,7 @@ QMFILES="$QMFILES $srcdirpre$lang.qm" frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` MSGFILES="$MSGFILES $srcdirpre$frobbedlang.msg" - frobbedlang=`echo $lang | sed -e 's/_/-/g'` + frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` RESOURCESDLLFILES="$RESOURCESDLLFILES $srcdirpre$frobbedlang/\$(DOMAIN).resources.dll" done # CATALOGS depends on both $ac_dir and the user's LINGUAS @@ -389,7 +392,7 @@ QTCATALOGS="$QTCATALOGS $lang.qm" frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` TCLCATALOGS="$TCLCATALOGS $frobbedlang.msg" - frobbedlang=`echo $lang | sed -e 's/_/-/g'` + frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` CSHARPCATALOGS="$CSHARPCATALOGS $frobbedlang/\$(DOMAIN).resources.dll" done fi @@ -409,7 +412,7 @@ if grep -l '@CSHARPCATALOGS@' "$ac_file" > /dev/null; then # Add dependencies that cannot be formulated as a simple suffix rule. for lang in $ALL_LINGUAS; do - frobbedlang=`echo $lang | sed -e 's/_/-/g'` + frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` cat >> "$ac_file.tmp" <, 1996. +AC_PREREQ(2.50) + # Search path for a program which passes the given test. dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, @@ -67,6 +67,7 @@ test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then + echo "$as_me: trying $ac_dir/$ac_word..." >&AS_MESSAGE_LOG_FD if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext" break 2 diff -urN gawk-3.1.4/m4/signed.m4 gawk-3.1.5/m4/signed.m4 --- gawk-3.1.4/m4/signed.m4 2004-02-19 23:08:41.000000000 +0200 +++ gawk-3.1.5/m4/signed.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # signed.m4 serial 1 (gettext-0.10.40) dnl Copyright (C) 2001-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. diff -urN gawk-3.1.4/m4/size_max.m4 gawk-3.1.5/m4/size_max.m4 --- gawk-3.1.4/m4/size_max.m4 2004-02-19 23:08:41.000000000 +0200 +++ gawk-3.1.5/m4/size_max.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # size_max.m4 serial 2 dnl Copyright (C) 2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. diff -urN gawk-3.1.4/m4/socket.m4 gawk-3.1.5/m4/socket.m4 --- gawk-3.1.4/m4/socket.m4 2004-01-15 15:47:45.000000000 +0200 +++ gawk-3.1.5/m4/socket.m4 2005-05-11 18:28:16.000000000 +0300 @@ -18,7 +18,7 @@ dnl dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA dnl dnl Find the socket libraries diff -urN gawk-3.1.4/m4/stdint_h.m4 gawk-3.1.5/m4/stdint_h.m4 --- gawk-3.1.4/m4/stdint_h.m4 2004-02-19 23:08:41.000000000 +0200 +++ gawk-3.1.5/m4/stdint_h.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,26 +1,24 @@ -# stdint_h.m4 serial 3 (gettext-0.12) -dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# stdint_h.m4 serial 5 +dnl Copyright (C) 1997-2004 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Paul Eggert. # Define HAVE_STDINT_H_WITH_UINTMAX if exists, # doesn't clash with , and declares uintmax_t. -AC_DEFUN([jm_AC_HEADER_STDINT_H], +AC_DEFUN([gl_AC_HEADER_STDINT_H], [ - AC_CACHE_CHECK([for stdint.h], jm_ac_cv_header_stdint_h, + AC_CACHE_CHECK([for stdint.h], gl_cv_header_stdint_h, [AC_TRY_COMPILE( [#include #include ], [uintmax_t i = (uintmax_t) -1;], - jm_ac_cv_header_stdint_h=yes, - jm_ac_cv_header_stdint_h=no)]) - if test $jm_ac_cv_header_stdint_h = yes; then + gl_cv_header_stdint_h=yes, + gl_cv_header_stdint_h=no)]) + if test $gl_cv_header_stdint_h = yes; then AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1, [Define if exists, doesn't clash with , and declares uintmax_t. ]) diff -urN gawk-3.1.4/m4/strtod.m4 gawk-3.1.5/m4/strtod.m4 --- gawk-3.1.4/m4/strtod.m4 2004-01-15 15:48:15.000000000 +0200 +++ gawk-3.1.5/m4/strtod.m4 2005-05-11 18:28:16.000000000 +0300 @@ -18,7 +18,7 @@ dnl dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA dnl Check for strtod with C89 semantics diff -urN gawk-3.1.4/m4/uintmax_t.m4 gawk-3.1.5/m4/uintmax_t.m4 --- gawk-3.1.4/m4/uintmax_t.m4 2004-02-19 23:08:41.000000000 +0200 +++ gawk-3.1.5/m4/uintmax_t.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ -# uintmax_t.m4 serial 7 (gettext-0.12) -dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# uintmax_t.m4 serial 9 +dnl Copyright (C) 1997-2004 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Paul Eggert. @@ -13,12 +11,12 @@ # Define uintmax_t to 'unsigned long' or 'unsigned long long' # if it is not already defined in or . -AC_DEFUN([jm_AC_TYPE_UINTMAX_T], +AC_DEFUN([gl_AC_TYPE_UINTMAX_T], [ - AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) - AC_REQUIRE([jm_AC_HEADER_STDINT_H]) - if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then - AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG]) + AC_REQUIRE([gl_AC_HEADER_INTTYPES_H]) + AC_REQUIRE([gl_AC_HEADER_STDINT_H]) + if test $gl_cv_header_inttypes_h = no && test $gl_cv_header_stdint_h = no; then + AC_REQUIRE([gl_AC_TYPE_UNSIGNED_LONG_LONG]) test $ac_cv_type_unsigned_long_long = yes \ && ac_type='unsigned long long' \ || ac_type='unsigned long' diff -urN gawk-3.1.4/m4/ulonglong.m4 gawk-3.1.5/m4/ulonglong.m4 --- gawk-3.1.4/m4/ulonglong.m4 2004-02-19 23:08:41.000000000 +0200 +++ gawk-3.1.5/m4/ulonglong.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,16 +1,14 @@ -# ulonglong.m4 serial 3 -dnl Copyright (C) 1999-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# ulonglong.m4 serial 4 +dnl Copyright (C) 1999-2004 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Paul Eggert. # Define HAVE_UNSIGNED_LONG_LONG if 'unsigned long long' works. -AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG], +AC_DEFUN([gl_AC_TYPE_UNSIGNED_LONG_LONG], [ AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long, [AC_TRY_LINK([unsigned long long ull = 1ULL; int i = 63;], diff -urN gawk-3.1.4/m4/wchar_t.m4 gawk-3.1.5/m4/wchar_t.m4 --- gawk-3.1.4/m4/wchar_t.m4 2004-02-19 23:08:41.000000000 +0200 +++ gawk-3.1.5/m4/wchar_t.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # wchar_t.m4 serial 1 (gettext-0.12) dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. dnl Test whether has the 'wchar_t' type. diff -urN gawk-3.1.4/m4/wint_t.m4 gawk-3.1.5/m4/wint_t.m4 --- gawk-3.1.4/m4/wint_t.m4 2004-02-19 23:08:41.000000000 +0200 +++ gawk-3.1.5/m4/wint_t.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,10 +1,8 @@ # wint_t.m4 serial 1 (gettext-0.12) dnl Copyright (C) 2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. dnl Test whether has the 'wint_t' type. diff -urN gawk-3.1.4/m4/xsize.m4 gawk-3.1.5/m4/xsize.m4 --- gawk-3.1.4/m4/xsize.m4 2004-02-19 23:08:41.000000000 +0200 +++ gawk-3.1.5/m4/xsize.m4 2005-05-11 18:28:16.000000000 +0300 @@ -1,14 +1,13 @@ -# xsize.m4 serial 2 -dnl Copyright (C) 2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# xsize.m4 serial 3 +dnl Copyright (C) 2003-2004 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_XSIZE], [ dnl Prerequisites of lib/xsize.h. AC_REQUIRE([gl_SIZE_MAX]) + AC_REQUIRE([AC_C_INLINE]) AC_CHECK_HEADERS(stdint.h) ]) diff -urN gawk-3.1.4/main.c gawk-3.1.5/main.c --- gawk-3.1.4/main.c 2004-07-28 16:42:19.000000000 +0300 +++ gawk-3.1.5/main.c 2005-07-06 17:05:14.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2004 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,9 +20,12 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ +/* FIX THIS BEFORE EVERY RELEASE: */ +#define UPDATE_YEAR 2005 + #include "awk.h" #include "getopt.h" @@ -44,6 +47,8 @@ static void cmdline_fs P((char *str)); static void init_args P((int argc0, int argc, char *argv0, char **argv)); static void init_vars P((void)); +static NODE *load_environ P((void)); +static NODE *load_procinfo P((void)); static void add_src P((struct src **data, long *num, long *alloc, enum srctype stype, char *val)); static RETSIGTYPE catchsig P((int sig)) ATTRIBUTE_NORETURN; static void nostalgia P((void)) ATTRIBUTE_NORETURN; @@ -82,9 +87,9 @@ NODE *Nnull_string; /* The global null string */ -#if ENABLE_NLS && defined(HAVE_LOCALE_H) +#if defined(HAVE_LOCALE_H) struct lconv loc; /* current locale */ -#endif /* ENABLE_NLS && defined(HAVE_LOCALE_H) */ +#endif /* defined(HAVE_LOCALE_H) */ /* The name the program was invoked under, for error messages */ const char *myname; @@ -113,6 +118,8 @@ static long numassigns = -1; /* how many of them */ static long allocassigns; /* for how many is allocated */ +static int disallow_var_assigns = FALSE; /* true for --exec */ + #define preassigns_add(stype, val) \ add_src(&preassigns, &numassigns, &allocassigns, stype, val) @@ -135,7 +142,9 @@ int in_end_rule = FALSE; /* we're in a END rule */ int whiny_users = FALSE; /* do things that whiny users want */ #ifdef MBS_SUPPORT -int gawk_mb_cur_max = 1; /* MB_CUR_MAX value, see comment in main() */ +int gawk_mb_cur_max; /* MB_CUR_MAX value, see comment in main() */ +#else +const int gawk_mb_cur_max = 1; #endif int output_is_tty = FALSE; /* control flushing of output */ @@ -181,6 +190,7 @@ { "version", no_argument, NULL, 'V' }, { "usage", no_argument, NULL, 'u' }, { "help", no_argument, NULL, 'u' }, + { "exec", required_argument, NULL, 'S' }, #ifdef GAWKDEBUG { "parsedebug", no_argument, NULL, 'D' }, #endif @@ -207,6 +217,7 @@ extern int opterr; extern char *optarg; int i; + int stdio_problem = FALSE; /* do these checks early */ if (getenv("TIDYMEM") != NULL) @@ -226,7 +237,7 @@ #if defined(LC_COLLATE) setlocale(LC_COLLATE, ""); #endif -#if HAVE_LC_MESSAGES && defined(LC_MESSAGES) +#if defined(LC_MESSAGES) setlocale(LC_MESSAGES, ""); #endif #if defined(LC_NUMERIC) @@ -249,6 +260,7 @@ * this value once makes a speed difference. */ gawk_mb_cur_max = MB_CUR_MAX; + /* Without MBS_SUPPORT, gawk_mb_cur_max is 1. */ #endif (void) bindtextdomain(PACKAGE, LOCALEDIR); @@ -292,6 +304,9 @@ preassigns_add(PRE_ASSIGN_FS, optarg); break; + case 'S': + disallow_var_assigns = TRUE; + /* fall through */ case 'f': /* * a la MKS awk, allow multiple -f options. @@ -436,6 +451,8 @@ let getopt print error message for us */ break; } + if (c == 'S') /* --exec ends option processing */ + break; } out: @@ -532,6 +549,15 @@ init_args(optind, argc, (char *) myname, argv); (void) tokexpand(); +#if defined(LC_NUMERIC) + /* + * FRAGILE! CAREFUL! + * Pre-initing the variables with arg_assign() can change the + * locale. Force it to C before parsing the program. + */ + setlocale(LC_NUMERIC, "C"); +#endif + /* Read in the program */ if (yyparse() != 0 || errcount != 0) exit(1); @@ -555,7 +581,7 @@ setlocale(LC_NUMERIC, ""); #endif -#if ENABLE_NLS && defined(HAVE_LOCALE_H) +#if defined(HAVE_LOCALE_H) loc = *localeconv(); /* Make a local copy of locale numeric info */ #endif @@ -572,7 +598,23 @@ (void) interpret(end_block); } in_end_rule = FALSE; - if (close_io() != 0 && ! exiting && exit_val == 0) + /* + * This used to be: + * + * if (close_io() != 0 && ! exiting && exit_val == 0) + * exit_val = 1; + * + * Other awks don't care about problems closing open files + * and pipes, in that it doesn't affect their exit status. + * So we no longer do either. + */ + (void) close_io(& stdio_problem); + /* + * However, we do want to exit non-zero if there was a problem + * with stdout/stderr, so we reinstate a slightly different + * version of the above: + */ + if (stdio_problem && ! exiting && exit_val == 0) exit_val = 1; if (do_profiling) { @@ -636,6 +678,7 @@ fputs(_("\t-W copyleft\t\t--copyleft\n"), fp); fputs(_("\t-W copyright\t\t--copyright\n"), fp); fputs(_("\t-W dump-variables[=file]\t--dump-variables[=file]\n"), fp); + fputs(_("\t-W exec=file\t\t--exec=file\n"), fp); fputs(_("\t-W gen-po\t\t--gen-po\n"), fp); fputs(_("\t-W help\t\t\t--help\n"), fp); fputs(_("\t-W lint[=fatal]\t\t--lint[=fatal]\n"), fp); @@ -670,8 +713,11 @@ fflush(fp); - if (ferror(fp)) + if (ferror(fp)) { + if (fp == stdout) + warning(_("error writing standard output (%s)"), strerror(errno)); exit(1); + } exit(exitval); } @@ -698,16 +744,18 @@ static const char blurb_part3[] = N_("You should have received a copy of the GNU General Public License\n\ along with this program; if not, write to the Free Software\n\ -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n"); +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n"); /* multiple blurbs are needed for some brain dead compilers. */ - printf(_(blurb_part1), 2003); /* Last update year */ + printf(_(blurb_part1), UPDATE_YEAR); /* Last update year */ fputs(_(blurb_part2), stdout); fputs(_(blurb_part3), stdout); fflush(stdout); - if (ferror(stdout)) + if (ferror(stdout)) { + warning(_("error writing standard output (%s)"), strerror(errno)); exit(1); + } exit(0); } @@ -816,11 +864,16 @@ if (vp->assign) (*(vp->assign))(); } + + /* Set up deferred variables (loaded only when accessed). */ + if (! do_traditional) + register_deferred_variable("PROCINFO", load_procinfo); + register_deferred_variable("ENVIRON", load_environ); } /* load_environ --- populate the ENVIRON array */ -NODE * +static NODE * load_environ() { #if ! defined(TANDEM) @@ -867,7 +920,7 @@ /* load_procinfo --- populate the PROCINFO array */ -NODE * +static NODE * load_procinfo() { int i; @@ -952,6 +1005,9 @@ NODE *it; NODE **lhs; + if (! initing && disallow_var_assigns) + return FALSE; /* --exec */ + cp = strchr(arg, '='); if (cp == NULL) { @@ -1066,6 +1122,7 @@ struct stat sbuf; int fd; int newfd; + char const *const opposite_mode[] = {"w", "r", "r"}; /* maybe no stderr, don't bother with error mesg */ for (fd = 0; fd <= 2; fd++) { @@ -1074,7 +1131,7 @@ if (do_lint) lintwarn(_("no pre-opened fd %d"), fd); #endif - newfd = devopen("/dev/null", "r+"); + newfd = devopen("/dev/null", opposite_mode[fd]); /* turn off some compiler warnings "set but not used" */ newfd += 0; #ifdef MAKE_A_HEROIC_EFFORT diff -urN gawk-3.1.4/mbsupport.h gawk-3.1.5/mbsupport.h --- gawk-3.1.4/mbsupport.h 2004-02-09 14:07:09.000000000 +0200 +++ gawk-3.1.5/mbsupport.h 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 2004 the Free Software Foundation, Inc. + * Copyright (C) 2004, 2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,11 +20,11 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* - * This file is needed because we test for 1i8n support in 3 different + * This file is needed because we test for i18n support in 3 different * places, and we want a consistent definition in all of them. Following * the ``Don't Repeat Yourself'' principle from "The Pragmatic Programmer", * we centralize the tests here. @@ -46,6 +46,11 @@ && defined(HAVE_WCTYPE) \ && defined(HAVE_WCTYPE_H) \ && defined(HAVE_WCTYPE_T) \ + && defined(HAVE_WINT_T) \ + && defined(HAVE_ISWLOWER) \ + && defined(HAVE_ISWUPPER) \ + && defined(HAVE_TOWLOWER) \ + && defined(HAVE_TOWUPPER) \ && (defined(HAVE_STDLIB_H) && defined(MB_CUR_MAX)) \ /* We can handle multibyte strings. */ # define MBS_SUPPORT 1 diff -urN gawk-3.1.4/missing gawk-3.1.5/missing --- gawk-3.1.4/missing 2004-06-21 16:38:34.000000000 +0300 +++ gawk-3.1.5/missing 2005-05-11 18:28:16.000000000 +0300 @@ -1,9 +1,9 @@ #! /bin/sh # Common stub for a few missing GNU programs while installing. -scriptversion=2003-09-02.23 +scriptversion=2005-02-08.22 -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003 +# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. @@ -19,8 +19,8 @@ # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -60,11 +60,6 @@ msg="probably too old" fi ;; -esac - -# If it does not exist, or fails to run (possibly an outdated version), -# try to emulate it. -case "$1" in -h|--h|--he|--hel|--help) echo "\ @@ -92,10 +87,12 @@ yacc create \`y.tab.[ch]', if possible, from existing .[ch] Send bug reports to ." + exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" + exit $? ;; -*) @@ -104,12 +101,42 @@ exit 1 ;; - aclocal*) +esac + +# Now exit if we have it, but it failed. Also exit now if we +# don't have it and --version was passed (most likely to detect +# the program). +case "$1" in + lex|yacc) + # Not GNU programs, they don't have --version. + ;; + + tar) + if test -n "$run"; then + echo 1>&2 "ERROR: \`tar' requires --run" + exit 1 + elif test "x$2" = "x--version" || test "x$2" = "x--help"; then + exit 1 + fi + ;; + + *) if test -z "$run" && ($1 --version) > /dev/null 2>&1; then # We have it, but it failed. exit 1 + elif test "x$2" = "x--version" || test "x$2" = "x--help"; then + # Could not run --version or --help. This is probably someone + # running `$TOOL --version' or `$TOOL --help' to check whether + # $TOOL exists and not knowing $TOOL uses missing. + exit 1 fi + ;; +esac +# If it does not exist, or fails to run (possibly an outdated version), +# try to emulate it. +case "$1" in + aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acinclude.m4' or \`${configure_ac}'. You might want @@ -119,11 +146,6 @@ ;; autoconf) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the @@ -133,11 +155,6 @@ ;; autoheader) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want @@ -157,11 +174,6 @@ ;; automake*) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. @@ -173,11 +185,6 @@ ;; autom4te) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the @@ -254,11 +261,6 @@ ;; help2man) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the @@ -279,11 +281,6 @@ ;; makeinfo) - if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then - # We have makeinfo, but it failed. - exit 1 - fi - echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.texi' or \`.texinfo' file, or any other file @@ -291,20 +288,20 @@ call might also be the consequence of using a buggy \`make' (AIX, DU, IRIX). You might want to install the \`Texinfo' package or the \`GNU make' package. Grab either from any GNU archive site." + # The file to touch is that specified with -o ... file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` if test -z "$file"; then - file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` - file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file` + # ... or it is the one specified with @setfilename ... + infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` + file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` + # ... or it is derived from the source name (dir/f.texi becomes f.info) + test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info fi touch $file ;; tar) shift - if test -n "$run"; then - echo 1>&2 "ERROR: \`tar' requires --run" - exit 1 - fi # We have already tried tar in the generic part. # Look for gnutar/gtar before invocation to avoid ugly error diff -urN gawk-3.1.4/missing_d/COPYING.LIB gawk-3.1.5/missing_d/COPYING.LIB --- gawk-3.1.4/missing_d/COPYING.LIB 2000-02-16 09:57:31.000000000 +0200 +++ gawk-3.1.5/missing_d/COPYING.LIB 2005-05-11 18:28:16.000000000 +0300 @@ -2,7 +2,7 @@ Version 2, June 1991 Copyright (C) 1991 Free Software Foundation, Inc. - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -464,8 +464,8 @@ You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, - MA 02111-1307, USA + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. diff -urN gawk-3.1.4/missing_d/ChangeLog gawk-3.1.5/missing_d/ChangeLog --- gawk-3.1.4/missing_d/ChangeLog 2004-08-02 12:19:02.000000000 +0300 +++ gawk-3.1.5/missing_d/ChangeLog 2005-07-26 21:46:53.000000000 +0300 @@ -1,3 +1,13 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + +Tue Jul 26 21:27:46 2005 Arnold D. Robbins + + * strtod.c (gawk_strtod) [ENABLE_NLS]: Removed from conditional + paralleling change to main.c. + * stroul.c (strtoul): Same. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/missing_d/mktime.c gawk-3.1.5/missing_d/mktime.c --- gawk-3.1.4/missing_d/mktime.c 2001-04-09 13:28:39.000000000 +0300 +++ gawk-3.1.5/missing_d/mktime.c 2005-05-11 18:28:16.000000000 +0300 @@ -14,8 +14,8 @@ You should have received a copy of the GNU Library General Public License along with the GNU C Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ /* Define this to have a standalone program to test this implementation of mktime. */ diff -urN gawk-3.1.4/missing_d/strerror.c gawk-3.1.5/missing_d/strerror.c --- gawk-3.1.4/missing_d/strerror.c 2000-02-16 09:57:31.000000000 +0200 +++ gawk-3.1.5/missing_d/strerror.c 2005-05-11 18:28:16.000000000 +0300 @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #if 0 #include diff -urN gawk-3.1.4/missing_d/strftime.c gawk-3.1.5/missing_d/strftime.c --- gawk-3.1.4/missing_d/strftime.c 2003-02-04 11:39:15.000000000 +0200 +++ gawk-3.1.5/missing_d/strftime.c 2005-05-11 18:28:16.000000000 +0300 @@ -14,8 +14,8 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ #ifdef HAVE_CONFIG_H # include diff -urN gawk-3.1.4/missing_d/strtod.c gawk-3.1.5/missing_d/strtod.c --- gawk-3.1.4/missing_d/strtod.c 2004-06-06 14:26:06.000000000 +0300 +++ gawk-3.1.5/missing_d/strtod.c 2005-07-26 21:27:35.000000000 +0300 @@ -69,7 +69,7 @@ } if ( -#if ENABLE_NLS && defined(HAVE_LOCALE_H) +#if defined(HAVE_LOCALE_H) loc.decimal_point != NULL ? *s == loc.decimal_point[0] : *s == '.' diff -urN gawk-3.1.4/missing_d/strtoul.c gawk-3.1.5/missing_d/strtoul.c --- gawk-3.1.4/missing_d/strtoul.c 2004-05-03 09:36:44.000000000 +0300 +++ gawk-3.1.5/missing_d/strtoul.c 2005-07-26 21:27:41.000000000 +0300 @@ -93,7 +93,7 @@ */ for (; *nptr != '\0'; nptr++) { c = *nptr; -#if ENABLE_NLS && defined(HAVE_LOCALE_H) +#if defined(HAVE_LOCALE_H) if (base == 10 && loc.thousands_sep != NULL && loc.thousands_sep[0] != '\0' diff -urN gawk-3.1.4/missing_d/system.c gawk-3.1.5/missing_d/system.c --- gawk-3.1.4/missing_d/system.c 2000-02-16 09:57:31.000000000 +0200 +++ gawk-3.1.5/missing_d/system.c 2005-05-11 18:28:16.000000000 +0300 @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ extern void fatal(); diff -urN gawk-3.1.4/msg.c gawk-3.1.5/msg.c --- gawk-3.1.4/msg.c 2004-01-05 16:20:39.000000000 +0200 +++ gawk-3.1.5/msg.c 2005-05-11 18:28:16.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" diff -urN gawk-3.1.4/node.c gawk-3.1.5/node.c --- gawk-3.1.4/node.c 2004-07-28 16:45:04.000000000 +0300 +++ gawk-3.1.5/node.c 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2001, 2003, 2004 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2001, 2003-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" @@ -50,8 +50,9 @@ /* all the conditionals are an attempt to avoid the expensive strtod */ + /* Note: only set NUMCUR if we actually convert some digits */ + n->numbr = 0.0; - n->flags |= NUMCUR; if (n->stlen == 0) { if (0 && do_lint) @@ -84,6 +85,7 @@ if (ISDIGIT(*cp)) { n->numbr = (AWKNUM)(*cp - '0'); n->flags |= newflags; + n->flags |= NUMCUR; } else if (0 && do_lint) lintwarn(_("can't convert string to float")); return n->numbr; @@ -91,8 +93,9 @@ if (do_non_decimal_data) { errno = 0; - if (! do_traditional && isnondecimal(cp)) { + if (! do_traditional && isnondecimal(cp, TRUE)) { n->numbr = nondec2awknum(cp, cpend - cp); + n->flags |= NUMCUR; goto finish; } } @@ -110,6 +113,7 @@ /* the >= should be ==, but for SunOS 3.5 strtod() */ if (errno == 0 && ptr >= cpend) { n->flags |= newflags; + n->flags |= NUMCUR; } else { if (0 && do_lint && ptr < cpend) lintwarn(_("can't convert string to float")); @@ -212,6 +216,15 @@ no_malloc: s->stref = 1; s->flags |= STRCUR; +#if defined MBS_SUPPORT + if ((s->flags & WSTRCUR) != 0) { + assert(s->wstptr != NULL); + free(s->wstptr); + s->wstptr = NULL; + s->wstlen = 0; + s->flags &= ~WSTRCUR; + } +#endif return s; } @@ -274,11 +287,23 @@ *r = *n; r->flags &= ~(PERM|TEMP|FIELD); r->flags |= MALLOC; +#if defined MBS_SUPPORT + r->wstptr = NULL; +#endif /* defined MBS_SUPPORT */ if (n->type == Node_val && (n->flags & STRCUR) != 0) { r->stref = 1; emalloc(r->stptr, char *, r->stlen + 2, "dupnode"); memcpy(r->stptr, n->stptr, r->stlen); r->stptr[r->stlen] = '\0'; +#if defined MBS_SUPPORT + if ((n->flags & WSTRCUR) != 0) { + r->wstlen = n->wstlen; + emalloc(r->wstptr, wchar_t *, sizeof(wchar_t) * (r->wstlen + 2), "dupnode"); + memcpy(r->wstptr, n->wstptr, r->wstlen * sizeof(wchar_t)); + r->wstptr[r->wstlen] = L'\0'; + r->flags |= WSTRCUR; + } +#endif /* defined MBS_SUPPORT */ } else if (n->type == Node_ahash && (n->flags & MALLOC) != 0) { r->ahname_ref = 1; emalloc(r->ahname_str, char *, r->ahname_len + 2, "dupnode"); @@ -319,7 +344,12 @@ r->stref = 1; r->stptr = NULL; r->stlen = 0; -#endif +#if defined MBS_SUPPORT + r->wstptr = NULL; + r->wstlen = 0; + r->flags &= ~WSTRCUR; +#endif /* MBS_SUPPORT */ +#endif /* GAWKDEBUG */ return r; } @@ -333,6 +363,10 @@ getnode(r); r->type = Node_val; r->flags = (STRING|STRCUR|MALLOC); +#if defined MBS_SUPPORT + r->wstptr = NULL; + r->wstlen = 0; +#endif if (flags & ALREADY_MALLOCED) r->stptr = s; else { @@ -346,9 +380,32 @@ register char *ptm; register int c; register const char *end; +#ifdef MBS_SUPPORT + mbstate_t cur_state; + + memset(& cur_state, 0, sizeof(cur_state)); +#endif end = &(r->stptr[len]); for (pf = ptm = r->stptr; pf < end;) { +#ifdef MBS_SUPPORT + /* + * Keep multibyte characters together. This avoids + * problems if a subsequent byte of a multibyte + * character happens to be a backslash. + */ + if (gawk_mb_cur_max > 1) { + int mblen = mbrlen(pf, end-pf, &cur_state); + + if (mblen > 1) { + int i; + + for (i = 0; i < mblen; i++) + *ptm++ = *pf++; + continue; + } + } +#endif c = *pf++; if (c == '\\') { c = parse_escape(&pf); @@ -398,11 +455,8 @@ /* get more nodes and initialize list */ emalloc(nextfree, NODE *, NODECHUNK * sizeof(NODE), "more_nodes"); + memset(nextfree, 0, NODECHUNK * sizeof(NODE)); for (np = nextfree; np <= &nextfree[NODECHUNK - 1]; np++) { - np->flags = 0; -#ifndef NO_PROFILING - np->exec_count = 0; -#endif np->nextp = np + 1; } --np; @@ -456,6 +510,15 @@ return; } free(tmp->stptr); +#if defined MBS_SUPPORT + if (tmp->wstptr != NULL) { + assert((tmp->flags & WSTRCUR) != 0); + free(tmp->wstptr); + } + tmp->flags &= ~WSTRCUR; + tmp->wstptr = NULL; + tmp->wstlen = 0; +#endif } freenode(tmp); return; @@ -584,3 +647,203 @@ return c; } } + +/* isnondecimal --- return true if number is not a decimal number */ + +int +isnondecimal(const char *str, int use_locale) +{ + int dec_point = '.'; +#if defined(HAVE_LOCALE_H) + /* + * loc.decimal_point may not have been initialized yet, + * so double check it before using it. + */ + if (use_locale && loc.decimal_point != NULL && loc.decimal_point[0] != '\0') + dec_point = loc.decimal_point[0]; /* XXX --- assumes one char */ +#endif + + if (str[0] != '0') + return FALSE; + + /* leading 0x or 0X */ + if (str[1] == 'x' || str[1] == 'X') + return TRUE; + + /* + * Numbers with '.', 'e', or 'E' are decimal. + * Have to check so that things like 00.34 are handled right. + * + * These beasts can have trailing whitespace. Deal with that too. + */ + for (; *str != '\0'; str++) { + if (*str == 'e' || *str == 'E' || *str == dec_point) + return FALSE; + else if (! ISDIGIT(*str)) + break; + } + + return TRUE; +} + +#if defined MBS_SUPPORT +/* str2wstr --- convert a multibyte string to a wide string */ + +NODE * +str2wstr(NODE *n, size_t **ptr) +{ + size_t i, count, src_count; + char *sp; + mbstate_t mbs; + wchar_t wc, *wsp; + + assert((n->flags & (STRING|STRCUR)) != 0); + + if ((n->flags & WSTRCUR) != 0) { + if (ptr == NULL) + return n; + /* otherwise + fall through and recompute to fill in the array */ + } + + if (n->wstptr != NULL) { + free(n->wstptr); + n->wstptr = NULL; + n->wstlen = 0; + } + + /* + * After consideration and consultation, this + * code trades space for time. We allocate + * an array of wchar_t that is n->stlen long. + * This is needed in the worst case anyway, where + * each input bytes maps to one wchar_t. The + * advantage is that we only have to convert the string + * once, instead of twice, once to find out how many + * wide characters, and then again to actually fill + * the info in. If there's a lot left over, we can + * realloc the wide string down in size. + */ + + emalloc(n->wstptr, wchar_t *, sizeof(wchar_t) * (n->stlen + 2), "str2wstr"); + wsp = n->wstptr; + + /* + * For use by do_match, create and fill in an array. + * For each byte `i' in n->stptr (the original string), + * a[i] is equal to `j', where `j' is the corresponding wchar_t + * in the converted wide string. + * + * Create the array. + */ + if (ptr != NULL) { + emalloc(*ptr, size_t *, sizeof(size_t) * n->stlen, "str2wstr"); + memset(*ptr, 0, sizeof(size_t) * n->stlen); + } + + sp = n->stptr; + src_count = n->stlen; + memset(& mbs, 0, sizeof(mbs)); + for (i = 0; src_count > 0; i++) { + count = mbrtowc(& wc, sp, src_count, & mbs); + switch (count) { + case (size_t) -2: + case (size_t) -1: + case 0: + goto done; + + default: + *wsp++ = wc; + src_count -= count; + while (count--) { + if (ptr != NULL) + (*ptr)[sp - n->stptr] = i; + sp++; + } + break; + } + } + +done: + *wsp = L'\0'; + n->wstlen = i; + n->flags |= WSTRCUR; +#define ARBITRARY_AMOUNT_TO_GIVE_BACK 100 + if (n->stlen - n->wstlen > ARBITRARY_AMOUNT_TO_GIVE_BACK) + erealloc(n->wstptr, wchar_t *, sizeof(wchar_t) * (n->wstlen + 2), "str2wstr"); + + return n; +} + +#if 0 +static void +dump_wstr(FILE *fp, const wchar_t *str, size_t len) +{ + if (str == NULL || len == 0) + return; + + for (; len--; str++) + putc((int) *str, fp); +} +#endif + +/* wstrstr --- walk haystack, looking for needle, wide char version */ + +const wchar_t * +wstrstr(const wchar_t *haystack, size_t hs_len, + const wchar_t *needle, size_t needle_len) +{ + size_t i; + + if (haystack == NULL || needle == NULL || needle_len > hs_len) + return NULL; + + for (i = 0; i < hs_len; i++) { + if (haystack[i] == needle[0] + && i+needle_len-1 < hs_len + && haystack[i+needle_len-1] == needle[needle_len-1]) { + /* first & last chars match, check string */ + if (memcmp(haystack+i, needle, sizeof(wchar_t) * needle_len) == 0) { + return haystack + i; + } + } + } + + return NULL; +} + +/* wcasestrstr --- walk haystack, nocase look for needle, wide char version */ + +const wchar_t * +wcasestrstr(const wchar_t *haystack, size_t hs_len, + const wchar_t *needle, size_t needle_len) +{ + size_t i, j; + + if (haystack == NULL || needle == NULL || needle_len > hs_len) + return NULL; + + for (i = 0; i < hs_len; i++) { + if (towlower(haystack[i]) == towlower(needle[0]) + && i+needle_len-1 < hs_len + && towlower(haystack[i+needle_len-1]) == towlower(needle[needle_len-1])) { + /* first & last chars match, check string */ + const wchar_t *start; + + start = haystack+i; + for (j = 0; j < needle_len; j++, start++) { + wchar_t h, n; + + h = towlower(*start); + n = towlower(needle[j]); + if (h != n) + goto out; + } + return haystack + i; + } +out: ; + } + + return NULL; +} +#endif /* defined MBS_SUPPORT */ diff -urN gawk-3.1.4/pc/ChangeLog gawk-3.1.5/pc/ChangeLog --- gawk-3.1.4/pc/ChangeLog 2004-08-02 12:19:07.000000000 +0300 +++ gawk-3.1.5/pc/ChangeLog 2005-07-26 21:46:58.000000000 +0300 @@ -1,3 +1,32 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + +Sun Jun 26 09:31:35 2005 Scott Deifik + + * Makefile: Decrease stack size for MSC. + * Makefile.tst (Maketests): Syncronized with what's happening in + the main dist. + +Thu Apr 28 23:08:51 2005 Scott Deifik + + * config.h, Makefile.tst: Synced to main distribution. + +Wed Feb 16 10:20:18 2005 Scott Deifik + + * Makefile: Decrease stack size for MSC. + * Makefile.tst: Syncronized with what's happening in the main dist. + * config.h: Improved for DJGPP. + +Wed Feb 9 14:38:38 2005 Scott Deifik + + * Makefile, Makefile.tst: Syncronized with what's happening + in the main dist. + +Thu Feb 3 14:57:28 2005 Scott Deifik + + * config.h (SIZEOF_UNSIGNED_INT, SIZEOF_UNSIGNED_LONG): Add definitions. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/pc/Makefile gawk-3.1.5/pc/Makefile --- gawk-3.1.4/pc/Makefile 2004-06-13 17:41:03.000000000 +0300 +++ gawk-3.1.5/pc/Makefile 2005-06-26 09:31:28.000000000 +0300 @@ -214,7 +214,7 @@ #MSCCL = -FPc # If the stack gets much smaller than 3000, the "longwrds" test fails. -LMSC = link $(LF) $(LNKRSP) $(STDARGV)/NOE,$@,,/NOD:llibce $(MSCLIB)$(LF2)/STACK:0x3299,nul +LMSC = link $(LF) $(LNKRSP) $(STDARGV)/NOE,$@,,/NOD:llibce $(MSCLIB)$(LF2)/STACK:0x2eb0,nul # CLMSC-linking works when building under OS/2 diff -urN gawk-3.1.4/pc/config.h gawk-3.1.5/pc/config.h --- gawk-3.1.4/pc/config.h 2004-07-28 16:45:25.000000000 +0300 +++ gawk-3.1.5/pc/config.h 2005-07-26 21:07:43.000000000 +0300 @@ -5,7 +5,7 @@ */ /* - * Copyright (C) 1995-2004 the Free Software Foundation, Inc. + * Copyright (C) 1995-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -22,7 +22,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ @@ -230,7 +230,7 @@ /* #undef HAVE_LIBINTL_H */ /* Define if you have the header file. */ -/* #undef HAVE_LIMITS_H */ +#define HAVE_LIMITS_H 1 /* Define if you have the header file. */ /* #undef HAVE_LOCALE_H */ @@ -272,10 +272,17 @@ /* #undef HAVE_SYS_SOCKET_H */ /* Define if you have the header file. */ -/* #undef HAVE_SYS_TIME_H */ +#if defined(DJGPP) +# define HAVE_SYS_TIME_H 1 +#endif + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 /* Define if you have the header file. */ -#define HAVE_UNISTD_H 1 +#if defined(DJGPP) +# define HAVE_UNISTD_H 1 +#endif /* Define if you have the i library (-li). */ /* #undef HAVE_LIBI */ @@ -322,6 +329,23 @@ /* Define as 1 if you have catgets and don't want to use GNU gettext. */ /* #undef HAVE_CATGETS */ +/* The size of `unsigned int' & `unsigned long', as computed by sizeof. */ +#if defined(DJGPP) || defined(_MSC_VER) +# include +#endif + +#if UINT_MAX == 65536 +# define SIZEOF_UNSIGNED_INT 2 +#endif + +#if UINT_MAX == 4294967295U +# define SIZEOF_UNSIGNED_INT 4 +#endif + +#if ULONG_MAX == 4294967295UL +# define SIZEOF_UNSIGNED_LONG 4 +#endif + /* Library search path */ #define DEFPATH ".;c:/lib/awk;c:/gnu/lib/awk" diff -urN gawk-3.1.4/pc/dlfcn.c gawk-3.1.5/pc/dlfcn.c --- gawk-3.1.4/pc/dlfcn.c 2003-03-24 05:43:45.000000000 +0200 +++ gawk-3.1.5/pc/dlfcn.c 2005-05-11 18:28:16.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include diff -urN gawk-3.1.4/pc/dlfcn.h gawk-3.1.5/pc/dlfcn.h --- gawk-3.1.4/pc/dlfcn.h 2003-03-21 09:16:56.000000000 +0200 +++ gawk-3.1.5/pc/dlfcn.h 2005-05-11 18:28:16.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _DLFCN_H diff -urN gawk-3.1.4/pc/gawkmisc.pc gawk-3.1.5/pc/gawkmisc.pc --- gawk-3.1.4/pc/gawkmisc.pc 2003-10-26 15:58:29.000000000 +0200 +++ gawk-3.1.5/pc/gawkmisc.pc 2005-05-11 18:28:16.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ char quote = '\''; diff -urN gawk-3.1.4/po/ChangeLog gawk-3.1.5/po/ChangeLog --- gawk-3.1.4/po/ChangeLog 2004-08-02 12:19:12.000000000 +0300 +++ gawk-3.1.5/po/ChangeLog 2005-07-26 21:47:25.000000000 +0300 @@ -1,3 +1,7 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. @@ -38,7 +42,7 @@ Thu Sep 19 11:00:00 2002 Arnold D. Robbins - * Updatedated to gettext 0.11.5. + * Updated to gettext 0.11.5. Mon Jun 17 18:26:23 2002 Arnold D. Robbins diff -urN gawk-3.1.4/po/LINGUAS gawk-3.1.5/po/LINGUAS --- gawk-3.1.4/po/LINGUAS 2003-11-24 11:30:04.000000000 +0200 +++ gawk-3.1.5/po/LINGUAS 2005-06-27 12:21:37.000000000 +0300 @@ -11,3 +11,7 @@ pl ja ro +nl +rw +ga +vi diff -urN gawk-3.1.4/po/Makefile.in.in gawk-3.1.5/po/Makefile.in.in --- gawk-3.1.4/po/Makefile.in.in 2004-02-19 23:08:40.000000000 +0200 +++ gawk-3.1.5/po/Makefile.in.in 2005-05-11 18:28:16.000000000 +0300 @@ -1,5 +1,5 @@ # Makefile for PO directory in any package using GNU gettext. -# Copyright (C) 1995-1997, 2000-2004 by Ulrich Drepper +# Copyright (C) 1995-1997, 2000-2005 by Ulrich Drepper # # This file can be copied and used freely without restrictions. It can # be used in projects which are not available under the GNU General Public @@ -8,10 +8,11 @@ # Please note that the actual code of GNU gettext is covered by the GNU # General Public License and is *not* in the public domain. # -# Origin: gettext-0.14 +# Origin: gettext-0.14.4 PACKAGE = @PACKAGE@ VERSION = @VERSION@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ SHELL = /bin/sh @SET_MAKE@ @@ -46,7 +47,7 @@ DUMMYPOFILES = @DUMMYPOFILES@ DISTFILES.common = Makefile.in.in remove-potcdate.sin \ $(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3) -DISTFILES = $(DISTFILES.common) Makevars POTFILES.in $(DOMAIN).pot stamp-po \ +DISTFILES = $(DISTFILES.common) Makevars POTFILES.in \ $(POFILES) $(GMOFILES) \ $(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) @@ -79,6 +80,12 @@ all-yes: stamp-po all-no: +# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no +# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because +# we don't want to bother translators with empty POT files). We assume that +# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty. +# In this case, stamp-po is a nop (i.e. a phony target). + # stamp-po is a timestamp denoting the last time at which the CATALOGS have # been loosely updated. Its purpose is that when a developer or translator # checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS, @@ -88,10 +95,13 @@ # $(POFILES) has been designed to not touch files that don't need to be # changed. stamp-po: $(srcdir)/$(DOMAIN).pot - test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) - @echo "touch stamp-po" - @echo timestamp > stamp-poT - @mv stamp-poT stamp-po + test ! -f $(srcdir)/$(DOMAIN).pot || \ + test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) + @test ! -f $(srcdir)/$(DOMAIN).pot || { \ + echo "touch stamp-po" && \ + echo timestamp > stamp-poT && \ + mv stamp-poT stamp-po; \ + } # Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', # otherwise packages like GCC can not be built if only parts of the source @@ -100,11 +110,16 @@ # This target rebuilds $(DOMAIN).pot; it is an expensive operation. # Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed + if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \ + msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \ + else \ + msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \ + fi; \ $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \ --files-from=$(srcdir)/POTFILES.in \ --copyright-holder='$(COPYRIGHT_HOLDER)' \ - --msgid-bugs-address='$(MSGID_BUGS_ADDRESS)' + --msgid-bugs-address="$$msgid_bugs_address" test ! -f $(DOMAIN).po || { \ if test -f $(srcdir)/$(DOMAIN).pot; then \ sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ @@ -289,11 +304,14 @@ $(MAKE) update-po @$(MAKE) dist2 # This is a separate target because 'update-po' must be executed before. -dist2: $(DISTFILES) +dist2: stamp-po $(DISTFILES) dists="$(DISTFILES)"; \ if test "$(PACKAGE)" = "gettext-tools"; then \ dists="$$dists Makevars.template"; \ fi; \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + dists="$$dists $(DOMAIN).pot stamp-po"; \ + fi; \ if test -f $(srcdir)/ChangeLog; then \ dists="$$dists ChangeLog"; \ fi; \ @@ -305,9 +323,9 @@ if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ for file in $$dists; do \ if test -f $$file; then \ - cp -p $$file $(distdir); \ + cp -p $$file $(distdir) || exit 1; \ else \ - cp -p $(srcdir)/$$file $(distdir); \ + cp -p $(srcdir)/$$file $(distdir) || exit 1; \ fi; \ done @@ -354,7 +372,7 @@ update-gmo: Makefile $(GMOFILES) @: -Makefile: Makefile.in.in $(top_builddir)/config.status @POMAKEFILEDEPS@ +Makefile: Makefile.in.in Makevars $(top_builddir)/config.status @POMAKEFILEDEPS@ cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \ $(SHELL) ./config.status diff -urN gawk-3.1.4/posix/ChangeLog gawk-3.1.5/posix/ChangeLog --- gawk-3.1.4/posix/ChangeLog 2004-08-02 12:19:15.000000000 +0300 +++ gawk-3.1.5/posix/ChangeLog 2005-07-26 21:47:28.000000000 +0300 @@ -1,3 +1,7 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/posix/gawkmisc.c gawk-3.1.5/posix/gawkmisc.c --- gawk-3.1.4/posix/gawkmisc.c 2004-07-28 16:46:43.000000000 +0300 +++ gawk-3.1.5/posix/gawkmisc.c 2005-05-11 18:28:17.000000000 +0300 @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ char quote = '\''; char *defpath = DEFPATH; diff -urN gawk-3.1.4/profile.c gawk-3.1.5/profile.c --- gawk-3.1.4/profile.c 2004-07-28 16:47:17.000000000 +0300 +++ gawk-3.1.5/profile.c 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1999-2004 the Free Software Foundation, Inc. + * Copyright (C) 1999-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" @@ -491,6 +491,7 @@ return; case Node_not: + fprintf(prof_fp, "! "); parenthesize(tree->type, tree->lnode); return; diff -urN gawk-3.1.4/profile_p.c gawk-3.1.5/profile_p.c --- gawk-3.1.4/profile_p.c 2002-10-28 10:16:13.000000000 +0200 +++ gawk-3.1.5/profile_p.c 2005-05-11 18:28:17.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #define PROFILING 1 diff -urN gawk-3.1.4/protos.h gawk-3.1.5/protos.h --- gawk-3.1.4/protos.h 2002-10-28 10:16:13.000000000 +0200 +++ gawk-3.1.5/protos.h 2005-05-11 18:28:17.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #ifdef __STDC__ diff -urN gawk-3.1.4/random.c gawk-3.1.5/random.c --- gawk-3.1.4/random.c 2002-11-01 11:06:39.000000000 +0200 +++ gawk-3.1.5/random.c 2005-05-11 18:28:17.000000000 +0300 @@ -29,45 +29,43 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/lib/libc/stdlib/random.c,v 1.13 2000/01/27 23:06:49 jasone Exp $ - * */ #if defined(LIBC_SCCS) && !defined(lint) static const char sccsid[] = "@(#)random.c 8.2 (Berkeley) 5/19/95"; #endif /* LIBC_SCCS and not lint */ -#include "random.h" /* gawk addition */ - -/* - * srandomdev() isn't used by gawk, and it causes numerous - * compile headaches, so just blow it away. - */ -#if 0 -#if !defined (_MSC_VER) && !defined (__MINGW32__) && !defined (VMS) -#include /* for srandomdev() */ -#else -#include /* for clock() */ -#define ssize_t size_t -#endif /* !defined (_MSC_VER) && !defined (__MINGW32__) && !defined (VMS) */ +#ifdef HAVE_CONFIG_H /* gawk addition */ +#include #endif +#ifdef HAVE_FCNTL_H +#include +#endif #include - -/* For gawk, don't this, use the decl of random() in random.h */ -#if 0 #include +#ifdef HAVE_UNISTD_H +#include #endif -/* same thing here: */ -#if 0 -#ifdef HAVE_UNISTD_H -#include /* for srandomdev() */ +#include "random.h" /* gawk addition */ + +#ifdef HAVE_SYS_TIME_H /* gawk addition */ +#include #endif -#ifdef HAVE_FCNTL_H + +#if 0 +#include +__FBSDID("$FreeBSD: /repoman/r/ncvs/src/lib/libc/stdlib/random.c,v 1.24 2004/01/20 03:02:18 das Exp $"); + +#include "namespace.h" +#include /* for srandomdev() */ #include /* for srandomdev() */ -#endif +#include +#include +#include +#include /* for srandomdev() */ +#include "un-namespace.h" #endif /* @@ -86,10 +84,10 @@ * congruential generator. If the amount of state information is less than * 32 bytes, a simple linear congruential R.N.G. is used. * - * Internally, the state information is treated as an array of longs; the + * Internally, the state information is treated as an array of uint32_t's; the * zeroeth element of the array is the type of R.N.G. being used (small * integer); the remainder of the array is the state information for the - * R.N.G. Thus, 32 bytes of state information will give 7 longs worth of + * R.N.G. Thus, 32 bytes of state information will give 7 ints worth of * state information, which will allow a degree seven polynomial. (Note: * the zeroeth word of state information also has some other information * stored in it -- see setstate() for details). @@ -105,7 +103,7 @@ * period of the generator is approximately deg*(2**deg - 1); thus doubling * the amount of state information has a vast influence on the period of the * generator. Note: the deg*(2**deg - 1) is an approximation only good for - * large deg, when the period of the shift register is the dominant factor. + * large deg, when the period of the shift is the dominant factor. * With deg equal to seven, the period is actually much longer than the * 7*(2**7 - 1) predicted by this formula. * @@ -167,8 +165,14 @@ */ #define MAX_TYPES 5 /* max number of types above */ -static long degrees[MAX_TYPES] = { DEG_0, DEG_1, DEG_2, DEG_3, DEG_4 }; -static long seps [MAX_TYPES] = { SEP_0, SEP_1, SEP_2, SEP_3, SEP_4 }; +#ifdef USE_WEAK_SEEDING +#define NSHUFF 0 +#else /* !USE_WEAK_SEEDING */ +#define NSHUFF 50 /* to drop some "seed -> 1st value" linearity */ +#endif /* !USE_WEAK_SEEDING */ + +static const int degrees[MAX_TYPES] = { DEG_0, DEG_1, DEG_2, DEG_3, DEG_4 }; +static const int seps [MAX_TYPES] = { SEP_0, SEP_1, SEP_2, SEP_3, SEP_4 }; /* * Initially, everything is set up as if from: @@ -184,7 +188,7 @@ * MAX_TYPES * (rptr - state) + TYPE_3 == TYPE_3. */ -static long randtbl[DEG_3 + 1] = { +static uint32_t randtbl[DEG_3 + 1] = { TYPE_3, #ifdef USE_WEAK_SEEDING /* Historic implementation compatibility */ @@ -219,8 +223,8 @@ * in the initialization of randtbl) because the state table pointer is set * to point to randtbl[1] (as explained below). */ -static long *fptr = &randtbl[SEP_3 + 1]; -static long *rptr = &randtbl[1]; +static uint32_t *fptr = &randtbl[SEP_3 + 1]; +static uint32_t *rptr = &randtbl[1]; /* * The following things are the pointer to the state information table, the @@ -232,16 +236,16 @@ * this is more efficient than indexing every time to find the address of * the last element to see if the front and rear pointers have wrapped. */ -static long *state = &randtbl[1]; -static long rand_type = TYPE_3; -static long rand_deg = DEG_3; -static long rand_sep = SEP_3; -static long *end_ptr = &randtbl[DEG_3 + 1]; +static uint32_t *state = &randtbl[1]; +static int rand_type = TYPE_3; +static int rand_deg = DEG_3; +static int rand_sep = SEP_3; +static uint32_t *end_ptr = &randtbl[DEG_3 + 1]; -static long good_rand __P((long)); +static inline uint32_t good_rand(int32_t); -static long good_rand (x) - register long x; +static inline uint32_t good_rand (x) + int32_t x; { #ifdef USE_WEAK_SEEDING /* @@ -259,12 +263,15 @@ * Park and Miller, Communications of the ACM, vol. 31, no. 10, * October 1988, p. 1195. */ - register long hi, lo; + int32_t hi, lo; + /* Can't be initialized with 0, so use another value. */ + if (x == 0) + x = 123459876; hi = x / 127773; lo = x % 127773; x = 16807 * lo - 2836 * hi; - if (x <= 0) + if (x < 0) x += 0x7fffffff; return (x); #endif /* !USE_WEAK_SEEDING */ @@ -286,33 +293,34 @@ srandom(x) unsigned long x; { - register long i; + int i, lim; + state[0] = (uint32_t)x; if (rand_type == TYPE_0) - state[0] = x; + lim = NSHUFF; else { - state[0] = x; for (i = 1; i < rand_deg; i++) state[i] = good_rand(state[i - 1]); fptr = &state[rand_sep]; rptr = &state[0]; - for (i = 0; i < 10 * rand_deg; i++) - (void)random(); + lim = 10 * rand_deg; } + for (i = 0; i < lim; i++) + (void)random(); } +#if 0 /* gawk doesn't use this */ /* * srandomdev: * * Many programs choose the seed value in a totally predictable manner. * This often causes problems. We seed the generator using the much more - * secure urandom(4) interface. Note that this particular seeding + * secure random(4) interface. Note that this particular seeding * procedure can generate states which are impossible to reproduce by * calling srandom() with any value, since the succeeding terms in the * state buffer are no longer derived from the LC algorithm applied to * a fixed seed. */ -#if 0 void srandomdev() { @@ -325,32 +333,19 @@ len = rand_deg * sizeof state[0]; done = 0; -#ifdef O_RDONLY - fd = open("/dev/urandom", O_RDONLY, 0); + fd = open("/dev/random", O_RDONLY, 0); if (fd >= 0) { if (read(fd, (void *) state, len) == (ssize_t) len) done = 1; close(fd); } -#endif /*O_RDONLY*/ if (!done) { - unsigned long junk; -#if !defined (_MSC_VER) && !defined (__MINGW32__) struct timeval tv; + unsigned long junk; gettimeofday(&tv, NULL); - srandom(getpid() ^ tv.tv_sec ^ tv.tv_usec ^ junk); -#else - clock_t ret_clock_t = clock(); - /* - * I don't like the idea of reading uninitialized memory - * even to generate a random number, but we do it anyway. - * SD. - */ - srandom(getpid() ^ ret_clock_t ^ junk); -#endif - + srandom((getpid() << 16) ^ tv.tv_sec ^ tv.tv_usec ^ junk); return; } @@ -380,7 +375,7 @@ * * Returns a pointer to the old state. * - * Note: The Sparc platform requires that arg_state begin on a long + * Note: The Sparc platform requires that arg_state begin on an int * word boundary; otherwise a bus error will occur. Even so, lint will * complain about mis-alignment, but you should disregard these messages. */ @@ -390,8 +385,8 @@ char *arg_state; /* pointer to state array */ long n; /* # bytes of state info */ { - register char *ostate = (char *)(&state[-1]); - register long *long_arg_state = (long *) arg_state; + char *ostate = (char *)(&state[-1]); + uint32_t *int_arg_state = (uint32_t *)arg_state; if (rand_type == TYPE_0) state[-1] = rand_type; @@ -423,13 +418,13 @@ rand_deg = DEG_4; rand_sep = SEP_4; } - state = (long *) (long_arg_state + 1); /* first location */ + state = int_arg_state + 1; /* first location */ end_ptr = &state[rand_deg]; /* must set end_ptr before srandom */ srandom(seed); if (rand_type == TYPE_0) - long_arg_state[0] = rand_type; + int_arg_state[0] = rand_type; else - long_arg_state[0] = MAX_TYPES * (rptr - state) + rand_type; + int_arg_state[0] = MAX_TYPES * (rptr - state) + rand_type; return(ostate); } @@ -448,7 +443,7 @@ * * Returns a pointer to the old state information. * - * Note: The Sparc platform requires that arg_state begin on a long + * Note: The Sparc platform requires that arg_state begin on an int * word boundary; otherwise a bus error will occur. Even so, lint will * complain about mis-alignment, but you should disregard these messages. */ @@ -456,9 +451,9 @@ setstate(arg_state) char *arg_state; /* pointer to state array */ { - register long *new_state = (long *) arg_state; - register long type = new_state[0] % MAX_TYPES; - register long rear = new_state[0] / MAX_TYPES; + uint32_t *new_state = (uint32_t *)arg_state; + uint32_t type = new_state[0] % MAX_TYPES; + uint32_t rear = new_state[0] / MAX_TYPES; char *ostate = (char *)(&state[-1]); if (rand_type == TYPE_0) @@ -479,7 +474,7 @@ (void)fprintf(stderr, "random: state info corrupted; not changed.\n"); } - state = (long *) (new_state + 1); + state = new_state + 1; if (rand_type != TYPE_0) { rptr = &state[rear]; fptr = &state[(rear + rand_sep) % rand_deg]; @@ -508,8 +503,8 @@ long random() { - register long i; - register long *f, *r; + uint32_t i; + uint32_t *f, *r; if (rand_type == TYPE_0) { i = state[0]; @@ -531,5 +526,5 @@ fptr = f; rptr = r; } - return(i); + return((long)i); } diff -urN gawk-3.1.4/random.h gawk-3.1.5/random.h --- gawk-3.1.4/random.h 2002-11-01 11:07:41.000000000 +0200 +++ gawk-3.1.5/random.h 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1996, 2001 the Free Software Foundation, Inc. + * Copyright (C) 1996, 2001, 2004, 2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,18 +20,26 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ -#ifdef HAVE_CONFIG_H -#include -#endif - #define initstate gawk_initstate #define setstate gawk_setstate #define random gawk_random #define srandom gawk_srandom +#if SIZEOF_UNSIGNED_INT == 4 +typedef unsigned int gawk_uint32_t; +typedef int gawk_int32_t; +#else +#if SIZEOF_UNSIGNED_LONG == 4 +typedef unsigned long gawk_uint32_t; +typedef long gawk_int32_t; +#endif +#endif +#define uint32_t gawk_uint32_t +#define int32_t gawk_int32_t + #ifdef __STDC__ #undef __P #define __P(s) s diff -urN gawk-3.1.4/re.c gawk-3.1.5/re.c --- gawk-3.1.4/re.c 2004-07-28 16:47:37.000000000 +0300 +++ gawk-3.1.5/re.c 2005-07-26 21:07:43.000000000 +0300 @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1991-2004 the Free Software Foundation, Inc. + * Copyright (C) 1991-2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "awk.h" @@ -42,10 +42,11 @@ static short first = TRUE; static short no_dfa = FALSE; int has_anchor = FALSE; -#ifdef MBS_SUPPORT - /* The number of bytes in the current multbyte character. + + /* The number of bytes in the current multibyte character. It is 0, when the current character is a singlebyte character. */ size_t is_multibyte = 0; +#ifdef MBS_SUPPORT mbstate_t mbs; if (gawk_mb_cur_max > 1) @@ -69,7 +70,7 @@ while (src < end) { #ifdef MBS_SUPPORT - if (gawk_mb_cur_max > 1 && !is_multibyte) { + if (gawk_mb_cur_max > 1 && ! is_multibyte) { /* The previous byte is a singlebyte character, or last byte of a multibyte character. We check the next character. */ is_multibyte = mbrlen(src, end - src, &mbs); @@ -81,12 +82,9 @@ } #endif - if ( -#ifdef MBS_SUPPORT /* We skip multibyte character, since it must not be a special character. */ - (gawk_mb_cur_max == 1 || ! is_multibyte) && -#endif + if ((gawk_mb_cur_max == 1 || ! is_multibyte) && (*src == '\\')) { c = *++src; switch (c) { @@ -145,10 +143,8 @@ has_anchor = TRUE; *dest++ = *src++; /* not '\\' */ } -#ifdef MBS_SUPPORT if (gawk_mb_cur_max > 1 && is_multibyte) is_multibyte--; -#endif } /* while */ *dest = '\0' ; /* Only necessary if we print dest ? */ @@ -171,7 +167,7 @@ * also think it's probably better for portability. See the * discussion by the definition of casetable[] in eval.c. */ -#ifdef MBS_SUPPORT + if (ignorecase) { if (gawk_mb_cur_max > 1) { syn |= RE_ICASE; @@ -184,12 +180,6 @@ rp->pat.translate = NULL; syn &= ~RE_ICASE; } -#else /* ! MBS_SUPPORT */ - if (ignorecase) - rp->pat.translate = (char *) casetable; - else - rp->pat.translate = NULL; -#endif /* ! MBS_SUPPORT */ dfasyntax(syn | (ignorecase ? RE_ICASE : 0), ignorecase ? TRUE : FALSE, '\n'); re_set_syntax(syn); @@ -215,16 +205,28 @@ int research(Regexp *rp, register char *str, int start, - register size_t len, int need_start) + register size_t len, int flags) { const char *ret = str; int try_backref; + int need_start; + int no_bol; + int res; + + need_start = ((flags & RE_NEED_START) != 0); + no_bol = ((flags & RE_NO_BOL) != 0); + + if (no_bol) + rp->pat.not_bol = 1; /* * Always do dfa search if can; if it fails, then even if * need_start is true, we won't bother with the regex search. + * + * The dfa matcher doesn't have a no_bol flag, so don't bother + * trying it in that case. */ - if (rp->dfa) { + if (rp->dfa && ! no_bol) { char save; int count = 0; /* @@ -243,14 +245,15 @@ * Passing NULL as last arg speeds up search for cases * where we don't need the start/end info. */ - int res = re_search(&(rp->pat), str, start+len, + res = re_search(&(rp->pat), str, start+len, start, len, need_start ? &(rp->regs) : NULL); - - return res; } else - return 1; + res = 1; } else - return -1; + res = -1; + + rp->pat.not_bol = 0; + return res; } /* refree --- free up the dynamic memory used by a compiled regexp */ @@ -386,7 +389,7 @@ /* make accessable to gdb */ matched = &buf[RESTART(re, buf)]; - res = STREQN(text, matched, len); + res = (memcmp(text, matched, len) == 0); return res; } @@ -434,6 +437,9 @@ { RE_DEBUG, "RE_DEBUG" }, { RE_INVALID_INTERVAL_ORD, "RE_INVALID_INTERVAL_ORD" }, { RE_ICASE, "RE_ICASE" }, + { RE_CARET_ANCHORS_HERE, "RE_CARET_ANCHORS_HERE" }, + { RE_CONTEXT_INVALID_DUP, "RE_CONTEXT_INVALID_DUP" }, + { RE_NO_SUB, "RE_NO_SUB" }, { 0, NULL }, }; diff -urN gawk-3.1.4/regcomp.c gawk-3.1.5/regcomp.c --- gawk-3.1.4/regcomp.c 2004-07-15 12:23:56.000000000 +0300 +++ gawk-3.1.5/regcomp.c 2005-07-04 09:36:52.000000000 +0300 @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa . @@ -15,8 +15,8 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ static reg_errcode_t re_compile_internal (regex_t *preg, const char * pattern, int length, reg_syntax_t syntax); @@ -33,11 +33,21 @@ #ifdef RE_ENABLE_I18N static void optimize_utf8 (re_dfa_t *dfa); #endif -static reg_errcode_t analyze (re_dfa_t *dfa); -static reg_errcode_t analyze_tree (re_dfa_t *dfa, bin_tree_t *node); -static void calc_first (re_dfa_t *dfa, bin_tree_t *node); -static void calc_next (re_dfa_t *dfa, bin_tree_t *node); -static void calc_epsdest (re_dfa_t *dfa, bin_tree_t *node); +static reg_errcode_t analyze (regex_t *preg); +static reg_errcode_t create_initial_state (re_dfa_t *dfa); +static reg_errcode_t preorder (bin_tree_t *root, + reg_errcode_t (fn (void *, bin_tree_t *)), + void *extra); +static reg_errcode_t postorder (bin_tree_t *root, + reg_errcode_t (fn (void *, bin_tree_t *)), + void *extra); +static reg_errcode_t optimize_subexps (void *extra, bin_tree_t *node); +static reg_errcode_t lower_subexps (void *extra, bin_tree_t *node); +static bin_tree_t *lower_subexp (reg_errcode_t *err, regex_t *preg, + bin_tree_t *node); +static reg_errcode_t calc_first (void *extra, bin_tree_t *node); +static reg_errcode_t calc_next (void *extra, bin_tree_t *node); +static reg_errcode_t link_nfa_nodes (void *extra, bin_tree_t *node); static reg_errcode_t duplicate_node_closure (re_dfa_t *dfa, int top_org_node, int top_clone_node, int root_node, unsigned int constraint); @@ -48,7 +58,7 @@ static reg_errcode_t calc_eclosure (re_dfa_t *dfa); static reg_errcode_t calc_eclosure_iter (re_node_set *new_set, re_dfa_t *dfa, int node, int root); -static void calc_inveclosure (re_dfa_t *dfa); +static reg_errcode_t calc_inveclosure (re_dfa_t *dfa); static int fetch_number (re_string_t *input, re_token_t *token, reg_syntax_t syntax); static void fetch_token (re_token_t *result, re_string_t *input, @@ -130,72 +140,73 @@ int non_match, reg_errcode_t *err); static bin_tree_t *create_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right, - re_token_type_t type, int index); -static bin_tree_t *re_dfa_add_tree_node (re_dfa_t *dfa, - bin_tree_t *left, bin_tree_t *right, - const re_token_t *token) - __attribute ((noinline)); + re_token_type_t type); +static bin_tree_t *create_token_tree (re_dfa_t *dfa, + bin_tree_t *left, bin_tree_t *right, + const re_token_t *token); static bin_tree_t *duplicate_tree (const bin_tree_t *src, re_dfa_t *dfa); -static void mark_opt_subexp (const bin_tree_t *src, re_dfa_t *dfa); -static void mark_opt_subexp_iter (const bin_tree_t *src, re_dfa_t *dfa, int idx); +static void free_token (re_token_t *node); +static reg_errcode_t free_tree (void *extra, bin_tree_t *node); +static reg_errcode_t mark_opt_subexp (void *extra, bin_tree_t *node); /* This table gives an error message for each of the error codes listed in regex.h. Obviously the order here has to be same as there. POSIX doesn't require that we do anything for REG_NOERROR, but why not be nice? */ -const char __re_error_msgid[] attribute_hidden = +const ERRMSG_TYPE __re_error_msgid[] attribute_hidden = { #define REG_NOERROR_IDX 0 gettext_noop ("Success") /* REG_NOERROR */ - "\0" + ERRMSG_SEPARATOR #define REG_NOMATCH_IDX (REG_NOERROR_IDX + sizeof "Success") gettext_noop ("No match") /* REG_NOMATCH */ - "\0" + ERRMSG_SEPARATOR #define REG_BADPAT_IDX (REG_NOMATCH_IDX + sizeof "No match") gettext_noop ("Invalid regular expression") /* REG_BADPAT */ - "\0" + ERRMSG_SEPARATOR #define REG_ECOLLATE_IDX (REG_BADPAT_IDX + sizeof "Invalid regular expression") gettext_noop ("Invalid collation character") /* REG_ECOLLATE */ - "\0" + ERRMSG_SEPARATOR #define REG_ECTYPE_IDX (REG_ECOLLATE_IDX + sizeof "Invalid collation character") gettext_noop ("Invalid character class name") /* REG_ECTYPE */ - "\0" + ERRMSG_SEPARATOR #define REG_EESCAPE_IDX (REG_ECTYPE_IDX + sizeof "Invalid character class name") gettext_noop ("Trailing backslash") /* REG_EESCAPE */ - "\0" + ERRMSG_SEPARATOR #define REG_ESUBREG_IDX (REG_EESCAPE_IDX + sizeof "Trailing backslash") gettext_noop ("Invalid back reference") /* REG_ESUBREG */ - "\0" + ERRMSG_SEPARATOR #define REG_EBRACK_IDX (REG_ESUBREG_IDX + sizeof "Invalid back reference") gettext_noop ("Unmatched [ or [^") /* REG_EBRACK */ - "\0" + ERRMSG_SEPARATOR #define REG_EPAREN_IDX (REG_EBRACK_IDX + sizeof "Unmatched [ or [^") gettext_noop ("Unmatched ( or \\(") /* REG_EPAREN */ - "\0" + ERRMSG_SEPARATOR #define REG_EBRACE_IDX (REG_EPAREN_IDX + sizeof "Unmatched ( or \\(") gettext_noop ("Unmatched \\{") /* REG_EBRACE */ - "\0" + ERRMSG_SEPARATOR #define REG_BADBR_IDX (REG_EBRACE_IDX + sizeof "Unmatched \\{") gettext_noop ("Invalid content of \\{\\}") /* REG_BADBR */ - "\0" + ERRMSG_SEPARATOR #define REG_ERANGE_IDX (REG_BADBR_IDX + sizeof "Invalid content of \\{\\}") gettext_noop ("Invalid range end") /* REG_ERANGE */ - "\0" + ERRMSG_SEPARATOR #define REG_ESPACE_IDX (REG_ERANGE_IDX + sizeof "Invalid range end") gettext_noop ("Memory exhausted") /* REG_ESPACE */ - "\0" + ERRMSG_SEPARATOR #define REG_BADRPT_IDX (REG_ESPACE_IDX + sizeof "Memory exhausted") gettext_noop ("Invalid preceding regular expression") /* REG_BADRPT */ - "\0" + ERRMSG_SEPARATOR #define REG_EEND_IDX (REG_BADRPT_IDX + sizeof "Invalid preceding regular expression") gettext_noop ("Premature end of regular expression") /* REG_EEND */ - "\0" + ERRMSG_SEPARATOR #define REG_ESIZE_IDX (REG_EEND_IDX + sizeof "Premature end of regular expression") gettext_noop ("Regular expression too big") /* REG_ESIZE */ - "\0" + ERRMSG_SEPARATOR #define REG_ERPAREN_IDX (REG_ESIZE_IDX + sizeof "Regular expression too big") gettext_noop ("Unmatched ) or \\)") /* REG_ERPAREN */ + ERRMSG_SEPARATOR }; const size_t __re_error_msgid_idx[] attribute_hidden = @@ -238,8 +249,8 @@ /* And GNU code determines whether or not to get register information by passing null for the REGS argument to re_match, etc., not by - setting no_sub. */ - bufp->no_sub = 0; + setting no_sub, unless RE_NO_SUB is set. */ + bufp->no_sub = !!(re_syntax_options & RE_NO_SUB); /* Match anchors at newline. */ bufp->newline_anchor = 1; @@ -248,7 +259,7 @@ if (!ret) return NULL; - return gettext (__re_error_msgid + __re_error_msgid_idx[(int) ret]); + return gettext (RE_ERRMSG(ret)); } #ifdef _LIBC weak_alias (__re_compile_pattern, re_compile_pattern) @@ -336,7 +347,7 @@ #ifdef RE_ENABLE_I18N if ((bufp->syntax & RE_ICASE) && dfa->mb_cur_max > 1) { - unsigned char *buf = alloca (dfa->mb_cur_max), *p; + unsigned char *buf = re_malloc (unsigned char, dfa->mb_cur_max), *p; wchar_t wc; mbstate_t state; @@ -351,6 +362,7 @@ &state) == p - buf && __wcrtomb ((char *) buf, towlower (wc), &state) > 0) re_set_fastmap (fastmap, 0, buf[0]); + re_free (buf); } #endif } @@ -540,7 +552,7 @@ Dump core so we can fix it. */ abort (); - msg = gettext (__re_error_msgid + __re_error_msgid_idx[errcode]); + msg = gettext (RE_ERRMSG(errcode)); msg_size = strlen (msg) + 1; /* Includes the null. */ @@ -562,25 +574,31 @@ #endif +#ifdef RE_ENABLE_I18N +/* This static array is used for the map to single-byte characters when + UTF-8 is used. Otherwise we would allocate memory just to initialize + it the same all the time. UTF-8 is the preferred encoding so this is + a worthwhile optimization. */ +static const bitset utf8_sb_map = +{ + /* Set the first 128 bits. */ +# if UINT_MAX == 0xffffffff + 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff +# else +# error "Add case for new unsigned int size" +# endif +}; +#endif + + static void free_dfa_content (re_dfa_t *dfa) { int i, j; - re_free (dfa->subexps); - if (dfa->nodes) for (i = 0; i < dfa->nodes_len; ++i) - { - re_token_t *node = dfa->nodes + i; -#ifdef RE_ENABLE_I18N - if (node->type == COMPLEX_BRACKET && node->duplicated == 0) - free_charset (node->opr.mbcset); - else -#endif /* RE_ENABLE_I18N */ - if (node->type == SIMPLE_BRACKET && node->duplicated == 0) - re_free (node->opr.sbcset); - } + free_token (dfa->nodes + i); re_free (dfa->nexts); for (i = 0; i < dfa->nodes_len; ++i) { @@ -609,8 +627,10 @@ } re_free (dfa->state_table); #ifdef RE_ENABLE_I18N - re_free (dfa->sb_char); + if (dfa->sb_char != utf8_sb_map) + re_free (dfa->sb_char); #endif + re_free (dfa->subexp_map); #ifdef DEBUG re_free (dfa->re_str); #endif @@ -682,8 +702,7 @@ { re_comp_buf.fastmap = (char *) malloc (SBC_MAX); if (re_comp_buf.fastmap == NULL) - return (char *) gettext (__re_error_msgid - + __re_error_msgid_idx[(int) REG_ESPACE]); + return (char *) gettext (RE_ERRMSG(REG_ESPACE_IDX)); } /* Since `re_exec' always passes NULL for the `regs' argument, we @@ -698,7 +717,7 @@ return NULL; /* Yes, we're discarding `const' here if !HAVE_LIBINTL. */ - return (char *) gettext (__re_error_msgid + __re_error_msgid_idx[(int) ret]); + return (char *) gettext (RE_ERRMSG(ret)); } #ifdef _LIBC @@ -782,18 +801,17 @@ if (BE (dfa->str_tree == NULL, 0)) goto re_compile_internal_free_return; + /* Analyze the tree and create the nfa. */ + err = analyze (preg); + if (BE (err != REG_NOERROR, 0)) + goto re_compile_internal_free_return; + #ifdef RE_ENABLE_I18N /* If possible, do searching in single byte encoding to speed things up. */ if (dfa->is_utf8 && !(syntax & RE_ICASE) && preg->translate == NULL) optimize_utf8 (dfa); #endif - /* Analyze the tree and collect information which is necessary to - create the dfa. */ - err = analyze (dfa); - if (BE (err != REG_NOERROR, 0)) - goto re_compile_internal_free_return; - /* Then create the initial state of the dfa. */ err = create_initial_state (dfa); @@ -820,6 +838,9 @@ int pat_len; { int table_size; +#ifndef _LIBC + char *codeset_name; +#endif memset (dfa, '\0', sizeof (re_dfa_t)); @@ -839,9 +860,6 @@ dfa->state_table = calloc (sizeof (struct re_state_table_entry), table_size); dfa->state_hash_mask = table_size - 1; - dfa->subexps_alloc = 1; - dfa->subexps = re_malloc (re_subexp_t, dfa->subexps_alloc); - dfa->mb_cur_max = MB_CUR_MAX; #ifdef _LIBC if (dfa->mb_cur_max == 6 @@ -849,27 +867,74 @@ dfa->is_utf8 = 1; dfa->map_notascii = (_NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_MAP_TO_NONASCII) != 0); +#else +# ifdef HAVE_LANGINFO_CODESET + codeset_name = nl_langinfo (CODESET); +# else + codeset_name = getenv ("LC_ALL"); + if (codeset_name == NULL || codeset_name[0] == '\0') + codeset_name = getenv ("LC_CTYPE"); + if (codeset_name == NULL || codeset_name[0] == '\0') + codeset_name = getenv ("LANG"); + if (codeset_name == NULL) + codeset_name = ""; + else if (strchr (codeset_name, '.') != NULL) + codeset_name = strchr (codeset_name, '.') + 1; +# endif + + /* strcasecmp isn't a standard interface. brute force check */ +#if 0 + if (strcasecmp (codeset_name, "UTF-8") == 0 + || strcasecmp (codeset_name, "UTF8") == 0) + dfa->is_utf8 = 1; +#else + if ( (codeset_name[0] == 'U' || codeset_name[0] == 'u') + && (codeset_name[1] == 'T' || codeset_name[1] == 't') + && (codeset_name[2] == 'F' || codeset_name[2] == 'f') + && (codeset_name[3] == '-' + ? codeset_name[4] == '8' && codeset_name[5] == '\0' + : codeset_name[3] == '8' && codeset_name[4] == '\0')) + dfa->is_utf8 = 1; +#endif + + /* We check exhaustively in the loop below if this charset is a + superset of ASCII. */ + dfa->map_notascii = 0; #endif + #ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) { - int i, j, ch; - - dfa->sb_char = (re_bitset_ptr_t) calloc (sizeof (bitset), 1); - if (BE (dfa->sb_char == NULL, 0)) - return REG_ESPACE; if (dfa->is_utf8) - memset (dfa->sb_char, 255, sizeof (unsigned int) * BITSET_UINTS / 2); + dfa->sb_char = (re_bitset_ptr_t) utf8_sb_map; else - for (i = 0, ch = 0; i < BITSET_UINTS; ++i) - for (j = 0; j < UINT_BITS; ++j, ++ch) - if (btowc (ch) != WEOF) - dfa->sb_char[i] |= 1 << j; + { + int i, j, ch; + + dfa->sb_char = (re_bitset_ptr_t) calloc (sizeof (bitset), 1); + if (BE (dfa->sb_char == NULL, 0)) + return REG_ESPACE; + + /* Clear all bits by, then set those corresponding to single + byte chars. */ + bitset_empty (dfa->sb_char); + + for (i = 0, ch = 0; i < BITSET_UINTS; ++i) + for (j = 0; j < UINT_BITS; ++j, ++ch) + { + wchar_t wch = __btowc (ch); + if (wch != WEOF) + dfa->sb_char[i] |= 1 << j; +# ifndef _LIBC + if (isascii (ch) && wch != (wchar_t) ch) + dfa->map_notascii = 1; +# endif + } + } } #endif - if (BE (dfa->nodes == NULL || dfa->state_table == NULL - || dfa->subexps == NULL, 0)) + if (BE (dfa->nodes == NULL || dfa->state_table == NULL, 0)) return REG_ESPACE; return REG_NOERROR; } @@ -922,7 +987,7 @@ /* Initial states have the epsilon closure of the node which is the first node of the regular expression. */ - first = dfa->str_tree->first; + first = dfa->str_tree->first->node_idx; dfa->init_node = first; err = re_node_set_init_copy (&init_nodes, dfa->eclosures + first); if (BE (err != REG_NOERROR, 0)) @@ -946,7 +1011,7 @@ re_token_t *clexp_node; clexp_node = dfa->nodes + init_nodes.elems[clexp_idx]; if (clexp_node->type == OP_CLOSE_SUBEXP - && clexp_node->opr.idx + 1 == dfa->nodes[node_idx].opr.idx) + && clexp_node->opr.idx == dfa->nodes[node_idx].opr.idx) break; } if (clexp_idx == init_nodes.nelem) @@ -1028,10 +1093,11 @@ case OP_ALT: case END_OF_RE: case OP_DUP_ASTERISK: - case OP_DUP_QUESTION: case OP_OPEN_SUBEXP: case OP_CLOSE_SUBEXP: break; + case COMPLEX_BRACKET: + return; case SIMPLE_BRACKET: /* Just double check. */ for (i = 0x80 / UINT_BITS; i < BITSET_UINTS; ++i) @@ -1039,7 +1105,7 @@ return; break; default: - return; + abort (); } if (mb_chars || has_period) @@ -1063,10 +1129,10 @@ "eclosure", and "inveclosure". */ static reg_errcode_t -analyze (dfa) - re_dfa_t *dfa; +analyze (preg) + regex_t *preg; { - int i; + re_dfa_t *dfa = (re_dfa_t *) preg->buffer; reg_errcode_t ret; /* Allocate arrays. */ @@ -1074,225 +1140,321 @@ dfa->org_indices = re_malloc (int, dfa->nodes_alloc); dfa->edests = re_malloc (re_node_set, dfa->nodes_alloc); dfa->eclosures = re_malloc (re_node_set, dfa->nodes_alloc); - dfa->inveclosures = re_malloc (re_node_set, dfa->nodes_alloc); if (BE (dfa->nexts == NULL || dfa->org_indices == NULL || dfa->edests == NULL - || dfa->eclosures == NULL || dfa->inveclosures == NULL, 0)) + || dfa->eclosures == NULL, 0)) return REG_ESPACE; - /* Initialize them. */ - for (i = 0; i < dfa->nodes_len; ++i) + + dfa->subexp_map = re_malloc (int, preg->re_nsub); + if (dfa->subexp_map != NULL) { - dfa->nexts[i] = -1; - re_node_set_init_empty (dfa->edests + i); - re_node_set_init_empty (dfa->eclosures + i); - re_node_set_init_empty (dfa->inveclosures + i); + int i; + for (i = 0; i < preg->re_nsub; i++) + dfa->subexp_map[i] = i; + preorder (dfa->str_tree, optimize_subexps, dfa); + for (i = 0; i < preg->re_nsub; i++) + if (dfa->subexp_map[i] != i) + break; + if (i == preg->re_nsub) + { + free (dfa->subexp_map); + dfa->subexp_map = NULL; + } } - ret = analyze_tree (dfa, dfa->str_tree); - if (BE (ret == REG_NOERROR, 1)) - { - ret = calc_eclosure (dfa); - if (ret == REG_NOERROR) - calc_inveclosure (dfa); + ret = postorder (dfa->str_tree, lower_subexps, preg); + if (BE (ret != REG_NOERROR, 0)) + return ret; + ret = postorder (dfa->str_tree, calc_first, dfa); + if (BE (ret != REG_NOERROR, 0)) + return ret; + preorder (dfa->str_tree, calc_next, dfa); + ret = preorder (dfa->str_tree, link_nfa_nodes, dfa); + if (BE (ret != REG_NOERROR, 0)) + return ret; + ret = calc_eclosure (dfa); + if (BE (ret != REG_NOERROR, 0)) + return ret; + + /* We only need this during the prune_impossible_nodes pass in regexec.c; + skip it if p_i_n will not run, as calc_inveclosure can be quadratic. */ + if ((!preg->no_sub && preg->re_nsub > 0 && dfa->has_plural_match) + || dfa->nbackref) + { + dfa->inveclosures = re_malloc (re_node_set, dfa->nodes_len); + if (BE (dfa->inveclosures == NULL, 0)) + return REG_ESPACE; + ret = calc_inveclosure (dfa); } + return ret; } -/* Helper functions for analyze. - This function calculate "first", "next", and "edest" for the subtree - whose root is NODE. */ +/* Our parse trees are very unbalanced, so we cannot use a stack to + implement parse tree visits. Instead, we use parent pointers and + some hairy code in these two functions. */ +static reg_errcode_t +postorder (root, fn, extra) + bin_tree_t *root; + reg_errcode_t (fn (void *, bin_tree_t *)); + void *extra; +{ + bin_tree_t *node, *prev; + + for (node = root; ; ) + { + /* Descend down the tree, preferably to the left (or to the right + if that's the only child). */ + while (node->left || node->right) + if (node->left) + node = node->left; + else + node = node->right; + + do + { + reg_errcode_t err = fn (extra, node); + if (BE (err != REG_NOERROR, 0)) + return err; + if (node->parent == NULL) + return REG_NOERROR; + prev = node; + node = node->parent; + } + /* Go up while we have a node that is reached from the right. */ + while (node->right == prev || node->right == NULL); + node = node->right; + } +} static reg_errcode_t -analyze_tree (dfa, node) - re_dfa_t *dfa; +preorder (root, fn, extra) + bin_tree_t *root; + reg_errcode_t (fn (void *, bin_tree_t *)); + void *extra; +{ + bin_tree_t *node; + + for (node = root; ; ) + { + reg_errcode_t err = fn (extra, node); + if (BE (err != REG_NOERROR, 0)) + return err; + + /* Go to the left node, or up and to the right. */ + if (node->left) + node = node->left; + else + { + bin_tree_t *prev = NULL; + while (node->right == prev || node->right == NULL) + { + prev = node; + node = node->parent; + if (!node) + return REG_NOERROR; + } + node = node->right; + } + } +} + +/* Optimization pass: if a SUBEXP is entirely contained, strip it and tell + re_search_internal to map the inner one's opr.idx to this one's. Adjust + backreferences as well. Requires a preorder visit. */ +static reg_errcode_t +optimize_subexps (extra, node) + void *extra; bin_tree_t *node; { - reg_errcode_t ret; - if (node->first == -1) - calc_first (dfa, node); - if (node->next == -1) - calc_next (dfa, node); - if (node->eclosure.nelem == 0) - calc_epsdest (dfa, node); - /* Calculate "first" etc. for the left child. */ - if (node->left != NULL) + re_dfa_t *dfa = (re_dfa_t *) extra; + + if (node->token.type == OP_BACK_REF && dfa->subexp_map) { - ret = analyze_tree (dfa, node->left); - if (BE (ret != REG_NOERROR, 0)) - return ret; + int idx = node->token.opr.idx; + node->token.opr.idx = dfa->subexp_map[idx]; + dfa->used_bkref_map |= 1 << node->token.opr.idx; } - /* Calculate "first" etc. for the right child. */ - if (node->right != NULL) + + else if (node->token.type == SUBEXP + && node->left && node->left->token.type == SUBEXP) { - ret = analyze_tree (dfa, node->right); - if (BE (ret != REG_NOERROR, 0)) - return ret; + int other_idx = node->left->token.opr.idx; + + node->left = node->left->left; + if (node->left) + node->left->parent = node; + + dfa->subexp_map[other_idx] = dfa->subexp_map[node->token.opr.idx]; + if (other_idx < 8 * sizeof (dfa->used_bkref_map)) + dfa->used_bkref_map &= ~(1 << other_idx); } + return REG_NOERROR; } -/* Calculate "first" for the node NODE. */ -static void -calc_first (dfa, node) - re_dfa_t *dfa; +/* Lowering pass: Turn each SUBEXP node into the appropriate concatenation + of OP_OPEN_SUBEXP, the body of the SUBEXP (if any) and OP_CLOSE_SUBEXP. */ +static reg_errcode_t +lower_subexps (extra, node) + void *extra; bin_tree_t *node; { - int idx, type; - idx = node->node_idx; - type = (node->type == 0) ? dfa->nodes[idx].type : node->type; + regex_t *preg = (regex_t *) extra; + reg_errcode_t err = REG_NOERROR; - switch (type) + if (node->left && node->left->token.type == SUBEXP) { -#ifdef DEBUG - case OP_OPEN_BRACKET: - case OP_CLOSE_BRACKET: - case OP_OPEN_DUP_NUM: - case OP_CLOSE_DUP_NUM: - case OP_DUP_PLUS: - case OP_NON_MATCH_LIST: - case OP_OPEN_COLL_ELEM: - case OP_CLOSE_COLL_ELEM: - case OP_OPEN_EQUIV_CLASS: - case OP_CLOSE_EQUIV_CLASS: - case OP_OPEN_CHAR_CLASS: - case OP_CLOSE_CHAR_CLASS: - /* These must not appear here. */ - assert (0); -#endif - case END_OF_RE: - case CHARACTER: - case OP_PERIOD: - case OP_DUP_ASTERISK: - case OP_DUP_QUESTION: -#ifdef RE_ENABLE_I18N - case OP_UTF8_PERIOD: - case COMPLEX_BRACKET: -#endif /* RE_ENABLE_I18N */ - case SIMPLE_BRACKET: - case OP_BACK_REF: - case ANCHOR: - case OP_OPEN_SUBEXP: - case OP_CLOSE_SUBEXP: - node->first = idx; - break; - case OP_ALT: - node->first = idx; - break; - /* else fall through */ - default: -#ifdef DEBUG - assert (node->left != NULL); -#endif - if (node->left->first == -1) - calc_first (dfa, node->left); - node->first = node->left->first; - break; + node->left = lower_subexp (&err, preg, node->left); + if (node->left) + node->left->parent = node; + } + if (node->right && node->right->token.type == SUBEXP) + { + node->right = lower_subexp (&err, preg, node->right); + if (node->right) + node->right->parent = node; } -} -/* Calculate "next" for the node NODE. */ + return err; +} -static void -calc_next (dfa, node) - re_dfa_t *dfa; +static bin_tree_t * +lower_subexp (err, preg, node) + reg_errcode_t *err; + regex_t *preg; bin_tree_t *node; { - int idx, type; - bin_tree_t *parent = node->parent; - if (parent == NULL) + re_dfa_t *dfa = (re_dfa_t *) preg->buffer; + bin_tree_t *body = node->left; + bin_tree_t *op, *cls, *tree1, *tree; + + if (preg->no_sub + && (node->token.opr.idx >= 8 * sizeof (dfa->used_bkref_map) + || !(dfa->used_bkref_map & (1 << node->token.opr.idx)))) + return node->left; + + /* Convert the SUBEXP node to the concatenation of an + OP_OPEN_SUBEXP, the contents, and an OP_CLOSE_SUBEXP. */ + op = create_tree (dfa, NULL, NULL, OP_OPEN_SUBEXP); + cls = create_tree (dfa, NULL, NULL, OP_CLOSE_SUBEXP); + tree1 = body ? create_tree (dfa, body, cls, CONCAT) : cls; + tree = create_tree (dfa, op, tree1, CONCAT); + if (BE (tree == NULL || tree1 == NULL || op == NULL || cls == NULL, 0)) { - node->next = -1; - idx = node->node_idx; - if (node->type == 0) - dfa->nexts[idx] = node->next; - return; + *err = REG_ESPACE; + return NULL; } - idx = parent->node_idx; - type = (parent->type == 0) ? dfa->nodes[idx].type : parent->type; + op->token.opr.idx = cls->token.opr.idx = node->token.opr.idx; + op->token.opt_subexp = cls->token.opt_subexp = node->token.opt_subexp; + return tree; +} - switch (type) +/* Pass 1 in building the NFA: compute FIRST and create unlinked automaton + nodes. Requires a postorder visit. */ +static reg_errcode_t +calc_first (extra, node) + void *extra; + bin_tree_t *node; +{ + re_dfa_t *dfa = (re_dfa_t *) extra; + if (node->token.type == CONCAT) + { + node->first = node->left->first; + node->node_idx = node->left->node_idx; + } + else + { + node->first = node; + node->node_idx = re_dfa_add_node (dfa, node->token); + if (BE (node->node_idx == -1, 0)) + return REG_ESPACE; + } + return REG_NOERROR; +} + +/* Pass 2: compute NEXT on the tree. Preorder visit. */ +static reg_errcode_t +calc_next (extra, node) + void *extra; + bin_tree_t *node; +{ + switch (node->token.type) { case OP_DUP_ASTERISK: - node->next = idx; + node->left->next = node; break; case CONCAT: - if (parent->left == node) - { - if (parent->right->first == -1) - calc_first (dfa, parent->right); - node->next = parent->right->first; - break; - } - /* else fall through */ + node->left->next = node->right->first; + node->right->next = node->next; + break; default: - if (parent->next == -1) - calc_next (dfa, parent); - node->next = parent->next; + if (node->left) + node->left->next = node->next; + if (node->right) + node->right->next = node->next; break; } - idx = node->node_idx; - if (node->type == 0) - dfa->nexts[idx] = node->next; + return REG_NOERROR; } -/* Calculate "edest" for the node NODE. */ - -static void -calc_epsdest (dfa, node) - re_dfa_t *dfa; +/* Pass 3: link all DFA nodes to their NEXT node (any order will do). */ +static reg_errcode_t +link_nfa_nodes (extra, node) + void *extra; bin_tree_t *node; { - int idx; - idx = node->node_idx; - if (node->type == 0) + re_dfa_t *dfa = (re_dfa_t *) extra; + int idx = node->node_idx; + reg_errcode_t err = REG_NOERROR; + + switch (node->token.type) { - if (dfa->nodes[idx].type == OP_DUP_ASTERISK - || dfa->nodes[idx].type == OP_DUP_QUESTION) - { - if (node->left->first == -1) - calc_first (dfa, node->left); - if (node->next == -1) - calc_next (dfa, node); - re_node_set_init_2 (dfa->edests + idx, node->left->first, - node->next); - } - else if (dfa->nodes[idx].type == OP_ALT) - { - int left, right; - if (node->left != NULL) - { - if (node->left->first == -1) - calc_first (dfa, node->left); - left = node->left->first; - } - else - { - if (node->next == -1) - calc_next (dfa, node); - left = node->next; - } - if (node->right != NULL) - { - if (node->right->first == -1) - calc_first (dfa, node->right); - right = node->right->first; - } - else - { - if (node->next == -1) - calc_next (dfa, node); - right = node->next; - } - re_node_set_init_2 (dfa->edests + idx, left, right); - } - else if (dfa->nodes[idx].type == ANCHOR - || dfa->nodes[idx].type == OP_OPEN_SUBEXP - || dfa->nodes[idx].type == OP_CLOSE_SUBEXP - || dfa->nodes[idx].type == OP_BACK_REF) - re_node_set_init_1 (dfa->edests + idx, node->next); - else - assert (!IS_EPSILON_NODE (dfa->nodes[idx].type)); + case CONCAT: + break; + + case END_OF_RE: + assert (node->next == NULL); + break; + + case OP_DUP_ASTERISK: + case OP_ALT: + { + int left, right; + dfa->has_plural_match = 1; + if (node->left != NULL) + left = node->left->first->node_idx; + else + left = node->next->node_idx; + if (node->right != NULL) + right = node->right->first->node_idx; + else + right = node->next->node_idx; + assert (left > -1); + assert (right > -1); + err = re_node_set_init_2 (dfa->edests + idx, left, right); + } + break; + + case ANCHOR: + case OP_OPEN_SUBEXP: + case OP_CLOSE_SUBEXP: + err = re_node_set_init_1 (dfa->edests + idx, node->next->node_idx); + break; + + case OP_BACK_REF: + dfa->nexts[idx] = node->next->node_idx; + if (node->token.type == OP_BACK_REF) + re_node_set_init_1 (dfa->edests + idx, dfa->nexts[idx]); + break; + + default: + assert (!IS_EPSILON_NODE (node->token.type)); + dfa->nexts[idx] = node->next->node_idx; + break; } + + return err; } /* Duplicate the epsilon closure of the node ROOT_NODE. @@ -1368,7 +1530,7 @@ else /* dfa->edests[org_node].nelem == 2 */ { /* In case of the node can epsilon-transit, and it has two - destinations. E.g. '|', '*', '+', '?'. */ + destinations. In the bin_tree_t and DFA, that's '|' and '*'. */ org_dest = dfa->edests[org_node].elems[0]; re_node_set_empty (dfa->edests + clone_node); /* Search for a duplicated node which satisfies the constraint. */ @@ -1439,16 +1601,13 @@ int *new_idx, org_idx; unsigned int constraint; { - int dup_idx = re_dfa_add_node (dfa, dfa->nodes[org_idx], 1); + int dup_idx = re_dfa_add_node (dfa, dfa->nodes[org_idx]); if (BE (dup_idx == -1, 0)) return REG_ESPACE; dfa->nodes[dup_idx].constraint = constraint; if (dfa->nodes[org_idx].type == ANCHOR) dfa->nodes[dup_idx].constraint |= dfa->nodes[org_idx].opr.ctx_type; dfa->nodes[dup_idx].duplicated = 1; - re_node_set_init_empty (dfa->edests + dup_idx); - re_node_set_init_empty (dfa->eclosures + dup_idx); - re_node_set_init_empty (dfa->inveclosures + dup_idx); /* Store the index of the original node. */ dfa->org_indices[dup_idx] = org_idx; @@ -1456,19 +1615,26 @@ return REG_NOERROR; } -static void +static reg_errcode_t calc_inveclosure (dfa) re_dfa_t *dfa; { - int src, idx, dest; + int src, idx, ret; + for (idx = 0; idx < dfa->nodes_len; ++idx) + re_node_set_init_empty (dfa->inveclosures + idx); + for (src = 0; src < dfa->nodes_len; ++src) { + int *elems = dfa->eclosures[src].elems; for (idx = 0; idx < dfa->eclosures[src].nelem; ++idx) { - dest = dfa->eclosures[src].elems[idx]; - re_node_set_insert (dfa->inveclosures + dest, src); + ret = re_node_set_insert_last (dfa->inveclosures + elems[idx], src); + if (BE (ret == -1, 0)) + return REG_ESPACE; } } + + return REG_NOERROR; } /* Calculate "eclosure" for all the node in DFA. */ @@ -1498,6 +1664,7 @@ #ifdef DEBUG assert (dfa->eclosures[node_idx].nelem != -1); #endif + /* If we have already calculated, skip it. */ if (dfa->eclosures[node_idx].nelem != 0) continue; @@ -1540,7 +1707,9 @@ ? dfa->nodes[node].opr.ctx_type : 0); /* If the current node has constraints, duplicate all nodes. Since they must inherit the constraints. */ - if (constraint && !dfa->nodes[dfa->edests[node].elems[0]].duplicated) + if (constraint + && dfa->edests[node].nelem + && !dfa->nodes[dfa->edests[node].elems[0]].duplicated) { int org_node, cur_node; org_node = cur_node = node; @@ -1672,7 +1841,7 @@ if (!(syntax & RE_NO_BK_REFS)) { token->type = OP_BACK_REF; - token->opr.idx = c2 - '0'; + token->opr.idx = c2 - '1'; } break; case '<': @@ -1700,7 +1869,7 @@ if (!(syntax & RE_NO_GNU_OPS)) { token->type = ANCHOR; - token->opr.ctx_type = INSIDE_WORD; + token->opr.ctx_type = NOT_WORD_DELIM; } break; case 'w': @@ -1967,9 +2136,9 @@ tree = parse_reg_exp (regexp, preg, ¤t_token, syntax, 0, err); if (BE (*err != REG_NOERROR && tree == NULL, 0)) return NULL; - eor = re_dfa_add_tree_node (dfa, NULL, NULL, ¤t_token); + eor = create_tree (dfa, NULL, NULL, END_OF_RE); if (tree != NULL) - root = create_tree (dfa, tree, eor, CONCAT, 0); + root = create_tree (dfa, tree, eor, CONCAT); else root = eor; if (BE (eor == NULL || root == NULL, 0)) @@ -2006,7 +2175,6 @@ while (token->type == OP_ALT) { - re_token_t alt_token = *token; fetch_token (token, regexp, syntax | RE_CARET_ANCHORS_HERE); if (token->type != OP_ALT && token->type != END_OF_RE && (nest == 0 || token->type != OP_CLOSE_SUBEXP)) @@ -2017,13 +2185,12 @@ } else branch = NULL; - tree = re_dfa_add_tree_node (dfa, tree, branch, &alt_token); + tree = create_tree (dfa, tree, branch, OP_ALT); if (BE (tree == NULL, 0)) { *err = REG_ESPACE; return NULL; } - dfa->has_plural_match = 1; } return tree; } @@ -2062,7 +2229,7 @@ } if (tree != NULL && exp != NULL) { - tree = create_tree (dfa, tree, exp, CONCAT, 0); + tree = create_tree (dfa, tree, exp, CONCAT); if (tree == NULL) { *err = REG_ESPACE; @@ -2096,7 +2263,7 @@ switch (token->type) { case CHARACTER: - tree = re_dfa_add_tree_node (dfa, NULL, NULL, token); + tree = create_token_tree (dfa, NULL, NULL, token); if (BE (tree == NULL, 0)) { *err = REG_ESPACE; @@ -2110,8 +2277,8 @@ { bin_tree_t *mbc_remain; fetch_token (token, regexp, syntax); - mbc_remain = re_dfa_add_tree_node (dfa, NULL, NULL, token); - tree = create_tree (dfa, tree, mbc_remain, CONCAT, 0); + mbc_remain = create_token_tree (dfa, NULL, NULL, token); + tree = create_tree (dfa, tree, mbc_remain, CONCAT); if (BE (mbc_remain == NULL || tree == NULL, 0)) { *err = REG_ESPACE; @@ -2132,14 +2299,13 @@ return NULL; break; case OP_BACK_REF: - if (BE (preg->re_nsub < token->opr.idx - || dfa->subexps[token->opr.idx - 1].end == -1, 0)) + if (!BE (dfa->completed_bkref_map & (1 << token->opr.idx), 1)) { *err = REG_ESUBREG; return NULL; } - dfa->used_bkref_map |= 1 << (token->opr.idx - 1); - tree = re_dfa_add_tree_node (dfa, NULL, NULL, token); + dfa->used_bkref_map |= 1 << token->opr.idx; + tree = create_token_tree (dfa, NULL, NULL, token); if (BE (tree == NULL, 0)) { *err = REG_ESPACE; @@ -2184,7 +2350,7 @@ token->type = CHARACTER; /* mb_partial and word_char bits should be initialized already by peek_token. */ - tree = re_dfa_add_tree_node (dfa, NULL, NULL, token); + tree = create_token_tree (dfa, NULL, NULL, token); if (BE (tree == NULL, 0)) { *err = REG_ESPACE; @@ -2193,18 +2359,27 @@ break; case ANCHOR: if ((token->opr.ctx_type - & (WORD_DELIM | INSIDE_WORD | WORD_FIRST | WORD_LAST)) + & (WORD_DELIM | NOT_WORD_DELIM | WORD_FIRST | WORD_LAST)) && dfa->word_ops_used == 0) init_word_char (dfa); - if (token->opr.ctx_type == WORD_DELIM) + if (token->opr.ctx_type == WORD_DELIM + || token->opr.ctx_type == NOT_WORD_DELIM) { bin_tree_t *tree_first, *tree_last; - token->opr.ctx_type = WORD_FIRST; - tree_first = re_dfa_add_tree_node (dfa, NULL, NULL, token); - token->opr.ctx_type = WORD_LAST; - tree_last = re_dfa_add_tree_node (dfa, NULL, NULL, token); - token->type = OP_ALT; - tree = re_dfa_add_tree_node (dfa, tree_first, tree_last, token); + if (token->opr.ctx_type == WORD_DELIM) + { + token->opr.ctx_type = WORD_FIRST; + tree_first = create_token_tree (dfa, NULL, NULL, token); + token->opr.ctx_type = WORD_LAST; + } + else + { + token->opr.ctx_type = INSIDE_WORD; + tree_first = create_token_tree (dfa, NULL, NULL, token); + token->opr.ctx_type = INSIDE_NOTWORD; + } + tree_last = create_token_tree (dfa, NULL, NULL, token); + tree = create_tree (dfa, tree_first, tree_last, OP_ALT); if (BE (tree_first == NULL || tree_last == NULL || tree == NULL, 0)) { *err = REG_ESPACE; @@ -2213,7 +2388,7 @@ } else { - tree = re_dfa_add_tree_node (dfa, NULL, NULL, token); + tree = create_token_tree (dfa, NULL, NULL, token); if (BE (tree == NULL, 0)) { *err = REG_ESPACE; @@ -2227,7 +2402,7 @@ fetch_token (token, regexp, syntax); return tree; case OP_PERIOD: - tree = re_dfa_add_tree_node (dfa, NULL, NULL, token); + tree = create_token_tree (dfa, NULL, NULL, token); if (BE (tree == NULL, 0)) { *err = REG_ESPACE; @@ -2237,22 +2412,20 @@ dfa->has_mb_node = 1; break; case OP_WORD: - tree = build_charclass_op (dfa, regexp->trans, "alnum", "_", 0, err); - if (BE (*err != REG_NOERROR && tree == NULL, 0)) - return NULL; - break; case OP_NOTWORD: - tree = build_charclass_op (dfa, regexp->trans, "alnum", "_", 1, err); + tree = build_charclass_op (dfa, regexp->trans, + (const char *) "alnum", + (const char *) "_", + token->type == OP_NOTWORD, err); if (BE (*err != REG_NOERROR && tree == NULL, 0)) return NULL; break; case OP_SPACE: - tree = build_charclass_op (dfa, regexp->trans, "space", "", 0, err); - if (BE (*err != REG_NOERROR && tree == NULL, 0)) - return NULL; - break; case OP_NOTSPACE: - tree = build_charclass_op (dfa, regexp->trans, "space", "", 1, err); + tree = build_charclass_op (dfa, regexp->trans, + (const char *) "space", + (const char *) "", + token->type == OP_NOTSPACE, err); if (BE (*err != REG_NOERROR && tree == NULL, 0)) return NULL; break; @@ -2285,7 +2458,6 @@ *err = REG_BADRPT; return NULL; } - dfa->has_plural_match = 1; } return tree; @@ -2308,32 +2480,10 @@ reg_errcode_t *err; { re_dfa_t *dfa = (re_dfa_t *) preg->buffer; - bin_tree_t *tree, *left_par, *right_par; + bin_tree_t *tree; size_t cur_nsub; cur_nsub = preg->re_nsub++; - if (BE (dfa->subexps_alloc < preg->re_nsub, 0)) - { - re_subexp_t *new_array; - dfa->subexps_alloc *= 2; - new_array = re_realloc (dfa->subexps, re_subexp_t, dfa->subexps_alloc); - if (BE (new_array == NULL, 0)) - { - dfa->subexps_alloc /= 2; - *err = REG_ESPACE; - return NULL; - } - dfa->subexps = new_array; - } - dfa->subexps[cur_nsub].start = dfa->nodes_len; - dfa->subexps[cur_nsub].end = -1; - left_par = re_dfa_add_tree_node (dfa, NULL, NULL, token); - if (BE (left_par == NULL, 0)) - { - *err = REG_ESPACE; - return NULL; - } - dfa->nodes[left_par->node_idx].opr.idx = cur_nsub; fetch_token (token, regexp, syntax | RE_CARET_ANCHORS_HERE); /* The subexpression may be a null string. */ @@ -2342,26 +2492,20 @@ else { tree = parse_reg_exp (regexp, preg, token, syntax, nest, err); - if (BE (*err != REG_NOERROR && tree == NULL, 0)) + if (BE (*err == REG_NOERROR && token->type != OP_CLOSE_SUBEXP, 0)) + *err = REG_EPAREN; + if (BE (*err != REG_NOERROR, 0)) return NULL; } - if (BE (token->type != OP_CLOSE_SUBEXP, 0)) - { - *err = REG_EPAREN; - return NULL; - } - right_par = re_dfa_add_tree_node (dfa, NULL, NULL, token); - dfa->subexps[cur_nsub].end = dfa->nodes_len; - tree = ((tree == NULL) ? right_par - : create_tree (dfa, tree, right_par, CONCAT, 0)); - tree = create_tree (dfa, left_par, tree, CONCAT, 0); - if (BE (right_par == NULL || tree == NULL, 0)) + dfa->completed_bkref_map |= 1 << cur_nsub; + + tree = create_tree (dfa, tree, NULL, SUBEXP); + if (BE (tree == NULL, 0)) { *err = REG_ESPACE; return NULL; } - dfa->nodes[right_par->node_idx].opr.idx = cur_nsub; - + tree->token.opr.idx = cur_nsub; return tree; } @@ -2376,10 +2520,15 @@ reg_syntax_t syntax; reg_errcode_t *err; { - re_token_t dup_token; - bin_tree_t *tree = NULL; + bin_tree_t *tree = NULL, *old_tree = NULL; int i, start, end, start_idx = re_string_cur_idx (regexp); +#ifndef RE_TOKEN_INIT_BUG re_token_t start_token = *token; +#else + re_token_t start_token; + + memcpy ((void *) &start_token, (void *) token, sizeof start_token); +#endif if (token->type == OP_OPEN_DUP_NUM) { @@ -2437,67 +2586,63 @@ end = (token->type == OP_DUP_QUESTION) ? 1 : -1; } - /* Treat "{0}*" etc. as "{0}". */ + fetch_token (token, regexp, syntax); + if (BE (elem == NULL, 0)) - start = end = 0; + return NULL; + if (BE (start == 0 && end == 0, 0)) + { + postorder (elem, free_tree, NULL); + return NULL; + } /* Extract "{n,m}" to "...{0,}". */ - else if (BE (start > 0, 0)) + if (BE (start > 0, 0)) { tree = elem; for (i = 2; i <= start; ++i) { elem = duplicate_tree (elem, dfa); - tree = create_tree (dfa, tree, elem, CONCAT, 0); + tree = create_tree (dfa, tree, elem, CONCAT); if (BE (elem == NULL || tree == NULL, 0)) goto parse_dup_op_espace; } + + if (start == end) + return tree; + + /* Duplicate ELEM before it is marked optional. */ + elem = duplicate_tree (elem, dfa); + old_tree = tree; } + else + old_tree = NULL; - if (BE (end != start, 1)) - { - dup_token.type = (end == -1 ? OP_DUP_ASTERISK : OP_DUP_QUESTION); - if (BE (start > 0, 0)) - { - elem = duplicate_tree (elem, dfa); - if (BE (elem == NULL, 0)) - goto parse_dup_op_espace; + if (elem->token.type == SUBEXP) + postorder (elem, mark_opt_subexp, (void *) (long) elem->token.opr.idx); - /* This subexpression will be marked as optional, so that - empty matches do not touch the registers. */ - mark_opt_subexp (elem, dfa); - - /* Prepare the tree with the modifier. */ - elem = re_dfa_add_tree_node (dfa, elem, NULL, &dup_token); - tree = create_tree (dfa, tree, elem, CONCAT, 0); - } - else - { - /* We do not need to duplicate the tree because we have not - created it yet. */ - mark_opt_subexp (elem, dfa); - tree = elem = re_dfa_add_tree_node (dfa, elem, NULL, &dup_token); - } + tree = create_tree (dfa, elem, NULL, (end == -1 ? OP_DUP_ASTERISK : OP_ALT)); + if (BE (tree == NULL, 0)) + goto parse_dup_op_espace; + /* This loop is actually executed only when end != -1, + to rewrite {0,n} as ((...?)?)?... We have + already created the start+1-th copy. */ + for (i = start + 2; i <= end; ++i) + { + elem = duplicate_tree (elem, dfa); + tree = create_tree (dfa, tree, elem, CONCAT); if (BE (elem == NULL || tree == NULL, 0)) goto parse_dup_op_espace; - /* This loop is actually executed only when end != -1, - to rewrite {0,n} as ???... We have - already created the start+1-th copy. */ - for (i = start + 2; i <= end; ++i) - { - elem = duplicate_tree (elem, dfa); - tree = create_tree (dfa, tree, elem, CONCAT, 0); - if (BE (elem == NULL || tree == NULL, 0)) - { - *err = REG_ESPACE; - return NULL; - } - } + tree = create_tree (dfa, tree, NULL, OP_ALT); + if (BE (tree == NULL, 0)) + goto parse_dup_op_espace; } - fetch_token (token, regexp, syntax); + if (old_tree) + tree = create_tree (dfa, old_tree, tree, CONCAT); + return tree; parse_dup_op_espace: @@ -2558,8 +2703,10 @@ ? __btowc (start_ch) : start_elem->opr.wch); end_wc = ((end_elem->type == SB_CHAR || end_elem->type == COLL_SYM) ? __btowc (end_ch) : end_elem->opr.wch); - cmp_buf[0] = start_wc != WEOF ? start_wc : start_ch; - cmp_buf[4] = end_wc != WEOF ? end_wc : end_ch; + if (start_wc == WEOF || end_wc == WEOF) + return REG_ECOLLATE; + cmp_buf[0] = start_wc; + cmp_buf[4] = end_wc; if (wcscoll (cmp_buf, cmp_buf + 4) > 0) return REG_ERANGE; @@ -2599,7 +2746,7 @@ } /* Build the table for single byte characters. */ - for (wc = 0; wc <= SBC_MAX; ++wc) + for (wc = 0; wc < SBC_MAX; ++wc) { cmp_buf[2] = wc; if (wcscoll (cmp_buf, cmp_buf + 2) <= 0 @@ -2619,7 +2766,7 @@ if (start_ch > end_ch) return REG_ERANGE; /* Build the table for single byte characters. */ - for (ch = 0; ch <= SBC_MAX; ++ch) + for (ch = 0; ch < SBC_MAX; ++ch) if (start_ch <= ch && ch <= end_ch) bitset_set (sbcset, ch); } @@ -2680,7 +2827,7 @@ Seek the collating symbol entry correspondings to NAME. Return the index of the symbol in the SYMB_TABLE. */ - static inline int32_t + auto inline int32_t __attribute ((always_inline)) seek_collating_symbol_entry (name, name_len) const unsigned char *name; @@ -2713,7 +2860,7 @@ Look up the collation sequence value of BR_ELEM. Return the value if succeeded, UINT_MAX otherwise. */ - static inline unsigned int + auto inline unsigned int __attribute ((always_inline)) lookup_collation_sequence_value (br_elem) bracket_elem_t *br_elem; @@ -2781,7 +2928,7 @@ mbcset->range_ends, is a pointer argument sinse we may update it. */ - static inline reg_errcode_t + auto inline reg_errcode_t __attribute ((always_inline)) build_range_exp (sbcset, mbcset, range_alloc, start_elem, end_elem) re_charset_t *mbcset; @@ -2842,7 +2989,7 @@ } /* Build the table for single byte characters. */ - for (ch = 0; ch <= SBC_MAX; ch++) + for (ch = 0; ch < SBC_MAX; ch++) { uint32_t ch_collseq; /* @@ -2864,7 +3011,7 @@ COLL_SYM_ALLOC is the allocated size of mbcset->coll_sym, is a pointer argument sinse we may update it. */ - static inline reg_errcode_t + auto inline reg_errcode_t __attribute ((always_inline)) build_collating_symbol (sbcset, mbcset, coll_sym_alloc, name) re_charset_t *mbcset; @@ -3122,7 +3269,7 @@ #ifdef RE_ENABLE_I18N mbcset, &char_class_alloc, #endif /* RE_ENABLE_I18N */ - start_elem.opr.name, syntax); + (const char *) start_elem.opr.name, syntax); if (BE (*err != REG_NOERROR, 0)) goto parse_bracket_exp_free_return; break; @@ -3150,57 +3297,59 @@ /* Ensure only single byte characters are set. */ if (dfa->mb_cur_max > 1) bitset_mask (sbcset, dfa->sb_char); -#endif /* RE_ENABLE_I18N */ - - /* Build a tree for simple bracket. */ - br_token.type = SIMPLE_BRACKET; - br_token.opr.sbcset = sbcset; - work_tree = re_dfa_add_tree_node (dfa, NULL, NULL, &br_token); - if (BE (work_tree == NULL, 0)) - goto parse_bracket_exp_espace; -#ifdef RE_ENABLE_I18N if (mbcset->nmbchars || mbcset->ncoll_syms || mbcset->nequiv_classes || mbcset->nranges || (dfa->mb_cur_max > 1 && (mbcset->nchar_classes || mbcset->non_match))) { - re_token_t alt_token; bin_tree_t *mbc_tree; int sbc_idx; /* Build a tree for complex bracket. */ dfa->has_mb_node = 1; + br_token.type = COMPLEX_BRACKET; + br_token.opr.mbcset = mbcset; + mbc_tree = create_token_tree (dfa, NULL, NULL, &br_token); + if (BE (mbc_tree == NULL, 0)) + goto parse_bracket_exp_espace; for (sbc_idx = 0; sbc_idx < BITSET_UINTS; ++sbc_idx) if (sbcset[sbc_idx]) break; /* If there are no bits set in sbcset, there is no point of having both SIMPLE_BRACKET and COMPLEX_BRACKET. */ - if (sbc_idx == BITSET_UINTS) + if (sbc_idx < BITSET_UINTS) + { + /* Build a tree for simple bracket. */ + br_token.type = SIMPLE_BRACKET; + br_token.opr.sbcset = sbcset; + work_tree = create_token_tree (dfa, NULL, NULL, &br_token); + if (BE (work_tree == NULL, 0)) + goto parse_bracket_exp_espace; + + /* Then join them by ALT node. */ + work_tree = create_tree (dfa, work_tree, mbc_tree, OP_ALT); + if (BE (work_tree == NULL, 0)) + goto parse_bracket_exp_espace; + } + else { re_free (sbcset); - dfa->nodes[work_tree->node_idx].type = COMPLEX_BRACKET; - dfa->nodes[work_tree->node_idx].opr.mbcset = mbcset; - return work_tree; + work_tree = mbc_tree; } - br_token.type = COMPLEX_BRACKET; - br_token.opr.mbcset = mbcset; - mbc_tree = re_dfa_add_tree_node (dfa, NULL, NULL, &br_token); - if (BE (mbc_tree == NULL, 0)) - goto parse_bracket_exp_espace; - /* Then join them by ALT node. */ - alt_token.type = OP_ALT; - dfa->has_plural_match = 1; - work_tree = re_dfa_add_tree_node (dfa, work_tree, mbc_tree, &alt_token); - if (BE (mbc_tree != NULL, 1)) - return work_tree; } else +#endif /* not RE_ENABLE_I18N */ { +#ifdef RE_ENABLE_I18N free_charset (mbcset); - return work_tree; +#endif + /* Build a tree for simple bracket. */ + br_token.type = SIMPLE_BRACKET; + br_token.opr.sbcset = sbcset; + work_tree = create_token_tree (dfa, NULL, NULL, &br_token); + if (BE (work_tree == NULL, 0)) + goto parse_bracket_exp_espace; } -#else /* not RE_ENABLE_I18N */ return work_tree; -#endif /* not RE_ENABLE_I18N */ parse_bracket_exp_espace: *err = REG_ESPACE; @@ -3469,8 +3618,14 @@ BUILD_CHARCLASS_LOOP (isprint) else if (strcmp (class_name, "upper") == 0) BUILD_CHARCLASS_LOOP (isupper) +#ifndef GAWK else if (strcmp (class_name, "blank") == 0) BUILD_CHARCLASS_LOOP (isblank) +#else + /* see comments above */ + else if (strcmp (class_name, "blank") == 0) + BUILD_CHARCLASS_LOOP (is_blank) +#endif else if (strcmp (class_name, "graph") == 0) BUILD_CHARCLASS_LOOP (isgraph) else if (strcmp (class_name, "punct") == 0) @@ -3560,26 +3715,23 @@ /* Build a tree for simple bracket. */ br_token.type = SIMPLE_BRACKET; br_token.opr.sbcset = sbcset; - tree = re_dfa_add_tree_node (dfa, NULL, NULL, &br_token); + tree = create_token_tree (dfa, NULL, NULL, &br_token); if (BE (tree == NULL, 0)) goto build_word_op_espace; #ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) { - re_token_t alt_token; bin_tree_t *mbc_tree; /* Build a tree for complex bracket. */ br_token.type = COMPLEX_BRACKET; br_token.opr.mbcset = mbcset; dfa->has_mb_node = 1; - mbc_tree = re_dfa_add_tree_node (dfa, NULL, NULL, &br_token); + mbc_tree = create_token_tree (dfa, NULL, NULL, &br_token); if (BE (mbc_tree == NULL, 0)) goto build_word_op_espace; /* Then join them by ALT node. */ - alt_token.type = OP_ALT; - dfa->has_plural_match = 1; - tree = re_dfa_add_tree_node (dfa, tree, mbc_tree, &alt_token); + tree = create_tree (dfa, tree, mbc_tree, OP_ALT); if (BE (mbc_tree != NULL, 1)) return tree; } @@ -3650,12 +3802,23 @@ /* Create a tree node. */ static bin_tree_t * -create_tree (dfa, left, right, type, index) +create_tree (dfa, left, right, type) re_dfa_t *dfa; bin_tree_t *left; bin_tree_t *right; re_token_type_t type; - int index; +{ + re_token_t t; + t.type = type; + return create_token_tree (dfa, left, right, &t); +} + +static bin_tree_t * +create_token_tree (dfa, left, right, token) + re_dfa_t *dfa; + bin_tree_t *left; + bin_tree_t *right; + const re_token_t *token; { bin_tree_t *tree; if (BE (dfa->str_tree_storage_idx == BIN_TREE_STORAGE_SIZE, 0)) @@ -3673,11 +3836,12 @@ tree->parent = NULL; tree->left = left; tree->right = right; - tree->type = type; - tree->node_idx = index; - tree->first = -1; - tree->next = -1; - re_node_set_init_empty (&tree->eclosure); + tree->token = *token; + tree->token.duplicated = 0; + tree->token.opt_subexp = 0; + tree->first = NULL; + tree->next = NULL; + tree->node_idx = -1; if (left != NULL) left->parent = tree; @@ -3686,103 +3850,89 @@ return tree; } -/* Create both a DFA node and a tree for it. */ +/* Mark the tree SRC as an optional subexpression. + To be called from preorder or postorder. */ -static bin_tree_t * -re_dfa_add_tree_node (dfa, left, right, token) - re_dfa_t *dfa; - bin_tree_t *left; - bin_tree_t *right; - const re_token_t *token; +static reg_errcode_t +mark_opt_subexp (extra, node) + void *extra; + bin_tree_t *node; { - int new_idx = re_dfa_add_node (dfa, *token, 0); - - if (new_idx == -1) - return NULL; + int idx = (int) (long) extra; + if (node->token.type == SUBEXP && node->token.opr.idx == idx) + node->token.opt_subexp = 1; - return create_tree (dfa, left, right, 0, new_idx); + return REG_NOERROR; } -/* Mark the tree SRC as an optional subexpression. */ +/* Free the allocated memory inside NODE. */ static void -mark_opt_subexp (src, dfa) - const bin_tree_t *src; - re_dfa_t *dfa; +free_token (re_token_t *node) { - /* Pass an OPT_SUBEXP_IDX which is != 1 if the duplicated tree is - a subexpression. */ - if (src->type == CONCAT - && src->left->type == NON_TYPE - && dfa->nodes[src->left->node_idx].type == OP_OPEN_SUBEXP) - mark_opt_subexp_iter (src, dfa, dfa->nodes[src->left->node_idx].opr.idx); +#ifdef RE_ENABLE_I18N + if (node->type == COMPLEX_BRACKET && node->duplicated == 0) + free_charset (node->opr.mbcset); + else +#endif /* RE_ENABLE_I18N */ + if (node->type == SIMPLE_BRACKET && node->duplicated == 0) + re_free (node->opr.sbcset); } +/* Worker function for tree walking. Free the allocated memory inside NODE + and its children. */ -/* Recursive tree walker for mark_opt_subexp. */ - -static void -mark_opt_subexp_iter (src, dfa, idx) - const bin_tree_t *src; - re_dfa_t *dfa; - int idx; +static reg_errcode_t +free_tree (void *extra, bin_tree_t *node) { - int node_idx; - - if (src->type == NON_TYPE) - { - node_idx = src->node_idx; - if ((dfa->nodes[node_idx].type == OP_OPEN_SUBEXP - || dfa->nodes[node_idx].type == OP_CLOSE_SUBEXP) - && dfa->nodes[node_idx].opr.idx == idx) - dfa->nodes[node_idx].opt_subexp = 1; - } - - if (src->left != NULL) - mark_opt_subexp_iter (src->left, dfa, idx); - - if (src->right != NULL) - mark_opt_subexp_iter (src->right, dfa, idx); + free_token (&node->token); + return REG_NOERROR; } -/* Duplicate the node SRC, and return new node. */ +/* Duplicate the node SRC, and return new node. This is a preorder + visit similar to the one implemented by the generic visitor, but + we need more infrastructure to maintain two parallel trees --- so, + it's easier to duplicate. */ static bin_tree_t * -duplicate_tree (src, dfa) - const bin_tree_t *src; +duplicate_tree (root, dfa) + const bin_tree_t *root; re_dfa_t *dfa; { - bin_tree_t *left = NULL, *right = NULL, *new_tree; - int new_node_idx; - /* Since node indies must be according to Post-order of the tree, - we must duplicate the left at first. */ - if (src->left != NULL) - { - left = duplicate_tree (src->left, dfa); - if (left == NULL) - return NULL; - } + const bin_tree_t *node; + bin_tree_t *dup_root; + bin_tree_t **p_new = &dup_root, *dup_node = root->parent; - /* Secondaly, duplicate the right. */ - if (src->right != NULL) + for (node = root; ; ) { - right = duplicate_tree (src->right, dfa); - if (right == NULL) + /* Create a new tree and link it back to the current parent. */ + *p_new = create_token_tree (dfa, NULL, NULL, &node->token); + if (*p_new == NULL) return NULL; - } + (*p_new)->parent = dup_node; + (*p_new)->token.duplicated = 1; + dup_node = *p_new; - /* At last, duplicate itself. */ - if (src->type == NON_TYPE) - { - new_node_idx = re_dfa_add_node (dfa, dfa->nodes[src->node_idx], 0); - dfa->nodes[new_node_idx].duplicated = 1; - if (BE (new_node_idx == -1, 0)) - return NULL; + /* Go to the left node, or up and to the right. */ + if (node->left) + { + node = node->left; + p_new = &dup_node->left; + } + else + { + const bin_tree_t *prev = NULL; + while (node->right == prev || node->right == NULL) + { + prev = node; + node = node->parent; + dup_node = dup_node->parent; + if (!node) + return dup_root; + } + node = node->right; + p_new = &dup_node->right; + } } - else - new_node_idx = src->type; - - new_tree = create_tree (dfa, left, right, src->type, new_node_idx); - return new_tree; } diff -urN gawk-3.1.4/regex.c gawk-3.1.5/regex.c --- gawk-3.1.4/regex.c 2004-01-15 15:27:40.000000000 +0200 +++ gawk-3.1.5/regex.c 2005-05-11 18:28:17.000000000 +0300 @@ -15,37 +15,13 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ #ifdef HAVE_CONFIG_H #include "config.h" #endif -#ifdef _AIX -#pragma alloca -#else -# ifndef allocax /* predefined by HP cc +Olibcalls */ -# ifdef __GNUC__ -# define alloca(size) __builtin_alloca (size) -# else -# if HAVE_ALLOCA_H -# include -# else -# ifdef __hpux - void *alloca (); -# else -# if !defined __OS2__ && !defined WIN32 - char *alloca (); -# else -# include /* OS/2 defines alloca in here */ -# endif -# endif -# endif -# endif -# endif -#endif - #ifdef _LIBC /* We have to keep the namespace clean. */ # define regfree(preg) __regfree (preg) @@ -71,19 +47,21 @@ # include "../locale/localeinfo.h" #endif -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - +#ifdef HAVE_SYS_TYPES_H /* POSIX says that must be included (by the caller) before . */ #include +#endif #if defined (_MSC_VER) #include /* for size_t */ #endif +/* On some systems, limits.h sets RE_DUP_MAX to a lower value than + GNU regex allows. Include it before , which correctly + #undefs RE_DUP_MAX and sets it to the right value. */ #include + #include #include "regex_internal.h" diff -urN gawk-3.1.4/regex.h gawk-3.1.5/regex.h --- gawk-3.1.4/regex.h 2004-01-07 15:45:34.000000000 +0200 +++ gawk-3.1.5/regex.h 2005-05-11 18:28:17.000000000 +0300 @@ -16,13 +16,15 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ #ifndef _REGEX_H #define _REGEX_H 1 +#ifdef HAVE_SYS_TYPES_H #include +#endif /* Allow the use in C++ code. */ #ifdef __cplusplus @@ -179,6 +181,10 @@ immediately after an alternation or begin-group operator. */ #define RE_CONTEXT_INVALID_DUP (RE_CARET_ANCHORS_HERE << 1) +/* If this bit is set, then no_sub will be set to 1 during + re_compile_pattern. */ +#define RE_NO_SUB (RE_CONTEXT_INVALID_DUP << 1) + /* This global variable defines the particular regexp syntax to use (for some interfaces). When a regexp is compiled, the syntax used is stored in the pattern buffer, so changing this does not affect @@ -298,6 +304,10 @@ /* Like REG_NOTBOL, except for the end-of-line. */ #define REG_NOTEOL (1 << 1) +/* Use PMATCH[0] to delimit the start and end of the search in the + buffer. */ +#define REG_STARTEND (1 << 2) + /* If any error codes are removed, changed, or added, update the `re_error_msg' table in regex.c. */ @@ -313,7 +323,7 @@ /* POSIX regcomp return error codes. (In the order listed in the standard.) */ REG_BADPAT, /* Invalid pattern. */ - REG_ECOLLATE, /* Not implemented. */ + REG_ECOLLATE, /* Inalid collating element. */ REG_ECTYPE, /* Invalid character class name. */ REG_EESCAPE, /* Trailing backslash. */ REG_ESUBREG, /* Invalid back reference. */ @@ -543,8 +553,6 @@ # else # define __restrict # endif -# elif defined __APPLE_CC__ -# define __restrict # endif #endif /* gcc 3.1 and up support the [restrict] syntax. */ diff -urN gawk-3.1.4/regex_internal.c gawk-3.1.5/regex_internal.c --- gawk-3.1.4/regex_internal.c 2004-02-24 11:56:48.000000000 +0200 +++ gawk-3.1.5/regex_internal.c 2005-07-04 09:36:05.000000000 +0300 @@ -15,8 +15,8 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ static void re_string_construct_common (const char *str, int len, re_string_t *pstr, @@ -26,9 +26,6 @@ static int re_string_skip_chars (re_string_t *pstr, int new_raw_idx, wint_t *last_wc) internal_function; #endif /* RE_ENABLE_I18N */ -static re_dfastate_t *create_newstate_common (re_dfa_t *dfa, - const re_node_set *nodes, - unsigned int hash) internal_function; static reg_errcode_t register_state (re_dfa_t *dfa, re_dfastate_t *newstate, unsigned int hash) internal_function; static re_dfastate_t *create_ci_newstate (re_dfa_t *dfa, @@ -242,7 +239,7 @@ for (i = 0; i < pstr->mb_cur_max && i < remain_len; ++i) { ch = pstr->raw_mbs [pstr->raw_mbs_idx + byte_idx + i]; - buf[i] = pstr->trans[ch]; + buf[i] = pstr->mbs[byte_idx + i] = pstr->trans[ch]; } p = (const char *) buf; } @@ -293,9 +290,8 @@ byte_idx = pstr->valid_len; end_idx = (pstr->bufs_len > pstr->len) ? pstr->len : pstr->bufs_len; -#ifdef _LIBC - /* The following optimization assumes that the wchar_t encoding is - always ISO 10646. */ + /* The following optimization assumes that ASCII characters can be + mapped to wide characters with a simple cast. */ if (! pstr->map_notascii && pstr->trans == NULL && !pstr->offsets_needed) { while (byte_idx < end_idx) @@ -309,8 +305,7 @@ pstr->mbs[byte_idx] = toupper (pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx]); /* The next step uses the assumption that wchar_t is encoded - with ISO 10646: all ASCII values can be converted like - this. */ + ASCII-safe: all ASCII values can be converted like this. */ pstr->wcs[byte_idx] = (wchar_t) pstr->mbs[byte_idx]; ++byte_idx; continue; @@ -329,7 +324,7 @@ int mbcdlen; wcu = towupper (wc); - mbcdlen = wcrtomb (buf, wcu, &prev_st); + mbcdlen = wcrtomb ((char *)buf, wcu, &prev_st); if (BE (mbclen == mbcdlen, 1)) memcpy (pstr->mbs + byte_idx, buf, mbclen); else @@ -368,14 +363,12 @@ return REG_NOERROR; } else -#endif for (src_idx = pstr->valid_raw_len; byte_idx < end_idx;) { wchar_t wc; const char *p; -#ifdef _LIBC -offsets_needed: -#endif + + offsets_needed: remain_len = end_idx - byte_idx; prev_st = pstr->cur_state; if (BE (pstr->trans != NULL, 0)) @@ -400,7 +393,7 @@ int mbcdlen; wcu = towupper (wc); - mbcdlen = wcrtomb ((char *)buf, wcu, &prev_st); + mbcdlen = wcrtomb ((char *) buf, wcu, &prev_st); if (BE (mbclen == mbcdlen, 1)) memcpy (pstr->mbs + byte_idx, buf, mbclen); else @@ -581,7 +574,7 @@ int idx, eflags; { int offset = idx - pstr->raw_mbs_idx; - if (offset < 0) + if (BE (offset < 0, 0)) { /* Reset buffer. */ #ifdef RE_ENABLE_I18N @@ -601,10 +594,10 @@ offset = idx; } - if (offset != 0) + if (BE (offset != 0, 1)) { /* Are the characters which are already checked remain? */ - if (offset < pstr->valid_raw_len + if (BE (offset < pstr->valid_raw_len, 1) #ifdef RE_ENABLE_I18N /* Handling this would enlarge the code too much. Accept a slowdown in that case. */ @@ -619,7 +612,7 @@ memmove (pstr->wcs, pstr->wcs + offset, (pstr->valid_len - offset) * sizeof (wint_t)); #endif /* RE_ENABLE_I18N */ - if (pstr->mbs_allocated) + if (BE (pstr->mbs_allocated, 0)) memmove (pstr->mbs, pstr->mbs + offset, pstr->valid_len - offset); pstr->valid_len -= offset; @@ -647,7 +640,6 @@ int wcs_idx; wint_t wc = WEOF; -#ifdef _LIBC if (pstr->is_utf8) { const unsigned char *raw, *p, *q, *end; @@ -687,7 +679,7 @@ break; } } -#endif + if (wc == WEOF) pstr->valid_len = re_string_skip_chars (pstr, idx, &wc) - idx; if (BE (pstr->valid_len, 0)) @@ -717,7 +709,7 @@ ? CONTEXT_NEWLINE : 0)); } } - if (!pstr->mbs_allocated) + if (!BE (pstr->mbs_allocated, 0)) pstr->mbs += offset; } pstr->raw_mbs_idx = idx; @@ -739,16 +731,17 @@ } else #endif /* RE_ENABLE_I18N */ + if (BE (pstr->mbs_allocated, 0)) { if (pstr->icase) build_upper_buffer (pstr); else if (pstr->trans != NULL) re_string_translate_buffer (pstr); - else - pstr->valid_len = pstr->len; } - pstr->cur_idx = 0; + else + pstr->valid_len = pstr->len; + pstr->cur_idx = 0; return REG_NOERROR; } @@ -846,16 +839,13 @@ int idx, eflags; { int c; - if (idx < 0 || idx == input->len) - { - if (idx < 0) - /* In this case, we use the value stored in input->tip_context, - since we can't know the character in input->mbs[-1] here. */ - return input->tip_context; - else /* (idx == input->len) */ - return ((eflags & REG_NOTEOL) ? CONTEXT_ENDBUF - : CONTEXT_NEWLINE | CONTEXT_ENDBUF); - } + if (BE (idx < 0, 0)) + /* In this case, we use the value stored in input->tip_context, + since we can't know the character in input->mbs[-1] here. */ + return input->tip_context; + if (BE (idx == input->len, 0)) + return ((eflags & REG_NOTEOL) ? CONTEXT_ENDBUF + : CONTEXT_NEWLINE | CONTEXT_ENDBUF); #ifdef RE_ENABLE_I18N if (input->mb_cur_max > 1) { @@ -894,6 +884,16 @@ re_node_set *set; int size; { + /* + * ADR: valgrind says size can be 0, which then doesn't + * free the block of size 0. Harumph. This seems + * to work ok, though. + */ + if (size == 0) + { + memset(set, 0, sizeof(*set)); + return REG_NOERROR; + } set->alloc = size; set->nelem = 0; set->elems = re_malloc (int, size); @@ -1258,6 +1258,31 @@ return 1; } +/* Insert the new element ELEM to the re_node_set* SET. + SET should not already have any element greater than or equal to ELEM. + Return -1 if an error is occured, return 1 otherwise. */ + +static int +re_node_set_insert_last (set, elem) + re_node_set *set; + int elem; +{ + /* Realloc if we need. */ + if (set->alloc == set->nelem) + { + int *new_array; + set->alloc = (set->alloc + 1) * 2; + new_array = re_realloc (set->elems, int, set->alloc); + if (BE (new_array == NULL, 0)) + return -1; + set->elems = new_array; + } + + /* Insert the new element. */ + set->elems[set->nelem++] = elem; + return 1; +} + /* Compare two node sets SET1 and SET2. return 1 if SET1 and SET2 are equivalent, return 0 otherwise. */ @@ -1281,7 +1306,7 @@ const re_node_set *set; int elem; { - int idx, right, mid; + unsigned int idx, right, mid; if (set->nelem <= 0) return 0; @@ -1316,47 +1341,43 @@ Or return -1, if an error will be occured. */ static int -re_dfa_add_node (dfa, token, mode) +re_dfa_add_node (dfa, token) re_dfa_t *dfa; re_token_t token; - int mode; { if (BE (dfa->nodes_len >= dfa->nodes_alloc, 0)) { int new_nodes_alloc = dfa->nodes_alloc * 2; + int *new_nexts, *new_indices; + re_node_set *new_edests, *new_eclosures; + re_token_t *new_array = re_realloc (dfa->nodes, re_token_t, new_nodes_alloc); if (BE (new_array == NULL, 0)) return -1; dfa->nodes = new_array; - if (mode) - { - int *new_nexts, *new_indices; - re_node_set *new_edests, *new_eclosures, *new_inveclosures; - - new_nexts = re_realloc (dfa->nexts, int, new_nodes_alloc); - new_indices = re_realloc (dfa->org_indices, int, new_nodes_alloc); - new_edests = re_realloc (dfa->edests, re_node_set, new_nodes_alloc); - new_eclosures = re_realloc (dfa->eclosures, re_node_set, - new_nodes_alloc); - new_inveclosures = re_realloc (dfa->inveclosures, re_node_set, - new_nodes_alloc); - if (BE (new_nexts == NULL || new_indices == NULL - || new_edests == NULL || new_eclosures == NULL - || new_inveclosures == NULL, 0)) - return -1; - dfa->nexts = new_nexts; - dfa->org_indices = new_indices; - dfa->edests = new_edests; - dfa->eclosures = new_eclosures; - dfa->inveclosures = new_inveclosures; - } + new_nexts = re_realloc (dfa->nexts, int, new_nodes_alloc); + new_indices = re_realloc (dfa->org_indices, int, new_nodes_alloc); + new_edests = re_realloc (dfa->edests, re_node_set, new_nodes_alloc); + new_eclosures = re_realloc (dfa->eclosures, re_node_set, new_nodes_alloc); + if (BE (new_nexts == NULL || new_indices == NULL + || new_edests == NULL || new_eclosures == NULL, 0)) + return -1; + dfa->nexts = new_nexts; + dfa->org_indices = new_indices; + dfa->edests = new_edests; + dfa->eclosures = new_eclosures; dfa->nodes_alloc = new_nodes_alloc; } dfa->nodes[dfa->nodes_len] = token; - dfa->nodes[dfa->nodes_len].opt_subexp = 0; - dfa->nodes[dfa->nodes_len].duplicated = 0; dfa->nodes[dfa->nodes_len].constraint = 0; +#ifdef RE_ENABLE_I18N + dfa->nodes[dfa->nodes_len].accept_mb = + (token.type == OP_PERIOD && dfa->mb_cur_max > 1) || token.type == COMPLEX_BRACKET; +#endif + dfa->nexts[dfa->nodes_len] = -1; + re_node_set_init_empty (dfa->edests + dfa->nodes_len); + re_node_set_init_empty (dfa->eclosures + dfa->nodes_len); return dfa->nodes_len++; } @@ -1467,43 +1488,32 @@ } } -/* Allocate memory for DFA state and initialize common properties. - Return the new state if succeeded, otherwise return NULL. */ +/* Finish initialization of the new state NEWSTATE, and using its hash value + HASH put in the appropriate bucket of DFA's state table. Return value + indicates the error code if failed. */ -static re_dfastate_t * -create_newstate_common (dfa, nodes, hash) +static reg_errcode_t +register_state (dfa, newstate, hash) re_dfa_t *dfa; - const re_node_set *nodes; + re_dfastate_t *newstate; unsigned int hash; { - re_dfastate_t *newstate; + struct re_state_table_entry *spot; reg_errcode_t err; - newstate = (re_dfastate_t *) calloc (sizeof (re_dfastate_t), 1); - if (BE (newstate == NULL, 0)) - return NULL; - err = re_node_set_init_copy (&newstate->nodes, nodes); + int i; + + newstate->hash = hash; + err = re_node_set_alloc (&newstate->non_eps_nodes, newstate->nodes.nelem); if (BE (err != REG_NOERROR, 0)) + return REG_ESPACE; + for (i = 0; i < newstate->nodes.nelem; i++) { - re_free (newstate); - return NULL; + int elem = newstate->nodes.elems[i]; + if (!IS_EPSILON_NODE (dfa->nodes[elem].type)) + re_node_set_insert_last (&newstate->non_eps_nodes, elem); } - newstate->trtable = NULL; - newstate->hash = hash; - return newstate; -} - -/* Store the new state NEWSTATE whose hash value is HASH in appropriate - position. Return value indicate the error code if failed. */ -static reg_errcode_t -register_state (dfa, newstate, hash) - re_dfa_t *dfa; - re_dfastate_t *newstate; - unsigned int hash; -{ - struct re_state_table_entry *spot; spot = dfa->state_table + (hash & dfa->state_hash_mask); - if (BE (spot->alloc <= spot->num, 0)) { int new_alloc = 2 * spot->num + 2; @@ -1530,27 +1540,31 @@ int i; reg_errcode_t err; re_dfastate_t *newstate; - newstate = create_newstate_common (dfa, nodes, hash); + + newstate = (re_dfastate_t *) calloc (sizeof (re_dfastate_t), 1); if (BE (newstate == NULL, 0)) return NULL; - newstate->entrance_nodes = &newstate->nodes; + err = re_node_set_init_copy (&newstate->nodes, nodes); + if (BE (err != REG_NOERROR, 0)) + { + re_free (newstate); + return NULL; + } + newstate->entrance_nodes = &newstate->nodes; for (i = 0 ; i < nodes->nelem ; i++) { re_token_t *node = dfa->nodes + nodes->elems[i]; re_token_type_t type = node->type; if (type == CHARACTER && !node->constraint) continue; +#ifdef RE_ENABLE_I18N + newstate->accept_mb |= node->accept_mb; +#endif /* RE_ENABLE_I18N */ /* If the state has the halt node, the state is a halt state. */ - else if (type == END_OF_RE) + if (type == END_OF_RE) newstate->halt = 1; -#ifdef RE_ENABLE_I18N - else if (type == COMPLEX_BRACKET - || type == OP_UTF8_PERIOD - || (type == OP_PERIOD && dfa->mb_cur_max > 1)) - newstate->accept_mb = 1; -#endif /* RE_ENABLE_I18N */ else if (type == OP_BACK_REF) newstate->has_backref = 1; else if (type == ANCHOR || node->constraint) @@ -1578,9 +1592,16 @@ reg_errcode_t err; re_dfastate_t *newstate; - newstate = create_newstate_common (dfa, nodes, hash); + newstate = (re_dfastate_t *) calloc (sizeof (re_dfastate_t), 1); if (BE (newstate == NULL, 0)) return NULL; + err = re_node_set_init_copy (&newstate->nodes, nodes); + if (BE (err != REG_NOERROR, 0)) + { + re_free (newstate); + return NULL; + } + newstate->context = context; newstate->entrance_nodes = &newstate->nodes; @@ -1594,15 +1615,13 @@ if (type == CHARACTER && !constraint) continue; - /* If the state has the halt node, the state is a halt state. */ - else if (type == END_OF_RE) - newstate->halt = 1; #ifdef RE_ENABLE_I18N - else if (type == COMPLEX_BRACKET - || type == OP_UTF8_PERIOD - || (type == OP_PERIOD && dfa->mb_cur_max > 1)) - newstate->accept_mb = 1; + newstate->accept_mb |= node->accept_mb; #endif /* RE_ENABLE_I18N */ + + /* If the state has the halt node, the state is a halt state. */ + if (type == END_OF_RE) + newstate->halt = 1; else if (type == OP_BACK_REF) newstate->has_backref = 1; else if (type == ANCHOR) @@ -1643,12 +1662,15 @@ free_state (state) re_dfastate_t *state; { + re_node_set_free (&state->non_eps_nodes); + re_node_set_free (&state->inveclosure); if (state->entrance_nodes != &state->nodes) { re_node_set_free (state->entrance_nodes); re_free (state->entrance_nodes); } re_node_set_free (&state->nodes); + re_free (state->word_trtable); re_free (state->trtable); re_free (state); } diff -urN gawk-3.1.4/regex_internal.h gawk-3.1.5/regex_internal.h --- gawk-3.1.4/regex_internal.h 2004-06-01 18:40:10.000000000 +0300 +++ gawk-3.1.5/regex_internal.h 2005-05-11 18:28:17.000000000 +0300 @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa . @@ -15,26 +15,21 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ #ifndef _REGEX_INTERNAL_H #define _REGEX_INTERNAL_H 1 #include #include -#if 0 -/* Don't include this here. On some systems it sets RE_DUP_MAX to a - * lower value than GNU regex allows. Instead, include it in - * regex.c, before include of , which correctly - * #undefs RE_DUP_MAX and sets it to the right value. - */ -#include -#endif #include #include #include +#if defined HAVE_LANGINFO_H || defined HAVE_LANGINFO_CODESET || defined _LIBC +# include +#endif #if defined HAVE_LOCALE_H || defined _LIBC # include #endif @@ -45,10 +40,25 @@ # include #endif /* HAVE_WCTYPE_H || _LIBC */ +#ifndef GAWK /* In case that the system doesn't have isblank(). */ #if !defined _LIBC && !defined HAVE_ISBLANK && !defined isblank # define isblank(ch) ((ch) == ' ' || (ch) == '\t') #endif +#else /* GAWK */ +/* + * This is a freaking mess. On glibc systems you have to define + * a magic constant to get isblank() out of , since it's + * a C99 function. To heck wiht all that and borrow a page from + * dfa.c's book. + */ + +static int +is_blank (int c) +{ + return (c == ' ' || c == '\t'); +} +#endif /* GAWK */ #ifdef _LIBC # ifndef _RE_DEFINE_LOCALE_FUNCTIONS @@ -77,7 +87,12 @@ # define gettext_noop(String) String #endif +#ifndef NO_MBSUPPORT #include "mbsupport.h" /* gawk */ +#endif +#ifndef MB_CUR_MAX +#define MB_CUR_MAX 1 +#endif #if (defined MBS_SUPPORT) || _LIBC # define RE_ENABLE_I18N @@ -108,6 +123,7 @@ # define __btowc btowc # define __mempcpy mempcpy # define __wcrtomb wcrtomb +# define __regfree regfree # define attribute_hidden #endif /* not _LIBC */ @@ -117,14 +133,20 @@ # define __attribute(arg) #endif -#if _LIBC || __GNUC__ >= 3 -# define BE(expr, val) __builtin_expect (expr, val) -#else -# define BE(expr, val) (expr) -# define inline +/* Error messages (regcomp.c), with hackery to support very old compilers. */ +#ifdef NO_TOKEN_PASTING +#define RE_ERRMSG(idx) __re_error_msgid[(int) (idx)] +#define ERRMSG_TYPE char * const /* pointers */ +#define ERRMSG_OFFSET(base,offset) ((base)+1) /* array index */ +#define ERRMSG_SEPARATOR , +#else +#define RE_ERRMSG(idx) (__re_error_msgid + __re_error_msgid_idx[(int) (idx)]) +#define ERRMSG_TYPE char /* one string */ +#define ERRMSG_OFFSET(base,offset) ((base)+(offset)) /* substring index */ +#define ERRMSG_SEPARATOR "\0" #endif -extern const char __re_error_msgid[] attribute_hidden; +extern const ERRMSG_TYPE __re_error_msgid[] attribute_hidden; extern const size_t __re_error_msgid_idx[] attribute_hidden; /* Number of bits in an unsinged int. */ @@ -156,18 +178,21 @@ #define NEXT_NEWLINE_CONSTRAINT 0x0020 #define PREV_BEGBUF_CONSTRAINT 0x0040 #define NEXT_ENDBUF_CONSTRAINT 0x0080 -#define DUMMY_CONSTRAINT 0x0100 +#define WORD_DELIM_CONSTRAINT 0x0100 +#define NOT_WORD_DELIM_CONSTRAINT 0x0200 typedef enum { INSIDE_WORD = PREV_WORD_CONSTRAINT | NEXT_WORD_CONSTRAINT, WORD_FIRST = PREV_NOTWORD_CONSTRAINT | NEXT_WORD_CONSTRAINT, WORD_LAST = PREV_WORD_CONSTRAINT | NEXT_NOTWORD_CONSTRAINT, + INSIDE_NOTWORD = PREV_NOTWORD_CONSTRAINT | NEXT_NOTWORD_CONSTRAINT, LINE_FIRST = PREV_NEWLINE_CONSTRAINT, LINE_LAST = NEXT_NEWLINE_CONSTRAINT, BUF_FIRST = PREV_BEGBUF_CONSTRAINT, BUF_LAST = NEXT_ENDBUF_CONSTRAINT, - WORD_DELIM = DUMMY_CONSTRAINT + WORD_DELIM = WORD_DELIM_CONSTRAINT, + NOT_WORD_DELIM = NOT_WORD_DELIM_CONSTRAINT } re_context_type; typedef struct @@ -199,15 +224,16 @@ OP_CLOSE_SUBEXP = EPSILON_BIT | 1, OP_ALT = EPSILON_BIT | 2, OP_DUP_ASTERISK = EPSILON_BIT | 3, - OP_DUP_PLUS = EPSILON_BIT | 4, - OP_DUP_QUESTION = EPSILON_BIT | 5, - ANCHOR = EPSILON_BIT | 6, + ANCHOR = EPSILON_BIT | 4, /* Tree type, these are used only by tree. */ CONCAT = 16, + SUBEXP = 17, /* Token type, these are used only by token. */ - OP_OPEN_BRACKET = 17, + OP_DUP_PLUS = 18, + OP_DUP_QUESTION, + OP_OPEN_BRACKET, OP_CLOSE_BRACKET, OP_CHARSET_RANGE, OP_OPEN_DUP_NUM, @@ -296,6 +322,7 @@ unsigned int duplicated : 1; unsigned int opt_subexp : 1; #ifdef RE_ENABLE_I18N + unsigned int accept_mb : 1; /* These 2 bits can be moved into the union if needed (e.g. if running out of bits; move opr.c to opr.c.c and move the flags to opr.c.flags). */ unsigned int mb_partial : 1; @@ -304,8 +331,6 @@ } re_token_t; #define IS_EPSILON_NODE(type) ((type) & EPSILON_BIT) -#define ACCEPT_MB_NODE(type) \ - ((type) >= OP_PERIOD && (type) <= OP_UTF8_PERIOD) struct re_string_t { @@ -400,18 +425,20 @@ static void re_string_destruct (re_string_t *pstr) internal_function; # ifdef RE_ENABLE_I18N static int re_string_elem_size_at (const re_string_t *pstr, int idx) - internal_function; + internal_function __attribute ((pure)); static inline int re_string_char_size_at (const re_string_t *pstr, int idx) - internal_function; + internal_function __attribute ((pure)); static inline wint_t re_string_wchar_at (const re_string_t *pstr, int idx) - internal_function; + internal_function __attribute ((pure)); # endif /* RE_ENABLE_I18N */ static unsigned int re_string_context_at (const re_string_t *input, int idx, - int eflags) internal_function; + int eflags) + internal_function __attribute ((pure)); static unsigned char re_string_peek_byte_case (const re_string_t *pstr, - int idx) internal_function; + int idx) + internal_function __attribute ((pure)); static unsigned char re_string_fetch_byte_case (re_string_t *pstr) - internal_function; + internal_function __attribute ((pure)); #endif #define re_string_peek_byte(pstr, offset) \ ((pstr)->mbs[(pstr)->cur_idx + offset]) @@ -433,7 +460,6 @@ #define re_malloc(t,n) ((t *) malloc ((n) * sizeof (t))) /* SunOS 4.1.x realloc doesn't accept null pointers: pre-Standard C. Sigh. */ #define re_realloc(p,t,n) ((p != NULL) ? (t *) realloc (p,(n)*sizeof(t)) : (t *) calloc(n,sizeof(t))) - #define re_free(p) free (p) struct bin_tree_t @@ -441,15 +467,14 @@ struct bin_tree_t *parent; struct bin_tree_t *left; struct bin_tree_t *right; + struct bin_tree_t *first; + struct bin_tree_t *next; + + re_token_t token; /* `node_idx' is the index in dfa->nodes, if `type' == 0. Otherwise `type' indicate the type of this node. */ - re_token_type_t type; int node_idx; - - int first; - int next; - re_node_set eclosure; }; typedef struct bin_tree_t bin_tree_t; @@ -495,8 +520,10 @@ { unsigned int hash; re_node_set nodes; + re_node_set non_eps_nodes; + re_node_set inveclosure; re_node_set *entrance_nodes; - struct re_dfastate_t **trtable; + struct re_dfastate_t **trtable, **word_trtable; unsigned int context : 4; unsigned int halt : 1; /* If this state can accept `multi byte'. @@ -506,17 +533,9 @@ /* If this state has backreference node(s). */ unsigned int has_backref : 1; unsigned int has_constraint : 1; - unsigned int word_trtable : 1; }; typedef struct re_dfastate_t re_dfastate_t; -typedef struct -{ - /* start <= node < end */ - int start; - int end; -} re_subexp_t; - struct re_state_table_entry { int num; @@ -563,7 +582,9 @@ int str_idx; int subexp_from; int subexp_to; - int flag; + char more; + char unused; + unsigned short int eps_reachable_subexps_map; }; typedef struct @@ -595,17 +616,11 @@ typedef struct { - int cur_bkref; - int cls_subexp_idx; - re_dfastate_t **sifted_states; re_dfastate_t **limited_states; - - re_node_set limits; - int last_node; int last_str_idx; - int check_subexp; + re_node_set limits; } re_sift_context_t; struct re_fail_stack_ent_t @@ -625,7 +640,6 @@ struct re_dfa_t { - re_subexp_t *subexps; re_token_t *nodes; int nodes_alloc; int nodes_len; @@ -645,13 +659,15 @@ int str_tree_storage_idx; /* number of subexpressions `re_nsub' is in regex_t. */ - int subexps_alloc; unsigned int state_hash_mask; int states_alloc; int init_node; int nbackref; /* The number of backreference in this dfa. */ + /* Bitmap expressing which backreference is used. */ unsigned int used_bkref_map; + unsigned int completed_bkref_map; + unsigned int has_plural_match : 1; /* If this dfa has "multibyte node", which is a backreference or a node which can accept multibyte character or multi character @@ -663,6 +679,7 @@ int mb_cur_max; bitset word_char; reg_syntax_t syntax; + int *subexp_map; #ifdef DEBUG char* re_str; #endif @@ -685,15 +702,19 @@ static reg_errcode_t re_node_set_merge (re_node_set *dest, const re_node_set *src) internal_function; static int re_node_set_insert (re_node_set *set, int elem) internal_function; +static int re_node_set_insert_last (re_node_set *set, + int elem) internal_function; static int re_node_set_compare (const re_node_set *set1, - const re_node_set *set2) internal_function; -static int re_node_set_contains (const re_node_set *set, int elem) internal_function; + const re_node_set *set2) + internal_function __attribute ((pure)); +static int re_node_set_contains (const re_node_set *set, int elem) + internal_function __attribute ((pure)); static void re_node_set_remove_at (re_node_set *set, int idx) internal_function; #define re_node_set_remove(set,id) \ (re_node_set_remove_at (set, re_node_set_contains (set, id) - 1)) #define re_node_set_empty(p) ((p)->nelem = 0) #define re_node_set_free(set) re_free ((set)->elems) -static int re_dfa_add_node (re_dfa_t *dfa, re_token_t token, int mode) internal_function; +static int re_dfa_add_node (re_dfa_t *dfa, re_token_t token) internal_function; static re_dfastate_t *re_acquire_state (reg_errcode_t *err, re_dfa_t *dfa, const re_node_set *nodes) internal_function; static re_dfastate_t *re_acquire_state_context (reg_errcode_t *err, diff -urN gawk-3.1.4/regexec.c gawk-3.1.5/regexec.c --- gawk-3.1.4/regexec.c 2004-02-03 13:31:49.000000000 +0200 +++ gawk-3.1.5/regexec.c 2005-05-11 18:28:17.000000000 +0300 @@ -15,21 +15,18 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ static reg_errcode_t match_ctx_init (re_match_context_t *cache, int eflags, int n) internal_function; static void match_ctx_clean (re_match_context_t *mctx) internal_function; static void match_ctx_free (re_match_context_t *cache) internal_function; -static void match_ctx_free_subtops (re_match_context_t *mctx) - internal_function; static reg_errcode_t match_ctx_add_entry (re_match_context_t *cache, int node, int str_idx, int from, int to) internal_function; static int search_cur_bkref_entry (re_match_context_t *mctx, int str_idx) internal_function; -static void match_ctx_clear_flag (re_match_context_t *mctx) internal_function; static reg_errcode_t match_ctx_add_subtop (re_match_context_t *mctx, int node, int str_idx) internal_function; static re_sub_match_last_t * match_ctx_add_sublast (re_sub_match_top_t *subtop, @@ -37,7 +34,7 @@ internal_function; static void sift_ctx_init (re_sift_context_t *sctx, re_dfastate_t **sifted_sts, re_dfastate_t **limited_sts, int last_node, - int last_str_idx, int check_subexp) + int last_str_idx) internal_function; static reg_errcode_t re_search_internal (const regex_t *preg, const char *string, int length, @@ -76,7 +73,7 @@ int *pidx, int node, re_node_set *eps_via_nodes, struct re_fail_stack_t *fs) internal_function; static reg_errcode_t push_fail_stack (struct re_fail_stack_t *fs, - int str_idx, int *dests, int nregs, + int str_idx, int dest_node, int nregs, regmatch_t *regs, re_node_set *eps_via_nodes) internal_function; static int pop_fail_stack (struct re_fail_stack_t *fs, int *pidx, int nregs, @@ -94,6 +91,9 @@ #endif /* RE_ENABLE_I18N */ static reg_errcode_t sift_states_backward (re_match_context_t *mctx, re_sift_context_t *sctx) internal_function; +static reg_errcode_t build_sifted_states (re_match_context_t *mctx, + re_sift_context_t *sctx, int str_idx, + re_node_set *cur_dest) internal_function; static reg_errcode_t update_cur_sifted_state (re_match_context_t *mctx, re_sift_context_t *sctx, int str_idx, @@ -107,9 +107,13 @@ static int check_dst_limits (re_match_context_t *mctx, re_node_set *limits, int dst_node, int dst_idx, int src_node, int src_idx) internal_function; +static int check_dst_limits_calc_pos_1 (re_match_context_t *mctx, + int boundaries, int subexp_idx, + int from_node, int bkref_idx) internal_function; static int check_dst_limits_calc_pos (re_match_context_t *mctx, - int limit, re_node_set *eclosures, - int subexp_idx, int node, int str_idx) internal_function; + int limit, int subexp_idx, + int node, int str_idx, + int bkref_idx) internal_function; static reg_errcode_t check_subexp_limits (re_dfa_t *dfa, re_node_set *dest_nodes, const re_node_set *candidates, @@ -118,14 +122,19 @@ int str_idx) internal_function; static reg_errcode_t sift_states_bkref (re_match_context_t *mctx, re_sift_context_t *sctx, - int str_idx, re_node_set *dest_nodes) internal_function; + int str_idx, const re_node_set *candidates) internal_function; static reg_errcode_t clean_state_log_if_needed (re_match_context_t *mctx, int next_state_log_idx) internal_function; static reg_errcode_t merge_state_array (re_dfa_t *dfa, re_dfastate_t **dst, re_dfastate_t **src, int num) internal_function; +static re_dfastate_t *find_recover_state (reg_errcode_t *err, + re_match_context_t *mctx) internal_function; static re_dfastate_t *transit_state (reg_errcode_t *err, re_match_context_t *mctx, re_dfastate_t *state) internal_function; +static re_dfastate_t *merge_state_with_log (reg_errcode_t *err, + re_match_context_t *mctx, + re_dfastate_t *next_state) internal_function; static reg_errcode_t check_subexp_matching_top (re_match_context_t *mctx, re_node_set *cur_nodes, int str_idx) internal_function; @@ -165,10 +174,9 @@ int type) internal_function; static reg_errcode_t expand_bkref_cache (re_match_context_t *mctx, re_node_set *cur_nodes, int cur_str, - int last_str, int subexp_num, - int type) internal_function; -static re_dfastate_t **build_trtable (re_dfa_t *dfa, - re_dfastate_t *state) internal_function; + int subexp_num, int type) internal_function; +static int build_trtable (re_dfa_t *dfa, + re_dfastate_t *state) internal_function; #ifdef RE_ENABLE_I18N static int check_node_accept_bytes (re_dfa_t *dfa, int node_idx, const re_string_t *input, int idx) internal_function; @@ -210,17 +218,48 @@ int eflags; { reg_errcode_t err; - int length = strlen (string); + int start, length; + + if (eflags & ~(REG_NOTBOL | REG_NOTEOL | REG_STARTEND)) + return REG_BADPAT; + + if (eflags & REG_STARTEND) + { + start = pmatch[0].rm_so; + length = pmatch[0].rm_eo; + } + else + { + start = 0; + length = strlen (string); + } if (preg->no_sub) - err = re_search_internal (preg, string, length, 0, length, length, 0, - NULL, eflags); + err = re_search_internal (preg, string, length, start, length - start, + length, 0, NULL, eflags); else - err = re_search_internal (preg, string, length, 0, length, length, nmatch, - pmatch, eflags); + err = re_search_internal (preg, string, length, start, length - start, + length, nmatch, pmatch, eflags); return err != REG_NOERROR; } + #ifdef _LIBC -weak_alias (__regexec, regexec) +# include +versioned_symbol (libc, __regexec, regexec, GLIBC_2_3_4); + +# if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) +__typeof__ (__regexec) __compat_regexec; + +int +attribute_compat_text_section +__compat_regexec (const regex_t *__restrict preg, + const char *__restrict string, size_t nmatch, + regmatch_t pmatch[], int eflags) +{ + return regexec (preg, string, nmatch, pmatch, + eflags & (REG_NOTBOL | REG_NOTEOL)); +} +compat_symbol (libc, __compat_regexec, regexec, GLIBC_2_0); +# endif #endif /* Entry points for GNU code. */ @@ -542,8 +581,6 @@ } #endif /* _REGEX_RE_COMP */ -static re_node_set empty_set; - /* Internal entry point. */ /* Searches for a compiled pattern PREG in the string STRING, whose @@ -567,21 +604,26 @@ reg_errcode_t err; re_dfa_t *dfa = (re_dfa_t *)preg->buffer; int left_lim, right_lim, incr; - int fl_longest_match, match_first, match_last = -1; - int fast_translate, sb; + int fl_longest_match, match_first, match_kind, match_last = -1; + int extra_nmatch; + int sb, ch; #if defined _LIBC || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L) re_match_context_t mctx = { .dfa = dfa }; #else re_match_context_t mctx; #endif - char *fastmap = ((preg->fastmap != NULL && preg->fastmap_accurate - && range && !preg->can_be_null) ? preg->fastmap : NULL); + char *fastmap = (preg->fastmap != NULL && preg->fastmap_accurate + && range && !preg->can_be_null) ? preg->fastmap : NULL; + unsigned RE_TRANSLATE_TYPE t = (unsigned RE_TRANSLATE_TYPE) preg->translate; #if !(defined _LIBC || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) memset (&mctx, '\0', sizeof (re_match_context_t)); mctx.dfa = dfa; #endif + extra_nmatch = (nmatch > preg->re_nsub) ? nmatch - (preg->re_nsub + 1) : 0; + nmatch -= extra_nmatch; + /* Check if the DFA haven't been compiled. */ if (BE (preg->used == 0 || dfa->init_state == NULL || dfa->init_state_word == NULL || dfa->init_state_nl == NULL @@ -606,8 +648,6 @@ start = range = 0; } - re_node_set_init_empty (&empty_set); - /* We must check the longest matching, if nmatch > 0. */ fl_longest_match = (nmatch != 0 || dfa->nbackref); @@ -648,88 +688,100 @@ left_lim = (range < 0) ? start + range : start; right_lim = (range < 0) ? start : start + range; sb = dfa->mb_cur_max == 1; - fast_translate = sb || !(preg->syntax & RE_ICASE || preg->translate); + match_kind = + (fastmap + ? ((sb || !(preg->syntax & RE_ICASE || t) ? 4 : 0) + | (range >= 0 ? 2 : 0) + | (t != NULL ? 1 : 0)) + : 8); - for (;;) + for (;; match_first += incr) { - /* At first get the current byte from input string. */ - if (fastmap) + err = REG_NOMATCH; + if (match_first < left_lim || right_lim < match_first) + goto free_return; + + /* Advance as rapidly as possible through the string, until we + find a plausible place to start matching. This may be done + with varying efficiency, so there are various possibilities: + only the most common of them are specialized, in order to + save on code size. We use a switch statement for speed. */ + switch (match_kind) { - if (BE (fast_translate, 1)) - { - unsigned RE_TRANSLATE_TYPE t - = (unsigned RE_TRANSLATE_TYPE) preg->translate; - if (BE (range >= 0, 1)) - { - if (BE (t != NULL, 0)) - { - while (BE (match_first < right_lim, 1) - && !fastmap[t[(unsigned char) string[match_first]]]) - ++match_first; - } - else - { - while (BE (match_first < right_lim, 1) - && !fastmap[(unsigned char) string[match_first]]) - ++match_first; - } - if (BE (match_first == right_lim, 0)) - { - int ch = match_first >= length - ? 0 : (unsigned char) string[match_first]; - if (!fastmap[t ? t[ch] : ch]) - break; - } - } - else - { - while (match_first >= left_lim) - { - int ch = match_first >= length - ? 0 : (unsigned char) string[match_first]; - if (fastmap[t ? t[ch] : ch]) - break; - --match_first; - } - if (match_first < left_lim) - break; - } + case 8: + /* No fastmap. */ + break; + + case 7: + /* Fastmap with single-byte translation, match forward. */ + while (BE (match_first < right_lim, 1) + && !fastmap[t[(unsigned char) string[match_first]]]) + ++match_first; + goto forward_match_found_start_or_reached_end; + + case 6: + /* Fastmap without translation, match forward. */ + while (BE (match_first < right_lim, 1) + && !fastmap[(unsigned char) string[match_first]]) + ++match_first; + + forward_match_found_start_or_reached_end: + if (BE (match_first == right_lim, 0)) + { + ch = match_first >= length + ? 0 : (unsigned char) string[match_first]; + if (!fastmap[t ? t[ch] : ch]) + goto free_return; } - else - { - int ch; + break; - do + case 4: + case 5: + /* Fastmap without multi-byte translation, match backwards. */ + while (match_first >= left_lim) + { + ch = match_first >= length + ? 0 : (unsigned char) string[match_first]; + if (fastmap[t ? t[ch] : ch]) + break; + --match_first; + } + if (match_first < left_lim) + goto free_return; + break; + + default: + /* In this case, we can't determine easily the current byte, + since it might be a component byte of a multibyte + character. Then we use the constructed buffer instead. */ + for (;;) + { + /* If MATCH_FIRST is out of the valid range, reconstruct the + buffers. */ + unsigned int offset = match_first - mctx.input.raw_mbs_idx; + if (BE (offset >= (unsigned int) mctx.input.valid_raw_len, 0)) { - /* In this case, we can't determine easily the current byte, - since it might be a component byte of a multibyte - character. Then we use the constructed buffer - instead. */ - /* If MATCH_FIRST is out of the valid range, reconstruct the - buffers. */ - if (mctx.input.raw_mbs_idx + mctx.input.valid_raw_len - <= match_first - || match_first < mctx.input.raw_mbs_idx) - { - err = re_string_reconstruct (&mctx.input, match_first, - eflags); - if (BE (err != REG_NOERROR, 0)) - goto free_return; - } - /* If MATCH_FIRST is out of the buffer, leave it as '\0'. - Note that MATCH_FIRST must not be smaller than 0. */ - ch = ((match_first >= length) ? 0 - : re_string_byte_at (&mctx.input, - match_first - - mctx.input.raw_mbs_idx)); - if (fastmap[ch]) - break; - match_first += incr; + err = re_string_reconstruct (&mctx.input, match_first, + eflags); + if (BE (err != REG_NOERROR, 0)) + goto free_return; + + offset = match_first - mctx.input.raw_mbs_idx; } - while (match_first >= left_lim && match_first <= right_lim); - if (! fastmap[ch]) + /* If MATCH_FIRST is out of the buffer, leave it as '\0'. + Note that MATCH_FIRST must not be smaller than 0. */ + ch = (match_first >= length + ? 0 : re_string_byte_at (&mctx.input, offset)); + if (fastmap[ch]) break; + match_first += incr; + if (match_first < left_lim || match_first > right_lim) + { + err = REG_NOMATCH; + goto free_return; + } } + break; } /* Reconstruct the buffers so that the matcher can assume that @@ -737,57 +789,60 @@ err = re_string_reconstruct (&mctx.input, match_first, eflags); if (BE (err != REG_NOERROR, 0)) goto free_return; + #ifdef RE_ENABLE_I18N - /* Eliminate it when it is a component of a multibyte character - and isn't the head of a multibyte character. */ - if (sb || re_string_first_byte (&mctx.input, 0)) + /* Don't consider this char as a possible match start if it part, + yet isn't the head, of a multibyte character. */ + if (!sb && !re_string_first_byte (&mctx.input, 0)) + continue; #endif + + /* It seems to be appropriate one, then use the matcher. */ + /* We assume that the matching starts from 0. */ + mctx.state_log_top = mctx.nbkref_ents = mctx.max_mb_elem_len = 0; + match_last = check_matching (&mctx, fl_longest_match, + range >= 0 ? &match_first : NULL); + if (match_last != -1) { - /* It seems to be appropriate one, then use the matcher. */ - /* We assume that the matching starts from 0. */ - mctx.state_log_top = mctx.nbkref_ents = mctx.max_mb_elem_len = 0; - match_last = check_matching (&mctx, fl_longest_match, - range >= 0 ? &match_first : NULL); - if (match_last != -1) + if (BE (match_last == -2, 0)) { - if (BE (match_last == -2, 0)) + err = REG_ESPACE; + goto free_return; + } + else + { + mctx.match_last = match_last; + if ((!preg->no_sub && nmatch > 1) || dfa->nbackref) { - err = REG_ESPACE; - goto free_return; + re_dfastate_t *pstate = mctx.state_log[match_last]; + mctx.last_node = check_halt_state_context (&mctx, pstate, + match_last); } - else + if ((!preg->no_sub && nmatch > 1 && dfa->has_plural_match) + || dfa->nbackref) { - mctx.match_last = match_last; - if ((!preg->no_sub && nmatch > 1) || dfa->nbackref) - { - re_dfastate_t *pstate = mctx.state_log[match_last]; - mctx.last_node = check_halt_state_context (&mctx, pstate, - match_last); - } - if ((!preg->no_sub && nmatch > 1 && dfa->has_plural_match) - || dfa->nbackref) - { - err = prune_impossible_nodes (&mctx); - if (err == REG_NOERROR) - break; - if (BE (err != REG_NOMATCH, 0)) - goto free_return; - match_last = -1; - } - else - break; /* We found a match. */ + err = prune_impossible_nodes (&mctx); + if (err == REG_NOERROR) + break; + if (BE (err != REG_NOMATCH, 0)) + goto free_return; + match_last = -1; } + else + break; /* We found a match. */ } - match_ctx_clean (&mctx); } - /* Update counter. */ - match_first += incr; - if (match_first < left_lim || right_lim < match_first) - break; + + match_ctx_clean (&mctx); } +#ifdef DEBUG + assert (match_last != -1); + assert (err == REG_NOERROR); +#endif + /* Set pmatch[] if we need. */ - if (match_last != -1 && nmatch > 0) + if (nmatch > 0) { int reg_idx; @@ -831,8 +886,23 @@ pmatch[reg_idx].rm_so += match_first; pmatch[reg_idx].rm_eo += match_first; } + for (reg_idx = 0; reg_idx < extra_nmatch; ++reg_idx) + { + pmatch[nmatch + reg_idx].rm_so = -1; + pmatch[nmatch + reg_idx].rm_eo = -1; + } + + if (dfa->subexp_map) + for (reg_idx = 0; reg_idx + 1 < nmatch; reg_idx++) + if (dfa->subexp_map[reg_idx] != reg_idx) + { + pmatch[reg_idx + 1].rm_so + = pmatch[dfa->subexp_map[reg_idx] + 1].rm_so; + pmatch[reg_idx + 1].rm_eo + = pmatch[dfa->subexp_map[reg_idx] + 1].rm_eo; + } } - err = (match_last == -1) ? REG_NOMATCH : REG_NOERROR; + free_return: re_free (mctx.state_log); if (dfa->nbackref) @@ -874,9 +944,8 @@ { memset (lim_states, '\0', sizeof (re_dfastate_t *) * (match_last + 1)); - match_ctx_clear_flag (mctx); sift_ctx_init (&sctx, sifted_states, lim_states, halt_node, - match_last, 0); + match_last); ret = sift_states_backward (mctx, &sctx); re_node_set_free (&sctx.limits); if (BE (ret != REG_NOERROR, 0)) @@ -906,8 +975,7 @@ } else { - sift_ctx_init (&sctx, sifted_states, lim_states, halt_node, - match_last, 0); + sift_ctx_init (&sctx, sifted_states, lim_states, halt_node, match_last); ret = sift_states_backward (mctx, &sctx); re_node_set_free (&sctx.limits); if (BE (ret != REG_NOERROR, 0)) @@ -936,7 +1004,6 @@ int idx; { re_dfa_t *const dfa = mctx->dfa; - *err = REG_NOERROR; if (dfa->init_state->has_constraint) { unsigned int context; @@ -952,9 +1019,9 @@ else if (IS_BEGBUF_CONTEXT (context)) { /* It is relatively rare case, then calculate on demand. */ - return re_acquire_state_context (err, dfa, - dfa->init_state->entrance_nodes, - context); + return re_acquire_state_context (err, dfa, + dfa->init_state->entrance_nodes, + context); } else /* Must not happen? */ @@ -985,29 +1052,37 @@ int match_last = -1; int cur_str_idx = re_string_cur_idx (&mctx->input); re_dfastate_t *cur_state; - int at_init_state = p_match_first != NULL, skipped = 0; + int at_init_state = p_match_first != NULL; + int next_start_idx = cur_str_idx; + err = REG_NOERROR; cur_state = acquire_init_state_context (&err, mctx, cur_str_idx); - /* An initial state must not be NULL(invalid state). */ + /* An initial state must not be NULL (invalid). */ if (BE (cur_state == NULL, 0)) - return -2; - if (mctx->state_log != NULL) - mctx->state_log[cur_str_idx] = cur_state; + { + assert (err == REG_ESPACE); + return -2; + } - /* Check OP_OPEN_SUBEXP in the initial state in case that we use them - later. E.g. Processing back references. */ - if (BE (dfa->nbackref, 0)) + if (mctx->state_log != NULL) { - at_init_state = 0; - err = check_subexp_matching_top (mctx, &cur_state->nodes, 0); - if (BE (err != REG_NOERROR, 0)) - return err; + mctx->state_log[cur_str_idx] = cur_state; - if (cur_state->has_backref) + /* Check OP_OPEN_SUBEXP in the initial state in case that we use them + later. E.g. Processing back references. */ + if (BE (dfa->nbackref, 0)) { - err = transit_state_bkref (mctx, &cur_state->nodes); + at_init_state = 0; + err = check_subexp_matching_top (mctx, &cur_state->nodes, 0); if (BE (err != REG_NOERROR, 0)) return err; + + if (cur_state->has_backref) + { + err = transit_state_bkref (mctx, &cur_state->nodes); + if (BE (err != REG_NOERROR, 0)) + return err; + } } } @@ -1030,41 +1105,49 @@ while (!re_string_eoi (&mctx->input)) { re_dfastate_t *old_state = cur_state; + int next_char_idx = re_string_cur_idx (&mctx->input) + 1; + + if (BE (next_char_idx >= mctx->input.bufs_len, 0) + || (BE (next_char_idx >= mctx->input.valid_len, 0) + && mctx->input.valid_len < mctx->input.len)) + { + err = extend_buffers (mctx); + if (BE (err != REG_NOERROR, 0)) + { + assert (err == REG_ESPACE); + return -2; + } + } + cur_state = transit_state (&err, mctx, cur_state); - if (at_init_state) - { - if (old_state == cur_state) - skipped++; - else - at_init_state = 0; - } + if (mctx->state_log != NULL) + cur_state = merge_state_with_log (&err, mctx, cur_state); - if (cur_state == NULL) /* Reached at the invalid state or an error. */ + if (cur_state == NULL) { - cur_str_idx = re_string_cur_idx (&mctx->input); + /* Reached the invalid state or an error. Try to recover a valid + state using the state log, if available and if we have not + already found a valid (even if not the longest) match. */ if (BE (err != REG_NOERROR, 0)) return -2; - if (!fl_longest_match && match) + + if (mctx->state_log == NULL + || (match && !fl_longest_match) + || (cur_state = find_recover_state (&err, mctx)) == NULL) break; + } + + if (BE (at_init_state, 0)) + { + if (old_state == cur_state) + next_start_idx = next_char_idx; else - { - if (mctx->state_log == NULL) - break; - else - { - int max = mctx->state_log_top; - for (; cur_str_idx <= max; ++cur_str_idx) - if (mctx->state_log[cur_str_idx] != NULL) - break; - if (cur_str_idx > max) - break; - } - } + at_init_state = 0; } - if (cur_state != NULL && cur_state->halt) + if (cur_state->halt) { - /* Reached at a halt state. + /* Reached a halt state. Check the halt state can satisfy the current context. */ if (!cur_state->has_constraint || check_halt_state_context (mctx, cur_state, @@ -1073,14 +1156,17 @@ /* We found an appropriate halt state. */ match_last = re_string_cur_idx (&mctx->input); match = 1; + + /* We found a match, do not modify match_first below. */ + p_match_first = NULL; if (!fl_longest_match) break; } } - } + } - if (match_last == -1 && skipped) - *p_match_first += skipped; + if (p_match_first) + *p_match_first += next_start_idx; return match_last; } @@ -1144,30 +1230,38 @@ if (IS_EPSILON_NODE (dfa->nodes[node].type)) { re_node_set *cur_nodes = &mctx->state_log[*pidx]->nodes; - int ndest, dest_nodes[2]; + re_node_set *edests = &dfa->edests[node]; + int dest_node; err = re_node_set_insert (eps_via_nodes, node); if (BE (err < 0, 0)) return -2; - /* Pick up valid destinations. */ - for (ndest = 0, i = 0; i < dfa->edests[node].nelem; ++i) + /* Pick up a valid destination, or return -1 if none is found. */ + for (dest_node = -1, i = 0; i < edests->nelem; ++i) { - int candidate = dfa->edests[node].elems[i]; + int candidate = edests->elems[i]; if (!re_node_set_contains (cur_nodes, candidate)) continue; - dest_nodes[0] = (ndest == 0) ? candidate : dest_nodes[0]; - dest_nodes[1] = (ndest == 1) ? candidate : dest_nodes[1]; - ++ndest; - } - if (ndest <= 1) - return ndest == 0 ? -1 : (ndest == 1 ? dest_nodes[0] : 0); - /* In order to avoid infinite loop like "(a*)*". */ - if (re_node_set_contains (eps_via_nodes, dest_nodes[0])) - return dest_nodes[1]; - if (fs != NULL - && push_fail_stack (fs, *pidx, dest_nodes, nregs, regs, - eps_via_nodes)) - return -2; - return dest_nodes[0]; + if (dest_node == -1) + dest_node = candidate; + + else + { + /* In order to avoid infinite loop like "(a*)*", return the second + epsilon-transition if the first was already considered. */ + if (re_node_set_contains (eps_via_nodes, dest_node)) + return candidate; + + /* Otherwise, push the second epsilon-transition on the fail stack. */ + else if (fs != NULL + && push_fail_stack (fs, *pidx, candidate, nregs, regs, + eps_via_nodes) != REG_NOERROR) + return -2; + + /* We know we are going to exit. */ + break; + } + } + return dest_node; } else { @@ -1175,13 +1269,13 @@ re_token_type_t type = dfa->nodes[node].type; #ifdef RE_ENABLE_I18N - if (ACCEPT_MB_NODE (type)) + if (dfa->nodes[node].accept_mb) naccepted = check_node_accept_bytes (dfa, node, &mctx->input, *pidx); else #endif /* RE_ENABLE_I18N */ if (type == OP_BACK_REF) { - int subexp_idx = dfa->nodes[node].opr.idx; + int subexp_idx = dfa->nodes[node].opr.idx + 1; naccepted = regs[subexp_idx].rm_eo - regs[subexp_idx].rm_so; if (fs != NULL) { @@ -1225,9 +1319,9 @@ } static reg_errcode_t -push_fail_stack (fs, str_idx, dests, nregs, regs, eps_via_nodes) +push_fail_stack (fs, str_idx, dest_node, nregs, regs, eps_via_nodes) struct re_fail_stack_t *fs; - int str_idx, *dests, nregs; + int str_idx, dest_node, nregs; regmatch_t *regs; re_node_set *eps_via_nodes; { @@ -1244,7 +1338,7 @@ fs->stack = new_array; } fs->stack[num].idx = str_idx; - fs->stack[num].node = dests[1]; + fs->stack[num].node = dest_node; fs->stack[num].regs = re_malloc (regmatch_t, nregs); if (fs->stack[num].regs == NULL) return REG_ESPACE; @@ -1284,7 +1378,7 @@ int fl_backtrack; { re_dfa_t *dfa = (re_dfa_t *) preg->buffer; - int idx, cur_node, real_nmatch; + int idx, cur_node; re_node_set eps_via_nodes; struct re_fail_stack_t *fs; struct re_fail_stack_t fs_body = { 0, 2, NULL }; @@ -1305,15 +1399,14 @@ fs = NULL; cur_node = dfa->init_node; - real_nmatch = (nmatch <= preg->re_nsub) ? nmatch : preg->re_nsub + 1; re_node_set_init_empty (&eps_via_nodes); - prev_idx_match = (regmatch_t *) alloca (sizeof (regmatch_t) * real_nmatch); - memcpy (prev_idx_match, pmatch, sizeof (regmatch_t) * real_nmatch); + prev_idx_match = re_malloc (regmatch_t, nmatch); + memcpy (prev_idx_match, pmatch, sizeof (regmatch_t) * nmatch); for (idx = pmatch[0].rm_so; idx <= pmatch[0].rm_eo ;) { - update_regs (dfa, pmatch, prev_idx_match, cur_node, idx, real_nmatch); + update_regs (dfa, pmatch, prev_idx_match, cur_node, idx, nmatch); if (idx == pmatch[0].rm_eo && cur_node == mctx->last_node) { @@ -1326,6 +1419,7 @@ if (reg_idx == nmatch) { re_node_set_free (&eps_via_nodes); + re_free (prev_idx_match); return free_fail_stack_return (fs); } cur_node = pop_fail_stack (fs, &idx, nmatch, pmatch, @@ -1334,6 +1428,7 @@ else { re_node_set_free (&eps_via_nodes); + re_free (prev_idx_match); return REG_NOERROR; } } @@ -1348,6 +1443,7 @@ { re_node_set_free (&eps_via_nodes); free_fail_stack_return (fs); + re_free (prev_idx_match); return REG_ESPACE; } if (fs) @@ -1356,11 +1452,13 @@ else { re_node_set_free (&eps_via_nodes); + re_free (prev_idx_match); return REG_NOMATCH; } } } re_node_set_free (&eps_via_nodes); + re_free (prev_idx_match); return free_fail_stack_return (fs); } @@ -1459,17 +1557,14 @@ re_match_context_t *mctx; re_sift_context_t *sctx; { - re_dfa_t *const dfa = mctx->dfa; reg_errcode_t err; int null_cnt = 0; int str_idx = sctx->last_str_idx; re_node_set cur_dest; - re_node_set *cur_src; /* Points the state_log[str_idx]->nodes */ #ifdef DEBUG assert (mctx->state_log != NULL && mctx->state_log[str_idx] != NULL); #endif - cur_src = &mctx->state_log[str_idx]->nodes; /* Build sifted state_log[str_idx]. It has the nodes which can epsilon transit to the last_node and the last_node itself. */ @@ -1483,7 +1578,6 @@ /* Then check each states in the state_log. */ while (str_idx > 0) { - int i, ret; /* Update counters. */ null_cnt = (sctx->sifted_states[str_idx] == NULL) ? null_cnt + 1 : 0; if (null_cnt > mctx->max_mb_elem_len) @@ -1495,56 +1589,12 @@ } re_node_set_empty (&cur_dest); --str_idx; - cur_src = ((mctx->state_log[str_idx] == NULL) ? &empty_set - : &mctx->state_log[str_idx]->nodes); - - /* Then build the next sifted state. - We build the next sifted state on `cur_dest', and update - `sifted_states[str_idx]' with `cur_dest'. - Note: - `cur_dest' is the sifted state from `state_log[str_idx + 1]'. - `cur_src' points the node_set of the old `state_log[str_idx]'. */ - for (i = 0; i < cur_src->nelem; i++) - { - int prev_node = cur_src->elems[i]; - int naccepted = 0; - re_token_type_t type = dfa->nodes[prev_node].type; - - if (IS_EPSILON_NODE (type)) - continue; -#ifdef RE_ENABLE_I18N - /* If the node may accept `multi byte'. */ - if (ACCEPT_MB_NODE (type)) - naccepted = sift_states_iter_mb (mctx, sctx, prev_node, - str_idx, sctx->last_str_idx); - -#endif /* RE_ENABLE_I18N */ - /* We don't check backreferences here. - See update_cur_sifted_state(). */ - - if (!naccepted - && check_node_accept (mctx, dfa->nodes + prev_node, str_idx) - && STATE_NODE_CONTAINS (sctx->sifted_states[str_idx + 1], - dfa->nexts[prev_node])) - naccepted = 1; - if (naccepted == 0) - continue; - - if (sctx->limits.nelem) - { - int to_idx = str_idx + naccepted; - if (check_dst_limits (mctx, &sctx->limits, - dfa->nexts[prev_node], to_idx, - prev_node, str_idx)) - continue; - } - ret = re_node_set_insert (&cur_dest, prev_node); - if (BE (ret == -1, 0)) - { - err = REG_ESPACE; - goto free_return; - } + if (mctx->state_log[str_idx]) + { + err = build_sifted_states (mctx, sctx, str_idx, &cur_dest); + if (BE (err != REG_NOERROR, 0)) + goto free_return; } /* Add all the nodes which satisfy the following conditions: @@ -1561,6 +1611,68 @@ return err; } +static reg_errcode_t +build_sifted_states (mctx, sctx, str_idx, cur_dest) + re_match_context_t *mctx; + re_sift_context_t *sctx; + int str_idx; + re_node_set *cur_dest; +{ + re_dfa_t *const dfa = mctx->dfa; + re_node_set *cur_src = &mctx->state_log[str_idx]->non_eps_nodes; + int i; + + /* Then build the next sifted state. + We build the next sifted state on `cur_dest', and update + `sifted_states[str_idx]' with `cur_dest'. + Note: + `cur_dest' is the sifted state from `state_log[str_idx + 1]'. + `cur_src' points the node_set of the old `state_log[str_idx]' + (with the epsilon nodes pre-filtered out). */ + for (i = 0; i < cur_src->nelem; i++) + { + int prev_node = cur_src->elems[i]; + int naccepted = 0; + int ret; + +#ifdef DEBUG + re_token_type_t type = dfa->nodes[prev_node].type; + assert (!IS_EPSILON_NODE (type)); +#endif +#ifdef RE_ENABLE_I18N + /* If the node may accept `multi byte'. */ + if (dfa->nodes[prev_node].accept_mb) + naccepted = sift_states_iter_mb (mctx, sctx, prev_node, + str_idx, sctx->last_str_idx); +#endif /* RE_ENABLE_I18N */ + + /* We don't check backreferences here. + See update_cur_sifted_state(). */ + if (!naccepted + && check_node_accept (mctx, dfa->nodes + prev_node, str_idx) + && STATE_NODE_CONTAINS (sctx->sifted_states[str_idx + 1], + dfa->nexts[prev_node])) + naccepted = 1; + + if (naccepted == 0) + continue; + + if (sctx->limits.nelem) + { + int to_idx = str_idx + naccepted; + if (check_dst_limits (mctx, &sctx->limits, + dfa->nexts[prev_node], to_idx, + prev_node, str_idx)) + continue; + } + ret = re_node_set_insert (cur_dest, prev_node); + if (BE (ret == -1, 0)) + return REG_ESPACE; + } + + return REG_NOERROR; +} + /* Helper functions. */ static reg_errcode_t @@ -1628,36 +1740,39 @@ re_dfa_t *const dfa = mctx->dfa; reg_errcode_t err; const re_node_set *candidates; - candidates = ((mctx->state_log[str_idx] == NULL) ? &empty_set + candidates = ((mctx->state_log[str_idx] == NULL) ? NULL : &mctx->state_log[str_idx]->nodes); - /* At first, add the nodes which can epsilon transit to a node in - DEST_NODE. */ - if (dest_nodes->nelem) + if (dest_nodes->nelem == 0) + sctx->sifted_states[str_idx] = NULL; + else { - err = add_epsilon_src_nodes (dfa, dest_nodes, candidates); - if (BE (err != REG_NOERROR, 0)) - return err; - } + if (candidates) + { + /* At first, add the nodes which can epsilon transit to a node in + DEST_NODE. */ + err = add_epsilon_src_nodes (dfa, dest_nodes, candidates); + if (BE (err != REG_NOERROR, 0)) + return err; - /* Then, check the limitations in the current sift_context. */ - if (dest_nodes->nelem && sctx->limits.nelem) - { - err = check_subexp_limits (dfa, dest_nodes, candidates, &sctx->limits, - mctx->bkref_ents, str_idx); + /* Then, check the limitations in the current sift_context. */ + if (sctx->limits.nelem) + { + err = check_subexp_limits (dfa, dest_nodes, candidates, &sctx->limits, + mctx->bkref_ents, str_idx); + if (BE (err != REG_NOERROR, 0)) + return err; + } + } + + sctx->sifted_states[str_idx] = re_acquire_state (&err, dfa, dest_nodes); if (BE (err != REG_NOERROR, 0)) return err; } - /* Update state_log. */ - sctx->sifted_states[str_idx] = re_acquire_state (&err, dfa, dest_nodes); - if (BE (sctx->sifted_states[str_idx] == NULL && err != REG_NOERROR, 0)) - return err; - - if ((mctx->state_log[str_idx] != NULL - && mctx->state_log[str_idx]->has_backref)) + if (candidates && mctx->state_log[str_idx]->has_backref) { - err = sift_states_bkref (mctx, sctx, str_idx, dest_nodes); + err = sift_states_bkref (mctx, sctx, str_idx, candidates); if (BE (err != REG_NOERROR, 0)) return err; } @@ -1670,26 +1785,24 @@ re_node_set *dest_nodes; const re_node_set *candidates; { - reg_errcode_t err; - int src_idx; - re_node_set src_copy; + reg_errcode_t err = REG_NOERROR; + int i; - err = re_node_set_init_copy (&src_copy, dest_nodes); + re_dfastate_t *state = re_acquire_state (&err, dfa, dest_nodes); if (BE (err != REG_NOERROR, 0)) return err; - for (src_idx = 0; src_idx < src_copy.nelem; ++src_idx) + + if (!state->inveclosure.alloc) { - err = re_node_set_add_intersect (dest_nodes, candidates, - dfa->inveclosures - + src_copy.elems[src_idx]); + err = re_node_set_alloc (&state->inveclosure, dest_nodes->nelem); if (BE (err != REG_NOERROR, 0)) - { - re_node_set_free (&src_copy); - return err; - } + return REG_ESPACE; + for (i = 0; i < dest_nodes->nelem; i++) + re_node_set_merge (&state->inveclosure, + dfa->inveclosures + dest_nodes->elems[i]); } - re_node_set_free (&src_copy); - return REG_NOERROR; + return re_node_set_add_intersect (dest_nodes, candidates, + &state->inveclosure); } static reg_errcode_t @@ -1752,19 +1865,21 @@ re_dfa_t *const dfa = mctx->dfa; int lim_idx, src_pos, dst_pos; + int dst_bkref_idx = search_cur_bkref_entry (mctx, dst_idx); + int src_bkref_idx = search_cur_bkref_entry (mctx, src_idx); for (lim_idx = 0; lim_idx < limits->nelem; ++lim_idx) { int subexp_idx; struct re_backref_cache_entry *ent; ent = mctx->bkref_ents + limits->elems[lim_idx]; - subexp_idx = dfa->nodes[ent->node].opr.idx - 1; + subexp_idx = dfa->nodes[ent->node].opr.idx; dst_pos = check_dst_limits_calc_pos (mctx, limits->elems[lim_idx], - dfa->eclosures + dst_node, - subexp_idx, dst_node, dst_idx); + subexp_idx, dst_node, dst_idx, + dst_bkref_idx); src_pos = check_dst_limits_calc_pos (mctx, limits->elems[lim_idx], - dfa->eclosures + src_node, - subexp_idx, src_node, src_idx); + subexp_idx, src_node, src_idx, + src_bkref_idx); /* In case of: ( ) @@ -1779,27 +1894,14 @@ } static int -check_dst_limits_calc_pos (mctx, limit, eclosures, subexp_idx, from_node, - str_idx) +check_dst_limits_calc_pos_1 (mctx, boundaries, subexp_idx, from_node, bkref_idx) re_match_context_t *mctx; - re_node_set *eclosures; - int limit, subexp_idx, from_node, str_idx; + int boundaries, subexp_idx, from_node, bkref_idx; { re_dfa_t *const dfa = mctx->dfa; - struct re_backref_cache_entry *lim = mctx->bkref_ents + limit; + re_node_set *eclosures = dfa->eclosures + from_node; int node_idx; - /* If we are outside the range of the subexpression, return -1 or 1. */ - if (str_idx < lim->subexp_from) - return -1; - - if (lim->subexp_to < str_idx) - return 1; - - /* If we are within the subexpression, return 0. */ - if (str_idx != lim->subexp_from && str_idx != lim->subexp_to) - return 0; - /* Else, we are on the boundary: examine the nodes on the epsilon closure. */ for (node_idx = 0; node_idx < eclosures->nelem; ++node_idx) @@ -1808,57 +1910,56 @@ switch (dfa->nodes[node].type) { case OP_BACK_REF: - { - int bi = search_cur_bkref_entry (mctx, str_idx); - for (; bi < mctx->nbkref_ents; ++bi) - { - struct re_backref_cache_entry *ent = mctx->bkref_ents + bi; - int dst, cpos; - - /* If this backreference goes beyond the point we're - examining, don't go any further. */ - if (ent->str_idx > str_idx) - break; + if (bkref_idx != -1) + { + struct re_backref_cache_entry *ent = mctx->bkref_ents + bkref_idx; + do + { + int dst, cpos; - if (ent->node != node || ent->subexp_from != ent->subexp_to) - continue; + if (ent->node != node) + continue; - /* Recurse trying to reach the OP_OPEN_SUBEXP and - OP_CLOSE_SUBEXP cases below. But, if the - destination node is the same node as the source - node, don't recurse because it would cause an - infinite loop: a regex that exhibits this behavior - is ()\1*\1* */ - dst = dfa->edests[node].elems[0]; - if (dst == from_node) - { - if (str_idx == lim->subexp_from) - return -1; - else /* if (str_idx == lim->subexp_to) */ - return 0; - } + if (subexp_idx <= 8 * sizeof (ent->eps_reachable_subexps_map) + && !(ent->eps_reachable_subexps_map & (1 << subexp_idx))) + continue; - cpos = check_dst_limits_calc_pos (mctx, limit, - dfa->eclosures + dst, - subexp_idx, dst, - str_idx); + /* Recurse trying to reach the OP_OPEN_SUBEXP and + OP_CLOSE_SUBEXP cases below. But, if the + destination node is the same node as the source + node, don't recurse because it would cause an + infinite loop: a regex that exhibits this behavior + is ()\1*\1* */ + dst = dfa->edests[node].elems[0]; + if (dst == from_node) + { + if (boundaries & 1) + return -1; + else /* if (boundaries & 2) */ + return 0; + } - if (cpos == -1 && str_idx == lim->subexp_from) - return -1; + cpos = + check_dst_limits_calc_pos_1 (mctx, boundaries, subexp_idx, + dst, bkref_idx); + if (cpos == -1 /* && (boundaries & 1) */) + return -1; + if (cpos == 0 && (boundaries & 2)) + return 0; - if (cpos == 0 /* && str_idx == lim->lim->subexp_to */) - return 0; - } - break; + ent->eps_reachable_subexps_map &= ~(1 << subexp_idx); + } + while (ent++->more); } + break; case OP_OPEN_SUBEXP: - if (str_idx == lim->subexp_from && subexp_idx == dfa->nodes[node].opr.idx) + if ((boundaries & 1) && subexp_idx == dfa->nodes[node].opr.idx) return -1; break; case OP_CLOSE_SUBEXP: - if (str_idx == lim->subexp_to && subexp_idx == dfa->nodes[node].opr.idx) + if ((boundaries & 2) && subexp_idx == dfa->nodes[node].opr.idx) return 0; break; @@ -1867,10 +1968,33 @@ } } - if (str_idx == lim->subexp_to) + return (boundaries & 2) ? 1 : 0; +} + +static int +check_dst_limits_calc_pos (mctx, limit, subexp_idx, from_node, str_idx, bkref_idx) + re_match_context_t *mctx; + int limit, subexp_idx, from_node, str_idx, bkref_idx; +{ + struct re_backref_cache_entry *lim = mctx->bkref_ents + limit; + int boundaries; + + /* If we are outside the range of the subexpression, return -1 or 1. */ + if (str_idx < lim->subexp_from) + return -1; + + if (lim->subexp_to < str_idx) return 1; - else + + /* If we are within the subexpression, return 0. */ + boundaries = (str_idx == lim->subexp_from); + boundaries |= (str_idx == lim->subexp_to) << 1; + if (boundaries == 0) return 0; + + /* Else, examine epsilon closure. */ + return check_dst_limits_calc_pos_1 (mctx, boundaries, subexp_idx, + from_node, bkref_idx); } /* Check the limitations of sub expressions LIMITS, and remove the nodes @@ -1897,7 +2021,7 @@ if (str_idx <= ent->subexp_from || ent->str_idx < str_idx) continue; /* This is unrelated limitation. */ - subexp_idx = dfa->nodes[ent->node].opr.idx - 1; + subexp_idx = dfa->nodes[ent->node].opr.idx; if (ent->subexp_to == str_idx) { int ops_node = -1; @@ -1954,16 +2078,12 @@ { if (subexp_idx != dfa->nodes[node].opr.idx) continue; - if ((type == OP_CLOSE_SUBEXP && ent->subexp_to != str_idx) - || (type == OP_OPEN_SUBEXP)) - { - /* It is against this limitation. - Remove it form the current sifted state. */ - err = sub_epsilon_src_nodes (dfa, node, dest_nodes, - candidates); - if (BE (err != REG_NOERROR, 0)) - return err; - } + /* It is against this limitation. + Remove it form the current sifted state. */ + err = sub_epsilon_src_nodes (dfa, node, dest_nodes, + candidates); + if (BE (err != REG_NOERROR, 0)) + return err; } } } @@ -1972,115 +2092,91 @@ } static reg_errcode_t -sift_states_bkref (mctx, sctx, str_idx, dest_nodes) +sift_states_bkref (mctx, sctx, str_idx, candidates) re_match_context_t *mctx; re_sift_context_t *sctx; int str_idx; - re_node_set *dest_nodes; + const re_node_set *candidates; { re_dfa_t *const dfa = mctx->dfa; reg_errcode_t err; int node_idx, node; re_sift_context_t local_sctx; - const re_node_set *candidates; - candidates = ((mctx->state_log[str_idx] == NULL) ? &empty_set - : &mctx->state_log[str_idx]->nodes); + int first_idx = search_cur_bkref_entry (mctx, str_idx); + + if (first_idx == -1) + return REG_NOERROR; + local_sctx.sifted_states = NULL; /* Mark that it hasn't been initialized. */ for (node_idx = 0; node_idx < candidates->nelem; ++node_idx) { - int cur_bkref_idx = re_string_cur_idx (&mctx->input); + int enabled_idx; re_token_type_t type; + struct re_backref_cache_entry *entry; node = candidates->elems[node_idx]; type = dfa->nodes[node].type; - if (node == sctx->cur_bkref && str_idx == cur_bkref_idx) - continue; /* Avoid infinite loop for the REs like "()\1+". */ if (node == sctx->last_node && str_idx == sctx->last_str_idx) continue; - if (type == OP_BACK_REF) + if (type != OP_BACK_REF) + continue; + + entry = mctx->bkref_ents + first_idx; + enabled_idx = first_idx; + do { - int enabled_idx = search_cur_bkref_entry (mctx, str_idx); - for (; enabled_idx < mctx->nbkref_ents; ++enabled_idx) - { - int disabled_idx, subexp_len, to_idx, dst_node; - struct re_backref_cache_entry *entry; - entry = mctx->bkref_ents + enabled_idx; - if (entry->str_idx > str_idx) - break; - if (entry->node != node) - continue; - subexp_len = entry->subexp_to - entry->subexp_from; - to_idx = str_idx + subexp_len; - dst_node = (subexp_len ? dfa->nexts[node] - : dfa->edests[node].elems[0]); - - if (to_idx > sctx->last_str_idx - || sctx->sifted_states[to_idx] == NULL - || !STATE_NODE_CONTAINS (sctx->sifted_states[to_idx], - dst_node) - || check_dst_limits (mctx, &sctx->limits, node, - str_idx, dst_node, to_idx)) - continue; - { - re_dfastate_t *cur_state; - entry->flag = 0; - for (disabled_idx = enabled_idx + 1; - disabled_idx < mctx->nbkref_ents; ++disabled_idx) - { - struct re_backref_cache_entry *entry2; - entry2 = mctx->bkref_ents + disabled_idx; - if (entry2->str_idx > str_idx) - break; - entry2->flag = (entry2->node == node) ? 1 : entry2->flag; - } + int subexp_len, to_idx, dst_node; + re_dfastate_t *cur_state; - if (local_sctx.sifted_states == NULL) - { - local_sctx = *sctx; - err = re_node_set_init_copy (&local_sctx.limits, - &sctx->limits); - if (BE (err != REG_NOERROR, 0)) - goto free_return; - } - local_sctx.last_node = node; - local_sctx.last_str_idx = str_idx; - err = re_node_set_insert (&local_sctx.limits, enabled_idx); - if (BE (err < 0, 0)) - { - err = REG_ESPACE; - goto free_return; - } - cur_state = local_sctx.sifted_states[str_idx]; - err = sift_states_backward (mctx, &local_sctx); - if (BE (err != REG_NOERROR, 0)) - goto free_return; - if (sctx->limited_states != NULL) - { - err = merge_state_array (dfa, sctx->limited_states, - local_sctx.sifted_states, - str_idx + 1); - if (BE (err != REG_NOERROR, 0)) - goto free_return; - } - local_sctx.sifted_states[str_idx] = cur_state; - re_node_set_remove (&local_sctx.limits, enabled_idx); - /* We must not use the variable entry here, since - mctx->bkref_ents might be realloced. */ - mctx->bkref_ents[enabled_idx].flag = 1; - } + if (entry->node != node) + continue; + subexp_len = entry->subexp_to - entry->subexp_from; + to_idx = str_idx + subexp_len; + dst_node = (subexp_len ? dfa->nexts[node] + : dfa->edests[node].elems[0]); + + if (to_idx > sctx->last_str_idx + || sctx->sifted_states[to_idx] == NULL + || !STATE_NODE_CONTAINS (sctx->sifted_states[to_idx], dst_node) + || check_dst_limits (mctx, &sctx->limits, node, + str_idx, dst_node, to_idx)) + continue; + + if (local_sctx.sifted_states == NULL) + { + local_sctx = *sctx; + err = re_node_set_init_copy (&local_sctx.limits, &sctx->limits); + if (BE (err != REG_NOERROR, 0)) + goto free_return; } - enabled_idx = search_cur_bkref_entry (mctx, str_idx); - for (; enabled_idx < mctx->nbkref_ents; ++enabled_idx) + local_sctx.last_node = node; + local_sctx.last_str_idx = str_idx; + err = re_node_set_insert (&local_sctx.limits, enabled_idx); + if (BE (err < 0, 0)) { - struct re_backref_cache_entry *entry; - entry = mctx->bkref_ents + enabled_idx; - if (entry->str_idx > str_idx) - break; - if (entry->node == node) - entry->flag = 0; + err = REG_ESPACE; + goto free_return; } + cur_state = local_sctx.sifted_states[str_idx]; + err = sift_states_backward (mctx, &local_sctx); + if (BE (err != REG_NOERROR, 0)) + goto free_return; + if (sctx->limited_states != NULL) + { + err = merge_state_array (dfa, sctx->limited_states, + local_sctx.sifted_states, + str_idx + 1); + if (BE (err != REG_NOERROR, 0)) + goto free_return; + } + local_sctx.sifted_states[str_idx] = cur_state; + re_node_set_remove (&local_sctx.limits, enabled_idx); + + /* mctx->bkref_ents may have changed, reload the pointer. */ + entry = mctx->bkref_ents + enabled_idx; } + while (enabled_idx++, entry++->more); } err = REG_NOERROR; free_return: @@ -2131,127 +2227,111 @@ re_match_context_t *mctx; re_dfastate_t *state; { - re_dfa_t *const dfa = mctx->dfa; - re_dfastate_t **trtable, *next_state; + re_dfastate_t **trtable; unsigned char ch; - int cur_idx; - if (re_string_cur_idx (&mctx->input) + 1 >= mctx->input.bufs_len - || (re_string_cur_idx (&mctx->input) + 1 >= mctx->input.valid_len - && mctx->input.valid_len < mctx->input.len)) +#ifdef RE_ENABLE_I18N + /* If the current state can accept multibyte. */ + if (BE (state->accept_mb, 0)) { - *err = extend_buffers (mctx); + *err = transit_state_mb (mctx, state); if (BE (*err != REG_NOERROR, 0)) return NULL; } +#endif /* RE_ENABLE_I18N */ - *err = REG_NOERROR; - if (state == NULL) - { - next_state = state; - re_string_skip_bytes (&mctx->input, 1); - } - else + /* Then decide the next state with the single byte. */ +#if 0 + if (0) + /* don't use transition table */ + return transit_state_sb (err, mctx, state); +#endif + + /* Use transition table */ + ch = re_string_fetch_byte (&mctx->input); + for (;;) { -#ifdef RE_ENABLE_I18N - /* If the current state can accept multibyte. */ - if (state->accept_mb) - { - *err = transit_state_mb (mctx, state); - if (BE (*err != REG_NOERROR, 0)) - return NULL; - } -#endif /* RE_ENABLE_I18N */ + trtable = state->trtable; + if (BE (trtable != NULL, 1)) + return trtable[ch]; - /* Then decide the next state with the single byte. */ - if (1) - { - /* Use transition table */ - ch = re_string_fetch_byte (&mctx->input); - trtable = state->trtable; - if (trtable == NULL) - { - trtable = build_trtable (dfa, state); - if (trtable == NULL) - { - *err = REG_ESPACE; - return NULL; - } - } - if (BE (state->word_trtable, 0)) - { - unsigned int context; - context - = re_string_context_at (&mctx->input, - re_string_cur_idx (&mctx->input) - 1, - mctx->eflags); - if (IS_WORD_CONTEXT (context)) - next_state = trtable[ch + SBC_MAX]; - else - next_state = trtable[ch]; - } + trtable = state->word_trtable; + if (BE (trtable != NULL, 1)) + { + unsigned int context; + context + = re_string_context_at (&mctx->input, + re_string_cur_idx (&mctx->input) - 1, + mctx->eflags); + if (IS_WORD_CONTEXT (context)) + return trtable[ch + SBC_MAX]; else - next_state = trtable[ch]; + return trtable[ch]; } -#if 0 - else + + if (!build_trtable (mctx->dfa, state)) { - /* don't use transition table */ - next_state = transit_state_sb (err, mctx, state); - if (BE (next_state == NULL && err != REG_NOERROR, 0)) - return NULL; + *err = REG_ESPACE; + return NULL; } -#endif + + /* Retry, we now have a transition table. */ } +} - cur_idx = re_string_cur_idx (&mctx->input); - /* Update the state_log if we need. */ - if (mctx->state_log != NULL) +/* Update the state_log if we need */ +re_dfastate_t * +merge_state_with_log (err, mctx, next_state) + reg_errcode_t *err; + re_match_context_t *mctx; + re_dfastate_t *next_state; +{ + re_dfa_t *const dfa = mctx->dfa; + int cur_idx = re_string_cur_idx (&mctx->input); + + if (cur_idx > mctx->state_log_top) { - if (cur_idx > mctx->state_log_top) - { - mctx->state_log[cur_idx] = next_state; - mctx->state_log_top = cur_idx; - } - else if (mctx->state_log[cur_idx] == 0) - { - mctx->state_log[cur_idx] = next_state; - } - else - { - re_dfastate_t *pstate; - unsigned int context; - re_node_set next_nodes, *log_nodes, *table_nodes = NULL; - /* If (state_log[cur_idx] != 0), it implies that cur_idx is - the destination of a multibyte char/collating element/ - back reference. Then the next state is the union set of - these destinations and the results of the transition table. */ - pstate = mctx->state_log[cur_idx]; - log_nodes = pstate->entrance_nodes; - if (next_state != NULL) - { - table_nodes = next_state->entrance_nodes; - *err = re_node_set_init_union (&next_nodes, table_nodes, + mctx->state_log[cur_idx] = next_state; + mctx->state_log_top = cur_idx; + } + else if (mctx->state_log[cur_idx] == 0) + { + mctx->state_log[cur_idx] = next_state; + } + else + { + re_dfastate_t *pstate; + unsigned int context; + re_node_set next_nodes, *log_nodes, *table_nodes = NULL; + /* If (state_log[cur_idx] != 0), it implies that cur_idx is + the destination of a multibyte char/collating element/ + back reference. Then the next state is the union set of + these destinations and the results of the transition table. */ + pstate = mctx->state_log[cur_idx]; + log_nodes = pstate->entrance_nodes; + if (next_state != NULL) + { + table_nodes = next_state->entrance_nodes; + *err = re_node_set_init_union (&next_nodes, table_nodes, log_nodes); - if (BE (*err != REG_NOERROR, 0)) - return NULL; - } - else - next_nodes = *log_nodes; - /* Note: We already add the nodes of the initial state, - then we don't need to add them here. */ - - context = re_string_context_at (&mctx->input, - re_string_cur_idx (&mctx->input) - 1, - mctx->eflags); - next_state = mctx->state_log[cur_idx] - = re_acquire_state_context (err, dfa, &next_nodes, context); - /* We don't need to check errors here, since the return value of - this function is next_state and ERR is already set. */ + if (BE (*err != REG_NOERROR, 0)) + return NULL; + } + else + next_nodes = *log_nodes; + /* Note: We already add the nodes of the initial state, + then we don't need to add them here. */ + + context = re_string_context_at (&mctx->input, + re_string_cur_idx (&mctx->input) - 1, + mctx->eflags); + next_state = mctx->state_log[cur_idx] + = re_acquire_state_context (err, dfa, &next_nodes, context); + /* We don't need to check errors here, since the return value of + this function is next_state and ERR is already set. */ - if (table_nodes != NULL) - re_node_set_free (&next_nodes); - } + if (table_nodes != NULL) + re_node_set_free (&next_nodes); } if (BE (dfa->nbackref, 0) && next_state != NULL) @@ -2273,9 +2353,38 @@ next_state = mctx->state_log[cur_idx]; } } + return next_state; } +/* Skip bytes in the input that correspond to part of a + multi-byte match, then look in the log for a state + from which to restart matching. */ +re_dfastate_t * +find_recover_state (err, mctx) + reg_errcode_t *err; + re_match_context_t *mctx; +{ + re_dfastate_t *cur_state = NULL; + do + { + int max = mctx->state_log_top; + int cur_str_idx = re_string_cur_idx (&mctx->input); + + do + { + if (++cur_str_idx > max) + return NULL; + re_string_skip_bytes (&mctx->input, 1); + } + while (mctx->state_log[cur_str_idx] == NULL); + + cur_state = merge_state_with_log (err, mctx, NULL); + } + while (err == REG_NOERROR && cur_state == NULL); + return cur_state; +} + /* Helper functions for transit_state. */ /* From the node set CUR_NODES, pick up the nodes whose types are @@ -2371,10 +2480,13 @@ { re_node_set dest_nodes, *new_nodes; int cur_node_idx = pstate->nodes.elems[i]; - int naccepted = 0, dest_idx; + int naccepted, dest_idx; unsigned int context; re_dfastate_t *dest_state; + if (!dfa->nodes[cur_node_idx].accept_mb) + continue; + if (dfa->nodes[cur_node_idx].constraint) { context = re_string_context_at (&mctx->input, @@ -2386,9 +2498,8 @@ } /* How many bytes the node can accept? */ - if (ACCEPT_MB_NODE (dfa->nodes[cur_node_idx].type)) - naccepted = check_node_accept_bytes (dfa, cur_node_idx, &mctx->input, - re_string_cur_idx (&mctx->input)); + naccepted = check_node_accept_bytes (dfa, cur_node_idx, &mctx->input, + re_string_cur_idx (&mctx->input)); if (naccepted == 0) continue; @@ -2402,9 +2513,7 @@ #ifdef DEBUG assert (dfa->nexts[cur_node_idx] != -1); #endif - /* `cur_node_idx' may point the entity of the OP_CONTEXT_NODE, - then we use pstate->nodes.elems[i] instead. */ - new_nodes = dfa->eclosures + dfa->nexts[pstate->nodes.elems[i]]; + new_nodes = dfa->eclosures + dfa->nexts[cur_node_idx]; dest_state = mctx->state_log[dest_idx]; if (dest_state == NULL) @@ -2553,16 +2662,16 @@ const char *buf = (const char *) re_string_get_buffer (&mctx->input); /* Return if we have already checked BKREF_NODE at BKREF_STR_IDX. */ int cache_idx = search_cur_bkref_entry (mctx, bkref_str_idx); - for (; cache_idx < mctx->nbkref_ents; ++cache_idx) + if (cache_idx != -1) { - const struct re_backref_cache_entry *entry - = &mctx->bkref_ents[cache_idx]; - if (entry->str_idx > bkref_str_idx) - break; - if (entry->node == bkref_node) - return REG_NOERROR; /* We already checked it. */ + const struct re_backref_cache_entry *entry = mctx->bkref_ents + cache_idx; + do + if (entry->node == bkref_node) + return REG_NOERROR; /* We already checked it. */ + while (entry++->more); } - subexp_num = dfa->nodes[bkref_node].opr.idx - 1; + + subexp_num = dfa->nodes[bkref_node].opr.idx; /* For each sub expression */ for (sub_top_idx = 0; sub_top_idx < mctx->nsub_tops; ++sub_top_idx) @@ -2571,7 +2680,6 @@ re_sub_match_top_t *sub_top = mctx->sub_tops[sub_top_idx]; re_sub_match_last_t *sub_last; int sub_last_idx, sl_str, bkref_str_off; - const char *bkref_str; if (dfa->nodes[sub_top->node].opr.idx != subexp_num) continue; /* It isn't related. */ @@ -2587,9 +2695,24 @@ sl_str_diff = sub_last->str_idx - sl_str; /* The matched string by the sub expression match with the substring at the back reference? */ - if (sl_str_diff > 0 - && memcmp (buf + bkref_str_off, buf + sl_str, sl_str_diff) != 0) - break; /* We don't need to search this sub expression any more. */ + if (sl_str_diff > 0) + { + if (BE (bkref_str_off + sl_str_diff > mctx->input.valid_len, 0)) + { + /* Not enough chars for a successful match. */ + if (bkref_str_off + sl_str_diff > mctx->input.len) + break; + + err = clean_state_log_if_needed (mctx, + bkref_str_off + + sl_str_diff); + if (BE (err != REG_NOERROR, 0)) + return err; + buf = (const char *) re_string_get_buffer (&mctx->input); + } + if (memcmp (buf + bkref_str_off, buf + sl_str, sl_str_diff) != 0) + break; /* We don't need to search this sub expression any more. */ + } bkref_str_off += sl_str_diff; sl_str += sl_str_diff; err = get_subexp_sub (mctx, sub_top, sub_last, bkref_node, @@ -2604,7 +2727,6 @@ if (BE (err != REG_NOERROR, 0)) return err; } - bkref_str = buf + bkref_str_off; if (sub_last_idx < sub_top->nlasts) continue; @@ -2618,8 +2740,24 @@ sl_str_off = sl_str - sub_top->str_idx; /* The matched string by the sub expression match with the substring at the back reference? */ - if (sl_str_off > 0 && *bkref_str++ != buf[sl_str - 1]) - break; /* We don't need to search this sub expression any more. */ + if (sl_str_off > 0) + { + if (BE (bkref_str_off >= mctx->input.valid_len, 0)) + { + /* If we are at the end of the input, we cannot match. */ + if (bkref_str_off >= mctx->input.len) + break; + + err = extend_buffers (mctx); + if (BE (err != REG_NOERROR, 0)) + return err; + + buf = (const char *) re_string_get_buffer (&mctx->input); + } + if (buf [bkref_str_off++] != buf[sl_str - 1]) + break; /* We don't need to search this sub expression + any more. */ + } if (mctx->state_log[sl_str] == NULL) continue; /* Does this state have a ')' of the sub expression? */ @@ -2679,8 +2817,7 @@ if (BE (err != REG_NOERROR, 0)) return err; to_idx = bkref_str + sub_last->str_idx - sub_top->str_idx; - clean_state_log_if_needed (mctx, to_idx); - return REG_NOERROR; + return clean_state_log_if_needed (mctx, to_idx); } /* Find the first node which is '(' or ')' and whose index is SUBEXP_IDX. @@ -2785,7 +2922,7 @@ { if (next_nodes.nelem) { - err = expand_bkref_cache (mctx, &next_nodes, str_idx, last_str, + err = expand_bkref_cache (mctx, &next_nodes, str_idx, subexp_num, type); if (BE ( err != REG_NOERROR, 0)) { @@ -2818,7 +2955,7 @@ if (cur_state) { err = check_arrival_add_next_nodes (mctx, str_idx, - &cur_state->nodes, &next_nodes); + &cur_state->non_eps_nodes, &next_nodes); if (BE (err != REG_NOERROR, 0)) { re_node_set_free (&next_nodes); @@ -2834,7 +2971,7 @@ re_node_set_free (&next_nodes); return err; } - err = expand_bkref_cache (mctx, &next_nodes, str_idx, last_str, + err = expand_bkref_cache (mctx, &next_nodes, str_idx, subexp_num, type); if (BE ( err != REG_NOERROR, 0)) { @@ -2883,21 +3020,24 @@ re_node_set *cur_nodes, *next_nodes; { re_dfa_t *const dfa = mctx->dfa; + int result; int cur_idx; - reg_errcode_t err; re_node_set union_set; re_node_set_init_empty (&union_set); for (cur_idx = 0; cur_idx < cur_nodes->nelem; ++cur_idx) { int naccepted = 0; int cur_node = cur_nodes->elems[cur_idx]; +#ifdef DEBUG re_token_type_t type = dfa->nodes[cur_node].type; - if (IS_EPSILON_NODE (type)) - continue; + assert (!IS_EPSILON_NODE (type)); +#endif #ifdef RE_ENABLE_I18N /* If the node may accept `multi byte'. */ - if (ACCEPT_MB_NODE (type)) + if (dfa->nodes[cur_node].accept_mb) { + reg_errcode_t err; + naccepted = check_node_accept_bytes (dfa, cur_node, &mctx->input, str_idx); if (naccepted > 1) @@ -2916,8 +3056,8 @@ return err; } } - err = re_node_set_insert (&union_set, next_node); - if (BE (err < 0, 0)) + result = re_node_set_insert (&union_set, next_node); + if (BE (result < 0, 0)) { re_node_set_free (&union_set); return REG_ESPACE; @@ -2936,8 +3076,8 @@ if (naccepted || check_node_accept (mctx, dfa->nodes + cur_node, str_idx)) { - err = re_node_set_insert (next_nodes, dfa->nexts[cur_node]); - if (BE (err < 0, 0)) + result = re_node_set_insert (next_nodes, dfa->nexts[cur_node]); + if (BE (result < 0, 0)) { re_node_set_free (&union_set); return REG_ESPACE; @@ -3054,24 +3194,26 @@ in MCTX->BKREF_ENTS. */ static reg_errcode_t -expand_bkref_cache (mctx, cur_nodes, cur_str, last_str, subexp_num, +expand_bkref_cache (mctx, cur_nodes, cur_str, subexp_num, type) re_match_context_t *mctx; - int cur_str, last_str, subexp_num, type; + int cur_str, subexp_num, type; re_node_set *cur_nodes; { re_dfa_t *const dfa = mctx->dfa; reg_errcode_t err; - int cache_idx, cache_idx_start; - /* The current state. */ + int cache_idx_start = search_cur_bkref_entry (mctx, cur_str); + struct re_backref_cache_entry *ent; - cache_idx_start = search_cur_bkref_entry (mctx, cur_str); - for (cache_idx = cache_idx_start; cache_idx < mctx->nbkref_ents; ++cache_idx) + if (cache_idx_start == -1) + return REG_NOERROR; + + restart: + ent = mctx->bkref_ents + cache_idx_start; + do { int to_idx, next_node; - struct re_backref_cache_entry *ent = mctx->bkref_ents + cache_idx; - if (ent->str_idx > cur_str) - break; + /* Is this entry ENT is appropriate? */ if (!re_node_set_contains (cur_nodes, ent->node)) continue; /* No. */ @@ -3100,8 +3242,7 @@ return err; } /* TODO: It is still inefficient... */ - cache_idx = cache_idx_start - 1; - continue; + goto restart; } else { @@ -3136,19 +3277,20 @@ return err; } } + while (ent++->more); return REG_NOERROR; } /* Build transition table for the state. - Return the new table if succeeded, otherwise return NULL. */ + Return 1 if succeeded, otherwise return NULL. */ -static re_dfastate_t ** +static int build_trtable (dfa, state) re_dfa_t *dfa; re_dfastate_t *state; { reg_errcode_t err; - int i, j, ch; + int i, j, ch, need_word_trtable = 0; unsigned int elem, mask; int dests_node_malloced = 0, dest_states_malloced = 0; int ndests; /* Number of the destination states from `state'. */ @@ -3165,20 +3307,20 @@ #ifdef _LIBC if (__libc_use_alloca ((sizeof (re_node_set) + sizeof (bitset)) * SBC_MAX)) dests_node = (re_node_set *) - alloca ((sizeof (re_node_set) + sizeof (bitset)) * SBC_MAX); + alloca ((sizeof (re_node_set) + sizeof (bitset)) * SBC_MAX); else #endif { dests_node = (re_node_set *) - malloc ((sizeof (re_node_set) + sizeof (bitset)) * SBC_MAX); + malloc ((sizeof (re_node_set) + sizeof (bitset)) * SBC_MAX); if (BE (dests_node == NULL, 0)) - return NULL; + return 0; dests_node_malloced = 1; } dests_ch = (bitset *) (dests_node + SBC_MAX); /* Initialize transiton table. */ - state->word_trtable = 0; + state->word_trtable = state->trtable = NULL; /* At first, group all nodes belonging to `state' into several destinations. */ @@ -3187,14 +3329,14 @@ { if (dests_node_malloced) free (dests_node); - /* Return NULL in case of an error, trtable otherwise. */ + /* Return 0 in case of an error, 1 otherwise. */ if (ndests == 0) { state->trtable = (re_dfastate_t **) - calloc (sizeof (re_dfastate_t *), SBC_MAX);; - return state->trtable; + calloc (sizeof (re_dfastate_t *), SBC_MAX); + return 1; } - return NULL; + return 0; } err = re_node_set_alloc (&follows, ndests + 1); @@ -3205,12 +3347,12 @@ if (__libc_use_alloca ((sizeof (re_node_set) + sizeof (bitset)) * SBC_MAX + ndests * 3 * sizeof (re_dfastate_t *))) dest_states = (re_dfastate_t **) - alloca (ndests * 3 * sizeof (re_dfastate_t *)); + alloca (ndests * 3 * sizeof (re_dfastate_t *)); else #endif { dest_states = (re_dfastate_t **) - malloc (ndests * 3 * sizeof (re_dfastate_t *)); + malloc (ndests * 3 * sizeof (re_dfastate_t *)); if (BE (dest_states == NULL, 0)) { out_free: @@ -3221,7 +3363,7 @@ re_node_set_free (dests_node + i); if (dests_node_malloced) free (dests_node); - return NULL; + return 0; } dest_states_malloced = 1; } @@ -3257,9 +3399,8 @@ if (BE (dest_states_word[i] == NULL && err != REG_NOERROR, 0)) goto out_free; - if (dest_states[i] != dest_states_word[i] - && dfa->mb_cur_max > 1) - state->word_trtable = 1; + if (dest_states[i] != dest_states_word[i] && dfa->mb_cur_max > 1) + need_word_trtable = 1; dest_states_nl[i] = re_acquire_state_context (&err, dfa, &follows, CONTEXT_NEWLINE); @@ -3274,13 +3415,14 @@ bitset_merge (acceptable, dests_ch[i]); } - if (!BE (state->word_trtable, 0)) + if (!BE (need_word_trtable, 0)) { /* We don't care about whether the following character is a word character, or we are in a single-byte character set so we can discern by looking at the character code: allocate a 256-entry transition table. */ - trtable = (re_dfastate_t **) calloc (sizeof (re_dfastate_t *), SBC_MAX); + trtable = state->trtable = + (re_dfastate_t **) calloc (sizeof (re_dfastate_t *), SBC_MAX); if (BE (trtable == NULL, 0)) goto out_free; @@ -3310,8 +3452,8 @@ by looking at the character code: build two 256-entry transition tables, one starting at trtable[0] and one starting at trtable[SBC_MAX]. */ - trtable = (re_dfastate_t **) calloc (sizeof (re_dfastate_t *), - 2 * SBC_MAX); + trtable = state->word_trtable = + (re_dfastate_t **) calloc (sizeof (re_dfastate_t *), 2 * SBC_MAX); if (BE (trtable == NULL, 0)) goto out_free; @@ -3342,7 +3484,7 @@ { /* k-th destination accepts newline character. */ trtable[NEWLINE_CHAR] = dest_states_nl[j]; - if (state->word_trtable) + if (need_word_trtable) trtable[NEWLINE_CHAR + SBC_MAX] = dest_states_nl[j]; /* There must be only one destination which accepts newline. See group_nodes_into_DFAstates. */ @@ -3360,8 +3502,7 @@ if (dests_node_malloced) free (dests_node); - state->trtable = trtable; - return trtable; + return 1; } /* Group all nodes belonging to STATE into several destinations. @@ -3377,6 +3518,7 @@ bitset *dests_ch; { reg_errcode_t err; + int result; int i, j, k; int ndests; /* Number of the destinations from `state'. */ bitset accepts; /* Characters a node can accept. */ @@ -3525,8 +3667,8 @@ } /* Put the position in the current group. */ - err = re_node_set_insert (&dests_node[j], cur_nodes->elems[i]); - if (BE (err < 0, 0)) + result = re_node_set_insert (&dests_node[j], cur_nodes->elems[i]); + if (BE (result < 0, 0)) goto error_return; /* If all characters are consumed, go to next node. */ @@ -3638,7 +3780,7 @@ } elem_len = re_string_elem_size_at (input, str_idx); - if (elem_len <= 1 && char_len <= 1) + if ((elem_len <= 1 && char_len <= 1) || char_len == 0) return 0; if (node->type == COMPLEX_BRACKET) @@ -3819,8 +3961,10 @@ int32_t idx; const unsigned char *extra = (const unsigned char *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_SYMB_EXTRAMB); + int32_t extrasize = (const unsigned char *) + _NL_CURRENT (LC_COLLATE, _NL_COLLATE_SYMB_EXTRAMB + 1) - extra; - for (idx = 0; ;) + for (idx = 0; idx < extrasize;) { int mbs_cnt, found = 0; int32_t elem_mbs_len; @@ -3850,6 +3994,7 @@ /* Skip the collation sequence value. */ idx += sizeof (uint32_t); } + return UINT_MAX; } } # endif /* _LIBC */ @@ -3864,24 +4009,20 @@ const re_token_t *node; int idx; { - re_dfa_t *const dfa = mctx->dfa; unsigned char ch; - if (node->constraint) - { - /* The node has constraints. Check whether the current context - satisfies the constraints. */ - unsigned int context = re_string_context_at (&mctx->input, idx, - mctx->eflags); - if (NOT_SATISFY_NEXT_CONSTRAINT (node->constraint, context)) - return 0; - } ch = re_string_byte_at (&mctx->input, idx); switch (node->type) { case CHARACTER: - return node->opr.c == ch; + if (node->opr.c != ch) + return 0; + break; + case SIMPLE_BRACKET: - return bitset_contain (node->opr.sbcset, ch); + if (!bitset_contain (node->opr.sbcset, ch)) + return 0; + break; + #ifdef RE_ENABLE_I18N case OP_UTF8_PERIOD: if (ch >= 0x80) @@ -3889,11 +4030,26 @@ /* FALLTHROUGH */ #endif case OP_PERIOD: - return !((ch == '\n' && !(dfa->syntax & RE_DOT_NEWLINE)) - || (ch == '\0' && (dfa->syntax & RE_DOT_NOT_NULL))); + if ((ch == '\n' && !(mctx->dfa->syntax & RE_DOT_NEWLINE)) + || (ch == '\0' && (mctx->dfa->syntax & RE_DOT_NOT_NULL))) + return 0; + break; + default: return 0; } + + if (node->constraint) + { + /* The node has constraints. Check whether the current context + satisfies the constraints. */ + unsigned int context = re_string_context_at (&mctx->input, idx, + mctx->eflags); + if (NOT_SATISFY_NEXT_CONSTRAINT (node->constraint, context)) + return 0; + } + + return 1; } /* Extend the buffers, if the buffers have run out. */ @@ -3990,28 +4146,6 @@ match_ctx_clean (mctx) re_match_context_t *mctx; { - match_ctx_free_subtops (mctx); - mctx->nsub_tops = 0; - mctx->nbkref_ents = 0; -} - -/* Free all the memory associated with MCTX. */ - -static void -match_ctx_free (mctx) - re_match_context_t *mctx; -{ - match_ctx_free_subtops (mctx); - re_free (mctx->sub_tops); - re_free (mctx->bkref_ents); -} - -/* Free all the memory associated with MCTX->SUB_TOPS. */ - -static void -match_ctx_free_subtops (mctx) - re_match_context_t *mctx; -{ int st_idx; for (st_idx = 0; st_idx < mctx->nsub_tops; ++st_idx) { @@ -4031,6 +4165,21 @@ } free (top); } + + mctx->nsub_tops = 0; + mctx->nbkref_ents = 0; +} + +/* Free all the memory associated with MCTX. */ + +static void +match_ctx_free (mctx) + re_match_context_t *mctx; +{ + /* First, free all the memory associated with MCTX->SUB_TOPS. */ + match_ctx_clean (mctx); + re_free (mctx->sub_tops); + re_free (mctx->bkref_ents); } /* Add a new backreference entry to MCTX. @@ -4058,26 +4207,42 @@ sizeof (struct re_backref_cache_entry) * mctx->abkref_ents); mctx->abkref_ents *= 2; } + if (mctx->nbkref_ents > 0 + && mctx->bkref_ents[mctx->nbkref_ents - 1].str_idx == str_idx) + mctx->bkref_ents[mctx->nbkref_ents - 1].more = 1; + mctx->bkref_ents[mctx->nbkref_ents].node = node; mctx->bkref_ents[mctx->nbkref_ents].str_idx = str_idx; mctx->bkref_ents[mctx->nbkref_ents].subexp_from = from; mctx->bkref_ents[mctx->nbkref_ents].subexp_to = to; - mctx->bkref_ents[mctx->nbkref_ents++].flag = 0; + + /* This is a cache that saves negative results of check_dst_limits_calc_pos. + If bit N is clear, means that this entry won't epsilon-transition to + an OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP for the N+1-th subexpression. If + it is set, check_dst_limits_calc_pos_1 will recurse and try to find one + such node. + + A backreference does not epsilon-transition unless it is empty, so set + to all zeros if FROM != TO. */ + mctx->bkref_ents[mctx->nbkref_ents].eps_reachable_subexps_map + = (from == to ? ~0 : 0); + + mctx->bkref_ents[mctx->nbkref_ents++].more = 0; if (mctx->max_mb_elem_len < to - from) mctx->max_mb_elem_len = to - from; return REG_NOERROR; } -/* Search for the first entry which has the same str_idx. - Note that MCTX->BKREF_ENTS is already sorted by MCTX->STR_IDX. */ +/* Search for the first entry which has the same str_idx, or -1 if none is + found. Note that MCTX->BKREF_ENTS is already sorted by MCTX->STR_IDX. */ static int search_cur_bkref_entry (mctx, str_idx) re_match_context_t *mctx; int str_idx; { - int left, right, mid; - right = mctx->nbkref_ents; + int left, right, mid, last; + last = right = mctx->nbkref_ents; for (left = 0; left < right;) { mid = (left + right) / 2; @@ -4086,16 +4251,10 @@ else right = mid; } - return left; -} - -static void -match_ctx_clear_flag (mctx) - re_match_context_t *mctx; -{ - int i; - for (i = 0; i < mctx->nbkref_ents; ++i) - mctx->bkref_ents[i].flag = 0; + if (left < last && mctx->bkref_ents[left].str_idx == str_idx) + return left; + else + return -1; } /* Register the node NODE, whose type is OP_OPEN_SUBEXP, and which matches @@ -4161,18 +4320,14 @@ } static void -sift_ctx_init (sctx, sifted_sts, limited_sts, last_node, last_str_idx, - check_subexp) +sift_ctx_init (sctx, sifted_sts, limited_sts, last_node, last_str_idx) re_sift_context_t *sctx; re_dfastate_t **sifted_sts, **limited_sts; - int last_node, last_str_idx, check_subexp; + int last_node, last_str_idx; { sctx->sifted_states = sifted_sts; sctx->limited_states = limited_sts; sctx->last_node = last_node; sctx->last_str_idx = last_str_idx; - sctx->check_subexp = check_subexp; - sctx->cur_bkref = -1; - sctx->cls_subexp_idx = -1; re_node_set_init_empty (&sctx->limits); } diff -urN gawk-3.1.4/test/ChangeLog gawk-3.1.5/test/ChangeLog --- gawk-3.1.4/test/ChangeLog 2004-08-02 12:19:21.000000000 +0300 +++ gawk-3.1.5/test/ChangeLog 2005-07-26 21:47:35.000000000 +0300 @@ -1,3 +1,75 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + +Sun Jul 10 18:31:45 2005 Scott Deifik + + * regtest.sh: Changed to use diff instead of cmp for djgpp. + This addresses DOS vs. UNIX end-of-line issues. + +Thu Jun 9 23:40:14 2005 Arnold D. Robbins + + * Makefile.am (Maketests): Don't use $< in rule, it breaks + on some non-GNU versions of make. Sigh. + +Wed Apr 27 22:22:05 2005 Arnold D. Robbins + + * Makefile.am (longdbl): new test. + * longdbl.awk, longdbl.in, longdbl.ok: new files. + +Wed Feb 2 16:44:41 2005 Arnold D. Robbins + + * Makefile.am (exitval2): new test. + * exitval2.awk, exitval2.ok: new files. + +Mon Jan 31 10:00:52 2005 Arnold D. Robbins + + * Makefile.am (gnuops3): new test. + * gnuops3.awk, gnuops3.ok: new files. + +Wed Jan 19 18:04:40 2005 Arnold D. Robbins + + * Makefile.am (hex): new test. + * hex.awk, hex.ok: new files. + +Sun Jan 9 11:53:09 2005 Arnold D. Robbins + + * Makefile.am (strftime, igncras2, subamp): Use `GAWKLOCALE', + not `GAWK_LOCALE'. Grrr! + +Mon Jan 3 12:20:08 2005 William J. Poser + + * Makefile.am (wjposer1): new test. + * wjposer1.awk, wjposer1.in, wjposer1.ok: new files. + +Mon Jan 3 11:55:48 2005 Arnold D. Robbins + + * Makefile.am (rsstart1, rsstart2, rsstart3): new tests. + * rsstart1.in, rsstart1.awk, rsstart1.ok, rsstart2.awk, + rsstart2.ok, rsstart3.ok: new files. + +Sun Dec 19 17:31:48 2004 Arnold D. Robbins + + * Makefile.am (gensub2): new test. + * gensub2.awk, gensub2.ok: new files. + + Thanks to "John H. DuBois III" . + +Thu Dec 9 15:22:58 2004 Arnold D. Robbins + + * Makefile.am (fsspcoln): new test. + * fsspcoln.awk, fsspcoln.in, fsspcoln.ok: new files. + +Mon Nov 29 18:41:33 2004 Arnold D. Robbins + + * Makefile.am (iobug1): new test. + * iobug1.awk, iobug1.ok: new files. + +Tue Sep 28 18:39:53 2004 Arnold D. Robbins + + * nondec.awk, nondec.ok: Add 00.34 as value to print, it should + not be treated as octal. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/test/Makefile.am gawk-3.1.5/test/Makefile.am --- gawk-3.1.4/test/Makefile.am 2004-07-28 16:48:08.000000000 +0300 +++ gawk-3.1.5/test/Makefile.am 2005-07-26 21:07:43.000000000 +0300 @@ -1,7 +1,7 @@ # # test/Makefile.am --- automake input file for gawk # -# Copyright (C) 1988-2004 the Free Software Foundation, Inc. +# Copyright (C) 1988-2005 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -18,7 +18,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # ## process this file with automake to produce Makefile.in @@ -140,6 +140,8 @@ eofsplit.ok \ exitval1.awk \ exitval1.ok \ + exitval2.awk \ + exitval2.ok \ fflush.ok \ fflush.sh \ fieldwdth.awk \ @@ -184,6 +186,9 @@ fsrs.awk \ fsrs.in \ fsrs.ok \ + fsspcoln.awk \ + fsspcoln.in \ + fsspcoln.ok \ fstabplus.awk \ fstabplus.in \ fstabplus.ok \ @@ -197,6 +202,8 @@ gensub.awk \ gensub.in \ gensub.ok \ + gensub2.awk \ + gensub2.ok \ getline.awk \ getline.in \ getline.ok \ @@ -217,6 +224,8 @@ getnr2tm.ok \ gnuops2.awk \ gnuops2.ok \ + gnuops3.awk \ + gnuops3.ok \ gnureops.awk \ gnureops.ok \ gsubasgn.awk \ @@ -234,6 +243,8 @@ gsubtst5.in \ gsubtst5.ok \ gtlnbufv.awk \ + hex.awk \ + hex.ok \ hsprint.awk \ hsprint.ok \ icasefs.awk \ @@ -260,6 +271,8 @@ intest.ok \ intprec.awk \ intprec.ok \ + iobug1.awk \ + iobug1.ok \ leaddig.awk \ leaddig.ok \ leadnl.awk \ @@ -269,6 +282,9 @@ lint.ok \ litoct.awk \ litoct.ok \ + longdbl.awk \ + longdbl.in \ + longdbl.ok \ longsub.awk \ longsub.in \ longsub.ok \ @@ -330,6 +346,8 @@ noloop2.ok \ nondec.awk \ nondec.ok \ + nondec2.awk \ + nondec2.ok \ nonl.awk \ nonl.ok \ noparms.awk \ @@ -452,6 +470,12 @@ rsnul1nl.ok \ rsnulbig.ok \ rsnulbig2.ok \ + rsstart1.awk \ + rsstart1.in \ + rsstart1.ok \ + rsstart2.awk \ + rsstart2.ok \ + rsstart3.ok \ rstest1.awk \ rstest1.ok \ rstest2.awk \ @@ -540,11 +564,16 @@ whiny.awk \ whiny.in \ whiny.ok \ + wjposer1.awk \ + wjposer1.in \ + wjposer1.ok \ zeroe0.awk \ zeroe0.ok \ zeroflag.awk \ zeroflag.ok +TESTS_WE_ARE_NOT_DOING_YET_FIXME_ONE_DAY = longdbl + # Get rid of core files when cleaning CLEANFILES = core core.* @@ -554,12 +583,12 @@ arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \ aryprm8 arysubnm asgext awkpath back89 backgsub childin clobber \ clsflnam compare compare2 concat1 concat2 concat3 convfmt datanonl defref \ - delarprm delarpm2 delfunc dynlj eofsplit exitval1 fldchg fldchgnf fmttest fnamedat \ + delarprm delarpm2 delfunc dynlj eofsplit exitval1 exitval2 fldchg fldchgnf fmttest fnamedat \ fnarray fnarray2 fnarydel fnaryscl fnasgnm fnmisc fnparydl \ - fordel forsimp fsbs fsrs fstabplus funsemnl funsmnam funstack getline \ + fordel forsimp fsbs fsspcoln fsrs fstabplus funsemnl funsmnam funstack getline \ getline2 getline3 getlnbuf getnr2tb getnr2tm gsubasgn gsubtest \ - gsubtst2 gsubtst3 gsubtst4 gsubtst5 hsprint inputred intest \ - intprec leaddig leadnl litoct longsub longwrds manglprm math membug1 \ + gsubtst2 gsubtst3 gsubtst4 gsubtst5 hex hsprint inputred intest \ + intprec iobug1 leaddig leadnl litoct longsub longwrds manglprm math membug1 \ messages minusstr mmap8k nasty nasty2 negexp nested nfldstr \ nfneg nfset nlfldsep nlinstr nlstrina noeffect nofmtch noloop1 \ noloop2 nonl noparms nors nulrsend numindex numsubstr octsub ofmt \ @@ -570,14 +599,16 @@ rstest2 rstest3 rstest4 rstest5 rswhite scalar sclforin sclifin \ sortempty splitargv splitarr splitdef splitvar splitwht sprintfc \ strcat1 strtod subamp subsepnm subslash substr swaplns synerr1 tradanch \ - tweakfld uninit2 uninit3 uninit4 uninitialized unterm zeroe0 zeroflag + tweakfld uninit2 uninit3 uninit4 uninitialized unterm wjposer1 \ + zeroe0 zeroflag UNIX_TESTS = fflush getlnhd pid pipeio1 pipeio2 poundbang space strftlng GAWK_EXT_TESTS = argtest asort asorti backw badargs clos1way fieldwdth fsfwfs \ - gensub gnuops2 gnureops icasefs icasers igncdym igncfs ignrcase \ - ignrcas2 lint match1 match2 manyfiles nondec posix procinfs \ - printfbad1 regx8bit rebuf reint rstest6 shadow sort1 strtonum strftime whiny + gensub gensub2 gnuops2 gnuops3 gnureops icasefs icasers igncdym igncfs ignrcase \ + ignrcas2 lint match1 match2 manyfiles nondec nondec2 posix procinfs \ + printfbad1 regx8bit rebuf reint rsstart1 rsstart2 rsstart3 \ + rstest6 shadow sort1 strtonum strftime whiny EXTRA_TESTS = regtest inftest @@ -739,7 +770,7 @@ @echo This test could fail on slow machines or on a minute boundary, @echo so if it does, double check the actual results: @echo $@ - @GAWK_LOCALE=C; export GAWK_LOCALE; \ + @GAWKLOCALE=C; export GAWKLOCALE; \ TZ=GMT0; export TZ; \ (LC_ALL=C date) | $(AWK) -v OUTPUT=_$@ -f $(srcdir)/strftime.awk @-$(CMP) strftime.ok _$@ && rm -f _$@ strftime.ok || exit 0 @@ -894,13 +925,13 @@ ignrcas2:: @echo $@ - @GAWK_LOCALE=en_US ; export GAWK_LOCALE ; \ + @GAWKLOCALE=en_US ; export GAWKLOCALE ; \ $(AWK) -f $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ subamp:: @echo $@ - @GAWK_LOCALE=en_US.UTF-8 ; export GAWK_LOCALE ; \ + @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -911,11 +942,36 @@ @$(AWK) -f $(srcdir)/exitval1.awk >_$@ 2>&1; echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +fsspcoln:: + @echo $@ + @$(AWK) -f $(srcdir)/$@.awk 'FS=[ :]+' $(srcdir)/$@.in >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + +rsstart1:: + @echo $@ + @$(AWK) -f $(srcdir)/$@.awk $(srcdir)/rsstart1.in >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + +rsstart2:: + @echo $@ + @$(AWK) -f $(srcdir)/$@.awk $(srcdir)/rsstart1.in >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + +rsstart3:: + @echo $@ + @head $(srcdir)/rsstart1.in | $(AWK) -f $(srcdir)/rsstart2.awk >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + +nondec2:: + @echo $@ + @$(AWK) --non-decimal-data -v a=0x1 -f $(srcdir)/$@.awk >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + # Targets generated for other tests: include Maketests $(srcdir)/Maketests: $(srcdir)/Makefile.am $(srcdir)/Gentests - $(AWK) -f $(srcdir)/Gentests "$<" *.awk *.in > $(srcdir)/Maketests + $(AWK) -f $(srcdir)/Gentests "$(srcdir)/Makefile.am" *.awk *.in > $(srcdir)/Maketests clean: rm -fr _* core core.* junk out1 out2 out3 strftime.ok test1 test2 seq *~ diff -urN gawk-3.1.4/test/Makefile.in gawk-3.1.5/test/Makefile.in --- gawk-3.1.4/test/Makefile.in 2004-08-02 12:16:31.000000000 +0300 +++ gawk-3.1.5/test/Makefile.in 2005-07-26 21:44:03.000000000 +0300 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.8.5 from Makefile.am. +# Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,7 +17,7 @@ # # test/Makefile.am --- automake input file for gawk # -# Copyright (C) 1988-2004 the Free Software Foundation, Inc. +# Copyright (C) 1988-2005 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -34,7 +34,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # srcdir = @srcdir@ top_srcdir = @top_srcdir@ @@ -56,27 +56,21 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : +build_triplet = @build@ host_triplet = @host@ DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/Maketests ChangeLog subdir = test ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/intdiv0.m4 $(top_srcdir)/m4/intmax.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes-pri.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/longdouble.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes_h.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/longlong.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf-posix.m4 $(top_srcdir)/m4/progtest.m4 \ - $(top_srcdir)/m4/signed.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/strtod.m4 $(top_srcdir)/m4/uintmax_t.m4 \ - $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/m4/wchar_t.m4 \ - $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xsize.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/socket.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/strtod.m4 \ + $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -87,7 +81,6 @@ DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ @@ -101,15 +94,12 @@ # This can also be done in individual tests where we wish to # check things specifically not in the C locale. AWK = LC_ALL=$${GAWKLOCALE:-C} LANG=$${GAWKLOCALE:-C} $(AWKPROG) -BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@ -CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ -DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ @@ -117,22 +107,13 @@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ -GENCAT = @GENCAT@ -GLIBC21 = @GLIBC21@ GMSGFMT = @GMSGFMT@ -HAVE_ASPRINTF = @HAVE_ASPRINTF@ -HAVE_POSIX_PRINTF = @HAVE_POSIX_PRINTF@ -HAVE_SNPRINTF = @HAVE_SNPRINTF@ -HAVE_WPRINTF = @HAVE_WPRINTF@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INSTOBJEXT = @INSTOBJEXT@ -INTLBISON = @INTLBISON@ INTLLIBS = @INTLLIBS@ -INTLOBJS = @INTLOBJS@ -INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -161,7 +142,6 @@ SOCKET_LIBS = @SOCKET_LIBS@ STRIP = @STRIP@ U = @U@ -USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ @@ -174,6 +154,8 @@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -319,6 +301,8 @@ eofsplit.ok \ exitval1.awk \ exitval1.ok \ + exitval2.awk \ + exitval2.ok \ fflush.ok \ fflush.sh \ fieldwdth.awk \ @@ -363,6 +347,9 @@ fsrs.awk \ fsrs.in \ fsrs.ok \ + fsspcoln.awk \ + fsspcoln.in \ + fsspcoln.ok \ fstabplus.awk \ fstabplus.in \ fstabplus.ok \ @@ -376,6 +363,8 @@ gensub.awk \ gensub.in \ gensub.ok \ + gensub2.awk \ + gensub2.ok \ getline.awk \ getline.in \ getline.ok \ @@ -396,6 +385,8 @@ getnr2tm.ok \ gnuops2.awk \ gnuops2.ok \ + gnuops3.awk \ + gnuops3.ok \ gnureops.awk \ gnureops.ok \ gsubasgn.awk \ @@ -413,6 +404,8 @@ gsubtst5.in \ gsubtst5.ok \ gtlnbufv.awk \ + hex.awk \ + hex.ok \ hsprint.awk \ hsprint.ok \ icasefs.awk \ @@ -439,6 +432,8 @@ intest.ok \ intprec.awk \ intprec.ok \ + iobug1.awk \ + iobug1.ok \ leaddig.awk \ leaddig.ok \ leadnl.awk \ @@ -448,6 +443,9 @@ lint.ok \ litoct.awk \ litoct.ok \ + longdbl.awk \ + longdbl.in \ + longdbl.ok \ longsub.awk \ longsub.in \ longsub.ok \ @@ -509,6 +507,8 @@ noloop2.ok \ nondec.awk \ nondec.ok \ + nondec2.awk \ + nondec2.ok \ nonl.awk \ nonl.ok \ noparms.awk \ @@ -631,6 +631,12 @@ rsnul1nl.ok \ rsnulbig.ok \ rsnulbig2.ok \ + rsstart1.awk \ + rsstart1.in \ + rsstart1.ok \ + rsstart2.awk \ + rsstart2.ok \ + rsstart3.ok \ rstest1.awk \ rstest1.ok \ rstest2.awk \ @@ -719,11 +725,15 @@ whiny.awk \ whiny.in \ whiny.ok \ + wjposer1.awk \ + wjposer1.in \ + wjposer1.ok \ zeroe0.awk \ zeroe0.ok \ zeroflag.awk \ zeroflag.ok +TESTS_WE_ARE_NOT_DOING_YET_FIXME_ONE_DAY = longdbl # Get rid of core files when cleaning CLEANFILES = core core.* @@ -734,12 +744,12 @@ arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \ aryprm8 arysubnm asgext awkpath back89 backgsub childin clobber \ clsflnam compare compare2 concat1 concat2 concat3 convfmt datanonl defref \ - delarprm delarpm2 delfunc dynlj eofsplit exitval1 fldchg fldchgnf fmttest fnamedat \ + delarprm delarpm2 delfunc dynlj eofsplit exitval1 exitval2 fldchg fldchgnf fmttest fnamedat \ fnarray fnarray2 fnarydel fnaryscl fnasgnm fnmisc fnparydl \ - fordel forsimp fsbs fsrs fstabplus funsemnl funsmnam funstack getline \ + fordel forsimp fsbs fsspcoln fsrs fstabplus funsemnl funsmnam funstack getline \ getline2 getline3 getlnbuf getnr2tb getnr2tm gsubasgn gsubtest \ - gsubtst2 gsubtst3 gsubtst4 gsubtst5 hsprint inputred intest \ - intprec leaddig leadnl litoct longsub longwrds manglprm math membug1 \ + gsubtst2 gsubtst3 gsubtst4 gsubtst5 hex hsprint inputred intest \ + intprec iobug1 leaddig leadnl litoct longsub longwrds manglprm math membug1 \ messages minusstr mmap8k nasty nasty2 negexp nested nfldstr \ nfneg nfset nlfldsep nlinstr nlstrina noeffect nofmtch noloop1 \ noloop2 nonl noparms nors nulrsend numindex numsubstr octsub ofmt \ @@ -750,13 +760,15 @@ rstest2 rstest3 rstest4 rstest5 rswhite scalar sclforin sclifin \ sortempty splitargv splitarr splitdef splitvar splitwht sprintfc \ strcat1 strtod subamp subsepnm subslash substr swaplns synerr1 tradanch \ - tweakfld uninit2 uninit3 uninit4 uninitialized unterm zeroe0 zeroflag + tweakfld uninit2 uninit3 uninit4 uninitialized unterm wjposer1 \ + zeroe0 zeroflag UNIX_TESTS = fflush getlnhd pid pipeio1 pipeio2 poundbang space strftlng GAWK_EXT_TESTS = argtest asort asorti backw badargs clos1way fieldwdth fsfwfs \ - gensub gnuops2 gnureops icasefs icasers igncdym igncfs ignrcase \ - ignrcas2 lint match1 match2 manyfiles nondec posix procinfs \ - printfbad1 regx8bit rebuf reint rstest6 shadow sort1 strtonum strftime whiny + gensub gensub2 gnuops2 gnuops3 gnureops icasefs icasers igncdym igncfs ignrcase \ + ignrcas2 lint match1 match2 manyfiles nondec nondec2 posix procinfs \ + printfbad1 regx8bit rebuf reint rsstart1 rsstart2 rsstart3 \ + rstest6 shadow sort1 strtonum strftime whiny EXTRA_TESTS = regtest inftest INET_TESTS = inetechu inetecht inetdayu inetdayt @@ -859,7 +871,7 @@ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: - -rm -f $(CONFIG_CLEAN_FILES) + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -1057,7 +1069,7 @@ @echo This test could fail on slow machines or on a minute boundary, @echo so if it does, double check the actual results: @echo $@ - @GAWK_LOCALE=C; export GAWK_LOCALE; \ + @GAWKLOCALE=C; export GAWKLOCALE; \ TZ=GMT0; export TZ; \ (LC_ALL=C date) | $(AWK) -v OUTPUT=_$@ -f $(srcdir)/strftime.awk @-$(CMP) strftime.ok _$@ && rm -f _$@ strftime.ok || exit 0 @@ -1212,13 +1224,13 @@ ignrcas2:: @echo $@ - @GAWK_LOCALE=en_US ; export GAWK_LOCALE ; \ + @GAWKLOCALE=en_US ; export GAWKLOCALE ; \ $(AWK) -f $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ subamp:: @echo $@ - @GAWK_LOCALE=en_US.UTF-8 ; export GAWK_LOCALE ; \ + @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -1228,6 +1240,31 @@ @echo $@ @$(AWK) -f $(srcdir)/exitval1.awk >_$@ 2>&1; echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + +fsspcoln:: + @echo $@ + @$(AWK) -f $(srcdir)/$@.awk 'FS=[ :]+' $(srcdir)/$@.in >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + +rsstart1:: + @echo $@ + @$(AWK) -f $(srcdir)/$@.awk $(srcdir)/rsstart1.in >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + +rsstart2:: + @echo $@ + @$(AWK) -f $(srcdir)/$@.awk $(srcdir)/rsstart1.in >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + +rsstart3:: + @echo $@ + @head $(srcdir)/rsstart1.in | $(AWK) -f $(srcdir)/rsstart2.awk >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + +nondec2:: + @echo $@ + @$(AWK) --non-decimal-data -v a=0x1 -f $(srcdir)/$@.awk >_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ Gt-dummy: # file Maketests, generated from Makefile.am by the Gentests program addcomma: @@ -1420,6 +1457,11 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +exitval2: + @echo exitval2 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + fldchg: @echo fldchg @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -1560,6 +1602,11 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +hex: + @echo hex + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + hsprint: @echo hsprint @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -1580,6 +1627,11 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +iobug1: + @echo iobug1 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + leadnl: @echo leadnl @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -1990,6 +2042,11 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +wjposer1: + @echo wjposer1 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + zeroe0: @echo zeroe0 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -2040,11 +2097,21 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +gensub2: + @echo gensub2 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + gnuops2: @echo gnuops2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +gnuops3: + @echo gnuops3 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + gnureops: @echo gnureops @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -2145,7 +2212,7 @@ # Targets generated for other tests: $(srcdir)/Maketests: $(srcdir)/Makefile.am $(srcdir)/Gentests - $(AWK) -f $(srcdir)/Gentests "$<" *.awk *.in > $(srcdir)/Maketests + $(AWK) -f $(srcdir)/Gentests "$(srcdir)/Makefile.am" *.awk *.in > $(srcdir)/Maketests clean: rm -fr _* core core.* junk out1 out2 out3 strftime.ok test1 test2 seq *~ diff -urN gawk-3.1.4/test/Maketests gawk-3.1.5/test/Maketests --- gawk-3.1.4/test/Maketests 2004-07-28 16:54:51.000000000 +0300 +++ gawk-3.1.5/test/Maketests 2005-07-26 21:10:48.000000000 +0300 @@ -190,6 +190,11 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +exitval2: + @echo exitval2 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + fldchg: @echo fldchg @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -330,6 +335,11 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +hex: + @echo hex + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + hsprint: @echo hsprint @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -350,6 +360,11 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +iobug1: + @echo iobug1 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + leadnl: @echo leadnl @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -760,6 +775,11 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +wjposer1: + @echo wjposer1 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + zeroe0: @echo zeroe0 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -810,11 +830,21 @@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +gensub2: + @echo gensub2 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + gnuops2: @echo gnuops2 @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +gnuops3: + @echo gnuops3 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + gnureops: @echo gnureops @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ diff -urN gawk-3.1.4/test/badargs.ok gawk-3.1.5/test/badargs.ok --- gawk-3.1.4/test/badargs.ok 2002-04-11 21:38:13.000000000 +0300 +++ gawk-3.1.5/test/badargs.ok 2005-05-11 18:28:18.000000000 +0300 @@ -10,6 +10,7 @@ -W copyleft --copyleft -W copyright --copyright -W dump-variables[=file] --dump-variables[=file] + -W exec=file --exec=file -W gen-po --gen-po -W help --help -W lint[=fatal] --lint[=fatal] diff -urN gawk-3.1.4/test/clobber.awk gawk-3.1.5/test/clobber.awk --- gawk-3.1.4/test/clobber.awk 1997-06-04 19:38:08.000000000 +0300 +++ gawk-3.1.5/test/clobber.awk 2005-05-11 18:28:18.000000000 +0300 @@ -40,7 +40,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # bash$ gdb gawk # GDB is free software and you are welcome to distribute copies of it # under certain conditions; type "show copying" to see the conditions. diff -urN gawk-3.1.4/test/concat1.awk gawk-3.1.5/test/concat1.awk --- gawk-3.1.4/test/concat1.awk 2002-01-23 14:48:45.000000000 +0200 +++ gawk-3.1.5/test/concat1.awk 2005-05-11 18:28:18.000000000 +0300 @@ -59,7 +59,7 @@ # #You should have received a copy of the GNU General Public License #along with this program; if not, write to the Free Software -#Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +#Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # #I am running this on a i686 machine that is running RedHat 7.2 (out of the box). # diff -urN gawk-3.1.4/test/exitval2.awk gawk-3.1.5/test/exitval2.awk --- gawk-3.1.4/test/exitval2.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/exitval2.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,3 @@ +BEGIN { print "foo" | "read x ; echo $x ; exit 12" } +# this should still exit 0, as pointed out by kenny mccormack in +# comp.lang.awk on 2 feb 2005 diff -urN gawk-3.1.4/test/exitval2.ok gawk-3.1.5/test/exitval2.ok --- gawk-3.1.4/test/exitval2.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/exitval2.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1 @@ +foo diff -urN gawk-3.1.4/test/fsspcoln.awk gawk-3.1.5/test/fsspcoln.awk --- gawk-3.1.4/test/fsspcoln.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/fsspcoln.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,41 @@ +# Date: Wed, 08 Dec 2004 12:59:42 +0600 +# From: Alexander Sashnov +# Subject: addon to gawk test suite +# Sender: asashnov@sashnov.plesk.ru +# To: "Arnold D. Robbins" +# Message-id: +# +# +# Hello, Arnold. +# +# I'm hit bug on SuSE 9.1 with awk: +# +# vsuse91:~ # echo "a:b:c" | awk '{ print $2 }' 'FS=[ :]' +# b +# vsuse91:~ # echo "a:b:c" | awk '{ print $2 }' 'FS=[ :]+' +# awk: cmd. line:2: fatal: Trailing backslash: /[ :]+/ +# +# vsuse91:~ # awk --version +# GNU Awk 3.1.3 +# +# +# +# But on my Debian machine all OK: +# +# asashnov@sashnov:~$ echo "a:b:c" | awk '{ print $2 }' 'FS=[ :]' +# b +# asashnov@sashnov:~$ echo "a:b:c" | awk '{ print $2 }' 'FS=[ :]+' +# b +# asashnov@sashnov:~$ awk --version +# GNU Awk 3.1.4 +# +# +# Need add test for this sample to gawk test suite for avoid this problems in future. +# -- +# Alexander Sashnov +# Plesk QA Engineer +# SWsoft, Inc. +# E-mail: asashnov@sw-soft.com +# ICQ UIN: 79404252 + +{ print $2 } diff -urN gawk-3.1.4/test/fsspcoln.in gawk-3.1.5/test/fsspcoln.in --- gawk-3.1.4/test/fsspcoln.in 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/fsspcoln.in 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1 @@ +a:b:c diff -urN gawk-3.1.4/test/fsspcoln.ok gawk-3.1.5/test/fsspcoln.ok --- gawk-3.1.4/test/fsspcoln.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/fsspcoln.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1 @@ +b diff -urN gawk-3.1.4/test/gensub2.awk gawk-3.1.5/test/gensub2.awk --- gawk-3.1.4/test/gensub2.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/gensub2.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,5 @@ +BEGIN { + print gensub("x","y",2,"xx") + print gensub("x","y","2","xx") + print gensub("x","y","a","xx") +} diff -urN gawk-3.1.4/test/gensub2.ok gawk-3.1.5/test/gensub2.ok --- gawk-3.1.4/test/gensub2.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/gensub2.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,3 @@ +xy +xy +yx diff -urN gawk-3.1.4/test/gnuops3.awk gawk-3.1.5/test/gnuops3.awk --- gawk-3.1.4/test/gnuops3.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/gnuops3.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,14 @@ +# Mon Jan 31 09:57:30 IST 2005 +# test both dfa and regex matchers on \B +# tests from Stepan Kasal, kasal@ucw.cz +BEGIN { + + print (" " ~ / \B /) # test dfa matcher + print ("a b" ~ /\B/) + print (" b" ~ /\B/) + print ("a " ~ /\B/) + + a = " " + gsub(/\B/, "x", a) # test regex matcher + print a +} diff -urN gawk-3.1.4/test/gnuops3.ok gawk-3.1.5/test/gnuops3.ok --- gawk-3.1.4/test/gnuops3.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/gnuops3.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,5 @@ +1 +0 +1 +1 +x x x diff -urN gawk-3.1.4/test/hex.awk gawk-3.1.5/test/hex.awk --- gawk-3.1.4/test/hex.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/hex.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,22 @@ +# Test program from Paul Eggert, eggert@cs.ucla.edu, Jan. 14, 2005 + +BEGIN { + e = "1(e)" + ex = "3e2(ex)" + x = "6e5(x)" + + print e+0, x+0 + print 0x + print 0e+x + print 0ex + print 010e2 + print 0e9.3 +} + +# Expected results: +# 1 600000 +# 06e5(x) +# 0600001 +# 03e2(ex) +# 1000 +# 00.3 diff -urN gawk-3.1.4/test/hex.ok gawk-3.1.5/test/hex.ok --- gawk-3.1.4/test/hex.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/hex.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,6 @@ +1 600000 +06e5(x) +0600001 +03e2(ex) +1000 +00.3 diff -urN gawk-3.1.4/test/iobug1.awk gawk-3.1.5/test/iobug1.awk --- gawk-3.1.4/test/iobug1.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/iobug1.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,53 @@ +# From arnold@f7.net Fri Nov 26 11:53:12 2004 +# X-Envelope-From: james@nocrew.org +# X-Envelope-To: +# To: bug-gawk@gnu.org +# Subject: gawk 3.1.4: reproducible hang, regression from 3.1.3 +# From: James Troup +# Date: Fri, 26 Nov 2004 03:14:05 +0000 +# Message-ID: <877jo9qp36.fsf@shiri.gloaming.local> +# User-Agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux) +# MIME-Version: 1.0 +# Content-Type: text/plain; charset=us-ascii +# +# +# Hi, +# +# A Debian user reported[0] gawk 3.1.4 broke a (relatively) complex +# program that makes extensive use of awk, called 'apt-move'. I finally +# managed to reduced the problem down to a 3 line test case, enclosed +# below[1]. +# +# I believe the problem comes from the following code, introduced in +# 3.1.4: +# +# [io.c, line 560] +# | for (rp = red_head; rp != NULL; rp = rp->next) { +# | if ((rp->flag & RED_EOF) && tree->type == Node_redirect_pipein) { +# | if (rp->pid != -1) +# | wait_any(0); +# | } +# +# The problem is that, if we have an existing redirect which is a simple +# file redirect[b] and it's hit EOF and we try to create a new '|' +# redirect[c], this new code will try to wait(2) and if there are any +# other redirects which _did_ spawn a child (like [a]) the wait() will +# hang indefinitely waiting for it to exit. +# +# Hope that makes sense :) +# +# -- +# James +# +# [0] http://bugs.debian.org/263964 +# +# [1] +# ================================================================================ +#!/usr/bin/gawk -f + +BEGIN { + printf "" | "cat" # [a] + getline line < "/dev/null" # [b] + "true" | getline line # [c] +} +# ================================================================================ diff -urN gawk-3.1.4/test/longdbl.awk gawk-3.1.5/test/longdbl.awk --- gawk-3.1.4/test/longdbl.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/longdbl.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,159 @@ +# From arnold@f7.net Wed Apr 27 09:48:37 2005 +# Return-Path: +# Received: from localhost (skeeve [127.0.0.1]) +# by skeeve.com (8.12.11/8.12.11) with ESMTP id j3R6mZVm015791 +# for ; Wed, 27 Apr 2005 09:48:37 +0300 +# Received: from pop.012.net.il [84.95.5.221] +# by localhost with POP3 (fetchmail-6.2.5) +# for arnold@localhost (single-drop); Wed, 27 Apr 2005 09:48:37 +0300 (IDT) +# Received: from mtain3.012.net.il ([10.220.5.7]) +# by i_mss3.012.net.il (HyperSendmail v2004.12) +# with ESMTP id <0IFK00L1DIZ02530@i_mss3.012.net.il> for arobbins@012.net.il; +# Tue, 26 Apr 2005 22:18:36 +0300 (IDT) +# Received: from VScan3 ([10.220.20.3]) +# by i_mtain3.012.net.il (HyperSendmail v2004.12) +# with ESMTP id <0IFK007U1IZ0U980@i_mtain3.012.net.il> for arobbins@012.net.il +# (ORCPT arobbins@012.net.il); Tue, 26 Apr 2005 22:18:36 +0300 (IDT) +# Received: from i_mtain1.012.net.il ([10.220.5.1]) +# by VScan3 with InterScan Messaging Security Suite; Tue, +# 26 Apr 2005 22:15:22 +0300 +# Received: from f7.net ([209.61.216.22]) +# by i_mtain1.012.net.il (HyperSendmail v2004.12) +# with ESMTP id <0IFK009SIIYRN7G0@i_mtain1.012.net.il> for arobbins@012.net.il; +# Tue, 26 Apr 2005 22:18:33 +0300 (IDT) +# Received: (from arnold@localhost) by f7.net (8.11.7-20030920/8.11.7) +# id j3QJFAg18376 for arobbins@012.net.il; Tue, 26 Apr 2005 15:15:10 -0400 +# Received: from fencepost.gnu.org (fencepost.gnu.org [199.232.76.164]) +# by f7.net (8.11.7-20030920/8.11.7) with ESMTP id j3QJF5J18304 for +# ; Tue, 26 Apr 2005 15:15:06 -0400 +# Received: from monty-python.gnu.org ([199.232.76.173]) +# by fencepost.gnu.org with esmtp (Exim 4.34) +# id 1DQVVh-0004gD-CH for bug-gawk@gnu.org; Tue, 26 Apr 2005 15:14:17 -0400 +# Received: from Debian-exim by monty-python.gnu.org with spam-scanned +# (Exim 4.34) id 1DQVYa-0002PR-2b for bug-gawk@gnu.org; Tue, +# 26 Apr 2005 15:17:56 -0400 +# Received: from [129.183.4.8] (helo=ecfrec.frec.bull.fr) +# by monty-python.gnu.org with esmtp (Exim 4.34) +# id 1DQVYZ-0002Lr-EF for bug-gawk@gnu.org; Tue, 26 Apr 2005 15:17:15 -0400 +# Received: from localhost (localhost [127.0.0.1]) +# by ecfrec.frec.bull.fr (Postfix) with ESMTP id 5782819D907 for +# ; Tue, 26 Apr 2005 21:12:53 +0200 (CEST) +# Received: from ecfrec.frec.bull.fr ([127.0.0.1]) +# by localhost (ecfrec.frec.bull.fr [127.0.0.1]) (amavisd-new, port 10024) +# with ESMTP id 06763-10 for ; Tue, +# 26 Apr 2005 21:12:51 +0200 (CEST) +# Received: from ecn002.frec.bull.fr (ecn002.frec.bull.fr [129.183.4.6]) +# by ecfrec.frec.bull.fr (Postfix) with ESMTP id 4488B19D906 for +# ; Tue, 26 Apr 2005 21:12:51 +0200 (CEST) +# Received: from daphne ([129.183.192.6]) +# by ecn002.frec.bull.fr (Lotus Domino Release 5.0.12) +# with ESMTP id 2005042621231613:3312 ; Tue, 26 Apr 2005 21:23:16 +0200 +# Date: Tue, 26 Apr 2005 21:12:49 +0200 (CEST) +# From: Jean-Marc Saffroy +# Subject: GNU awk unable to handle 64-bit ints on IA64 +# X-X-Sender: saffroyj@daphne.frec.bull.fr +# To: bug-gawk@gnu.org +# Message-id: +# MIME-version: 1.0 +# Content-type: TEXT/PLAIN; charset=US-ASCII; format=flowed +# X-MIMETrack: Itemize by SMTP Server on ECN002/FR/BULL(Release 5.0.12 |February +# 13, 2003) at 26/04/2005 21:23:16, +# Serialize by Router on ECN002/FR/BULL(Release 5.0.12 |February 13, +# 2003) at 26/04/2005 21:23:16, Serialize complete at 26/04/2005 21:23:16 +# X-Virus-Scanned: by amavisd-new at frec.bull.fr +# Original-recipient: rfc822;arobbins@012.net.il +# X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on skeeve.com +# X-Spam-Level: +# X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham +# version=2.63 +# Status: RO +# +# +# Hello, +# +# I have rounding problems when manipulating 64-bit ints (actually they are +# addresses) on Linux/IA64: +# +# $ echo 0xa000000100000813|./gawk '{printf("0x%lx\n",strtonum($1));}' +# 0xa000000100000800 +# $ echo 0xffffffffffffffff|./gawk '{printf("0x%lx\n",strtonum($1));}' +# 0x8000000000000000 +# $ ./gawk --version|head -1 +# GNU Awk 3.1.4 +# +# The problem seems to be that AWKNUM is defined to be a double, which has a +# 53-bit mantissa. On IA64 with gcc 3.2.3 (maybe other compilers as well) +# there is a long double type with a larger mantissa: +# +# $ grep define.*LDBL_MANT_DIG /usr/lib/gcc-lib/ia64-redhat-linux/3.2.3/include/float.h +# #define LDBL_MANT_DIG 64 +# +# So I changed AWKNUM to be a long double; this does not seem to be +# sufficient, because of some dubious casts to double (there may be others +# left, I didn't check), see patch below. Now it's much nicer: +# +# $ echo 0xa000000100000813|./gawk '{printf("0x%lx\n",strtonum($1));}' +# 0xa000000100000813 +# $ echo 0xffffffffffffffff|./gawk '{printf("0x%lx\n",strtonum($1));}' +# 0xffffffffffffffff +# +# Maybe the gawk configure script should set AWKNUM to be a long double on +# Linux/IA64? +# +# +# Regards, +# +# -- +# Jean-Marc Saffroy - jean-marc.saffroy@ext.bull.net +# +# +# diff -ru gawk-3.1.4/awk.h gawk/awk.h +# --- gawk-3.1.4/awk.h 2004-07-26 16:11:05.000000000 +0200 +# +++ gawk/awk.h 2005-04-26 19:19:10.545419273 +0200 +# @@ -273,7 +273,7 @@ +# /* ------------------ Constants, Structures, Typedefs ------------------ */ +# +# #ifndef AWKNUM +# -#define AWKNUM double +# +#define AWKNUM long double +# #endif +# +# #ifndef TRUE +# diff -ru gawk-3.1.4/builtin.c gawk/builtin.c +# --- gawk-3.1.4/builtin.c 2004-07-13 09:55:28.000000000 +0200 +# +++ gawk/builtin.c 2005-04-26 20:53:41.211365432 +0200 +# @@ -578,7 +578,7 @@ +# char *cend = &cpbuf[30];/* chars, we lose, but seems unlikely */ +# char *cp; +# const char *fill; +# - double tmpval; +# + AWKNUM tmpval; +# char signchar = FALSE; +# size_t len; +# int zero_flag = FALSE; +# @@ -2773,16 +2773,16 @@ +# do_strtonum(NODE *tree) +# { +# NODE *tmp; +# - double d; +# + AWKNUM d; +# +# tmp = tree_eval(tree->lnode); +# +# if ((tmp->flags & (NUMBER|NUMCUR)) != 0) +# - d = (double) force_number(tmp); +# + d = (AWKNUM) force_number(tmp); +# else if (isnondecimal(tmp->stptr)) +# d = nondec2awknum(tmp->stptr, tmp->stlen); +# else +# - d = (double) force_number(tmp); +# + d = (AWKNUM) force_number(tmp); +# +# free_temp(tmp); +# return tmp_number((AWKNUM) d); +# +# +# ##################################################################################### +# This Mail Was Scanned by 012.net Anti Virus Service - Powered by TrendMicro Interscan +# +{ printf("0x%lx\n",strtonum($1)); } diff -urN gawk-3.1.4/test/longdbl.in gawk-3.1.5/test/longdbl.in --- gawk-3.1.4/test/longdbl.in 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/longdbl.in 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,2 @@ +0xa000000100000813 +0xffffffffffffffff diff -urN gawk-3.1.4/test/longdbl.ok gawk-3.1.5/test/longdbl.ok --- gawk-3.1.4/test/longdbl.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/longdbl.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,2 @@ +0xa000000100000813 +0xffffffffffffffff diff -urN gawk-3.1.4/test/nondec.awk gawk-3.1.5/test/nondec.awk --- gawk-3.1.4/test/nondec.awk 1997-06-04 19:38:14.000000000 +0300 +++ gawk-3.1.5/test/nondec.awk 2005-05-11 18:28:18.000000000 +0300 @@ -1 +1 @@ -BEGIN { print 0x81c3e8, 0x744018 } +BEGIN { print 0x81c3e8, 0x744018, 00.34 } diff -urN gawk-3.1.4/test/nondec.ok gawk-3.1.5/test/nondec.ok --- gawk-3.1.4/test/nondec.ok 1997-06-04 19:38:14.000000000 +0300 +++ gawk-3.1.5/test/nondec.ok 2005-05-11 18:28:18.000000000 +0300 @@ -1 +1 @@ -8504296 7618584 +8504296 7618584 0.34 diff -urN gawk-3.1.4/test/nondec2.awk gawk-3.1.5/test/nondec2.awk --- gawk-3.1.4/test/nondec2.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/nondec2.awk 2005-06-15 22:22:28.000000000 +0300 @@ -0,0 +1,104 @@ +# From arnold@f7.net Wed Jun 15 08:25:21 2005 +# Return-Path: +# Received: from localhost (skeeve [127.0.0.1]) +# by skeeve.com (8.12.11/8.12.11) with ESMTP id j5F5P3VC014658 +# for ; Wed, 15 Jun 2005 08:25:21 +0300 +# Received: from pop.012.net.il [84.95.5.221] +# by localhost with POP3 (fetchmail-6.2.5) +# for arnold@localhost (single-drop); Wed, 15 Jun 2005 08:25:21 +0300 (IDT) +# Received: from mtain2.012.net.il ([10.220.5.4]) +# by i_mss3.012.net.il (HyperSendmail v2004.12) +# with ESMTP id <0II300LQOPS7DA10@i_mss3.012.net.il> for arobbins@012.net.il; +# Wed, 15 Jun 2005 04:07:19 +0300 (IDT) +# Received: from VSCAN1 ([10.220.20.1]) +# by i_mtain2.012.net.il (HyperSendmail v2004.12) +# with ESMTP id <0II300ETQPS7IEZ4@i_mtain2.012.net.il> for arobbins@012.net.il +# (ORCPT arobbins@012.net.il); Wed, 15 Jun 2005 04:07:19 +0300 (IDT) +# Received: from i_mtain2.012.net.il ([10.220.5.4]) +# by VSCAN1 with InterScan Messaging Security Suite; Wed, +# 15 Jun 2005 04:03:15 +0300 +# Received: from f7.net ([209.61.216.22]) +# by i_mtain2.012.net.il (HyperSendmail v2004.12) +# with ESMTP id <0II300H7VPS5P1O2@i_mtain2.012.net.il> for arobbins@012.net.il; +# Wed, 15 Jun 2005 04:07:18 +0300 (IDT) +# Received: (from arnold@localhost) by f7.net (8.11.7-20030920/8.11.7) +# id j5F13DT21530 for arobbins@012.net.il; Tue, 14 Jun 2005 21:03:14 -0400 +# Received: from fencepost.gnu.org (fencepost.gnu.org [199.232.76.164]) +# by f7.net (8.11.7-20030920/8.11.7) with ESMTP id j5F136p21454 for +# ; Tue, 14 Jun 2005 21:03:06 -0400 +# Received: from monty-python.gnu.org ([199.232.76.173]) +# by fencepost.gnu.org with esmtp (Exim 4.34) +# id 1DiMJ6-0002fe-Av for bug-gawk@gnu.org; Tue, 14 Jun 2005 21:03:04 -0400 +# Received: from Debian-exim by monty-python.gnu.org with spam-scanned +# (Exim 4.34) id 1DiMIp-0003lM-I4 for bug-gawk@gnu.org; Tue, +# 14 Jun 2005 21:02:47 -0400 +# Received: from [66.187.233.31] (helo=mx1.redhat.com) +# by monty-python.gnu.org with esmtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24) +# (Exim 4.34) id 1DiMIp-0003l4-8g for bug-gawk@gnu.org; Tue, +# 14 Jun 2005 21:02:47 -0400 +# Received: from int-mx1.corp.redhat.com +# (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.12.11/8.12.11) +# with ESMTP id j5F11EGn027669 for ; Tue, +# 14 Jun 2005 21:01:14 -0400 +# Received: from lacrosse.corp.redhat.com +# (lacrosse.corp.redhat.com [172.16.52.154]) by int-mx1.corp.redhat.com +# (8.11.6/8.11.6) with ESMTP id j5F11Eu01536 for ; Tue, +# 14 Jun 2005 21:01:14 -0400 +# Received: from [192.168.7.71] (vpn50-10.rdu.redhat.com [172.16.50.10]) +# by lacrosse.corp.redhat.com (8.11.6/8.11.6) with ESMTP id j5F118s03225 for +# ; Tue, 14 Jun 2005 21:01:09 -0400 +# Date: Tue, 14 Jun 2005 17:57:55 -0700 +# From: Ulrich Drepper +# Subject: non-decimal variable parameters cause crashes +# To: bug-gawk@gnu.org +# Message-id: <42AF7D13.5010901@redhat.com> +# Organization: Red Hat, Inc. +# MIME-version: 1.0 +# Content-type: multipart/signed; micalg=pgp-sha1; +# protocol="application/pgp-signature"; +# boundary=------------enig9DEC74140126C224E7DE3E54 +# X-Accept-Language: en-us, en +# X-Enigmail-Version: 0.91.0.0 +# User-Agent: Mozilla Thunderbird 1.0.2-6 (X11/20050513) +# Original-recipient: rfc822;arobbins@012.net.il +# X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on skeeve.com +# X-Spam-Level: +# X-Spam-Status: No, hits=-4.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham +# version=2.63 +# Status: R +# +# This is an OpenPGP/MIME signed message (RFC 2440 and 3156) +# --------------enig9DEC74140126C224E7DE3E54 +# Content-Type: text/plain; charset=UTF-8 +# Content-Transfer-Encoding: quoted-printable +# +# Running +# +# gawk --non-decimal-data -v a=3D0x1 'BEGIN { print a+0 }' +# +# currently crashes. More details including a patch at +# +# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=3D160421 +# +# --=20 +# =E2=9E=A7 Ulrich Drepper =E2=9E=A7 Red Hat, Inc. =E2=9E=A7 444 Castro St = +# =E2=9E=A7 Mountain View, CA =E2=9D=96 +# +# +# --------------enig9DEC74140126C224E7DE3E54 +# Content-Type: application/pgp-signature; name="signature.asc" +# Content-Description: OpenPGP digital signature +# Content-Disposition: attachment; filename="signature.asc" +# +# -----BEGIN PGP SIGNATURE----- +# Version: GnuPG v1.4.1 (GNU/Linux) +# Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org +# +# iD8DBQFCr30T2ijCOnn/RHQRAp9LAKC+w/vhXW73ps1Pxcy+VGPrT1Su+ACguPnV +# VstZcFJgJ5GZ1YvDExsOZZI= +# =xmXh +# -----END PGP SIGNATURE----- +# +# --------------enig9DEC74140126C224E7DE3E54-- +# +BEGIN { print a+0 } diff -urN gawk-3.1.4/test/nondec2.ok gawk-3.1.5/test/nondec2.ok --- gawk-3.1.4/test/nondec2.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/nondec2.ok 2005-06-15 22:23:25.000000000 +0300 @@ -0,0 +1 @@ +1 diff -urN gawk-3.1.4/test/nulrsend.awk gawk-3.1.5/test/nulrsend.awk --- gawk-3.1.4/test/nulrsend.awk 2002-08-06 19:26:57.000000000 +0300 +++ gawk-3.1.5/test/nulrsend.awk 2005-05-11 18:28:18.000000000 +0300 @@ -103,7 +103,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # == # # -- diff -urN gawk-3.1.4/test/ofmtfidl.awk gawk-3.1.5/test/ofmtfidl.awk --- gawk-3.1.4/test/ofmtfidl.awk 2001-06-13 18:11:17.000000000 +0300 +++ gawk-3.1.5/test/ofmtfidl.awk 2005-05-11 18:28:18.000000000 +0300 @@ -79,7 +79,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # { OFMT="%."NR"f"; print NR } diff -urN gawk-3.1.4/test/reg/func2.out gawk-3.1.5/test/reg/func2.out --- gawk-3.1.4/test/reg/func2.out 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/reg/func2.out 2005-06-26 09:26:46.000000000 +0300 @@ -0,0 +1,2 @@ +gawk: reg/func2.awk:2: fatal: function `dummy' called with space between name and `(', +or used as a variable or an array diff -urN gawk-3.1.4/test/regtest.sh gawk-3.1.5/test/regtest.sh --- gawk-3.1.4/test/regtest.sh 2000-02-16 09:57:32.000000000 +0200 +++ gawk-3.1.5/test/regtest.sh 2005-07-19 05:55:45.000000000 +0300 @@ -9,7 +9,7 @@ do it=`basename $i .awk` $AWK -f $i reg/$it.out 2>&1 - if cmp -s reg/$it.out reg/$it.good + if diff reg/$it.out reg/$it.good then rm -f reg/$it.out else diff -urN gawk-3.1.4/test/rsstart1.awk gawk-3.1.5/test/rsstart1.awk --- gawk-3.1.4/test/rsstart1.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/rsstart1.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,32 @@ +# From arnold@f7.net Wed Dec 15 11:32:46 2004 +# Date: Tue, 14 Dec 2004 14:48:58 +0100 +# From: Stepan Kasal +# Subject: gawk bug with RS="^..." +# To: bug-gawk@gnu.org +# Message-id: <20041214134858.GA15490@matsrv.math.cas.cz> +# +# Hello, +# I've noticed a problem with "^" in RS in gawk. In most cases, it seems +# to match only the beginning of the file. But in fact it matches the +# beginning of gawk's internal buffer. +# +# Observe the following example: +# +# $ gawk 'BEGIN{for(i=1;i<=100;i++) print "Axxxxxx"}' >file +# $ gawk 'BEGIN{RS="^A"} END{print NR}' file +# 2 +# $ gawk 'BEGIN{RS="^Ax*\n"} END{print NR}' file +# 100 +# $ head file | gawk 'BEGIN{RS="^Ax*\n"} END{print NR}' +# 10 +# $ +# +# I think this calls for some clarification/fix. But I don't have any +# fixed opinion how the solution should look like. +# +# Have a nice day, +# Stepan Kasal +# +# PS: See also the discussion of the issue in the comp.lang.awk newsgroup. +BEGIN { RS = "^A" } +END { print NR } diff -urN gawk-3.1.4/test/rsstart1.in gawk-3.1.5/test/rsstart1.in --- gawk-3.1.4/test/rsstart1.in 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/rsstart1.in 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,10000 @@ +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx +Axxxxxx diff -urN gawk-3.1.4/test/rsstart1.ok gawk-3.1.5/test/rsstart1.ok --- gawk-3.1.4/test/rsstart1.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/rsstart1.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1 @@ +2 diff -urN gawk-3.1.4/test/rsstart2.awk gawk-3.1.5/test/rsstart2.awk --- gawk-3.1.4/test/rsstart2.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/rsstart2.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,2 @@ +BEGIN { RS = "^Ax*\n" } +END { print NR } diff -urN gawk-3.1.4/test/rsstart2.ok gawk-3.1.5/test/rsstart2.ok --- gawk-3.1.4/test/rsstart2.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/rsstart2.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1 @@ +2 diff -urN gawk-3.1.4/test/rsstart3.ok gawk-3.1.5/test/rsstart3.ok --- gawk-3.1.4/test/rsstart3.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/rsstart3.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1 @@ +2 diff -urN gawk-3.1.4/test/wjposer1.awk gawk-3.1.5/test/wjposer1.awk --- gawk-3.1.4/test/wjposer1.awk 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/wjposer1.awk 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,75 @@ +# From arnold@f7.net Sun Sep 5 12:30:53 2004 +# Date: Fri, 3 Sep 2004 00:54:32 -0400 (EDT) +# From: William J Poser +# To: arnold@skeeve.com +# Subject: gawk bug +# Message-ID: <20040903004347.W80049@lorax.ldc.upenn.edu> +# +# Here is a revised version of my previous message, modified to describe +# the accompanying files. +# +# IhSplit.awk should replicate every record with exactly one entry in the +# IH field, delete records lacking an IH field, and produce as many copies +# of records with two or more entries in the IH field as there are entries. +# In the latter case, the original IH field should be relabelled OIH and +# a new IH field be added at the beginning of the record. +# +# This has worked properly for many years, since at least 1997. It worked properly with gawk 3.0.5 +# and possibly later versions. Unfortunately I didn't keep track of exactly what version it +# broke on, but it was whatever came with Mandrake Linux 9.0. It continued to fail with version +# 3.1.2. However, the problem was eliminated with version 3.1.3 and remains +# eliminated in version 3.1.4. +# +# The problem was that an apparently random subset of records would loose some +# or all of their fields. Running the script on the same input always produces +# the same output with the same errors. +# +# The file Input is a subset of a real lexicon that produces errors using +# gawk 3.1.2. GoodOutput is the expected output. BadOutput is the erroneous +# output. A diff will show that there are actually two errors. One record +# has fields stripped as described above. Another is omitted in its entirety. +# +# +# Bill Poser, Linguistics, University of Pennsylvania +# http://www.ling.upenn.edu/~wjposer/ billposer@alum.mit.edu +# ---------------------------------------------------------------------------- +#For each record that contains multiple items in its inverse headword (IH) +#field, generate a set of new records each containing exactly one item +#in the inverse headword field, otherwise copies of the original. + +function CleanUp() #Clean up for next input record. +{ + for(i in rec) delete rec[i]; +} + +BEGIN { +RS = ""; +FS = "\n?%" +} +{ + +# First, create an associative array with the tags as indices. + for(i = 2; i <= NF; i++) { # The leading FS creates an initial empty field + split($i, f, ":"); + rec[f[1]]=substr($i,index($i,":")+1); + } + + if(!("IH" in rec)) next; + +# Parse out the inverse headwords + + items = split(rec["IH"],ihs,"/"); + +# Replace the old IH field. + + sub(/%IH:/,"%OIH:",$0); + +# Generate a new copy of the record for each inverse headword + + for(i = 1; i <= items; i++){ + entries+=1; + printf("%%IH:%s\n",ihs[i]); + printf("%s\n\n",$0); + } + CleanUp(); + } diff -urN gawk-3.1.4/test/wjposer1.in gawk-3.1.5/test/wjposer1.in --- gawk-3.1.4/test/wjposer1.in 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/wjposer1.in 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,1527 @@ +%P:nut'i +%G:exertion +%IH:exertion +%C:N +%SF:abstractions-misc +%S:JOPA/EDFR/VESE +%ES:000088 +%UID:002463 +%MD:1999/03/15 + +%P:ts'iyantsuk t'eooninzun +%G:information +%IH:information +%C:N +%SF:abstractions-misc +%S:JOPA/BRBI +%UID:000986 +%MD:1997/12/17 + +%P:k'et'uk +%G:interval +%IH:interval +%C:N +%SF:abstractions-misc +%S:MAGO +%ES:001077 +%UID:000873 +%MD:1997/12/11 + +%P:khunek +%G:language, word, message +%IH:language/word/message +%POSS:ghunek +%P1p:neghunek +%C:N +%SF:abstractions-misc +%S:MAGO/BRBI/JOPA/EDFR/VESE/JEKO +%UID:000928 +%MD:2001/02/10 + +%P:gal +%G:running +%IH:running +%C:N +%R:Dugal ndesda. He got hurt while running. +%SF:abstractions-misc +%S:JOPA +%ES:000535 +%UID:002462 +%MD:1999/03/15 + +%P:t'en +%G:work +%IH:work +%C:N +%SF:abstractions-misc +%S:VESE/PEJO +%ES:000672 +%UID:003028 +%POCKET:N +%MD:2000/10/04 + +%P:'ut'en +%G:work +%IH:work +%C:N +%SF:abstractions-misc +%P1p:neye'ut'en +%S:JOPA +%ES:001041 +%UID:004264 +%POCKET:Y +%MD:2001/03/15 + +%P:dulkw'ah +%G:Spotted Frog +%IH:Spotted Frog/Frog, Spotted +%SN:Rana pretiosa +%MN:Lives in water and has red markings on the belly. +%PICTURE:/home/poser/Research/Dakelh/Pictures/psfiles/SpottedFrog.ps +%CAPTION:{\qc Tsasdli} --- Spotted Frog +%PICPERMISSION:N +%PICCREDIT:Drawing of Spotted Frog from {\it The Amphibians of British Columbia\/}. +%C:N +%SF:amphibiansandreptiles +%S:EDFR +%UID:004111 +%POCKET:Y +%MD:2001/03/07 + +%P:chunlai +%G:salamander, lizard +%IH:lizard/salamander +%MN:The only species of salamander found in the region is the + Long-toed Salamander {\it Ambystoma macrodactylum\/}. No lizards + are found in the region. However, this term is applied to other + varieties of salamander and to lizards, such as the gekkos sold as + pets. +%FGREF:Corkran \& Thoms (1996;39) +%SN:Ambystoma macrodactylum +%C:N +%SF:amphibiansandreptiles +%S:LITM/JOPA/BRBI +%UID:000157 +%MD:1998/05/16 + +%P:tl'ughus +%G:snake +%IH:snake +%C:N +%MN:The only snake found in the region is the Common Garter Snake + {\it Thamnophis sirtalis\/}. However, the term is applied to all snakes. +%SN:Thamnophis sirtalis +%SF:amphibiansandreptiles +%S:LITM/JOPA/BRBI/MAGO +%UID:000250 +%MD:1998/12/07 + +%P:tsasdli +%G:Western Toad +%SN:Bufo boreas +%IH:Western Toad/Toad, Western +%MN:Lives on land. +%SF:amphibiansandreptiles +%C:N +%S:LITM/JOPA/BRBI/MAGO/STJA/EDFR +%UID:000059 +%MD:2001/03/07 + +%P:lhits'e +%G:bitch, female dog +%IH:bitch/dog, female +%C:N +%SF:animals-domestic +%S:JOPA/EDFR/VESE +%UID:002446 +%MD:1999/03/15 + +%P:musdus +%G:cow +%IH:cow +%C:N +%P2s:nmusdus +%ETYM:Loan from Cree {\qf mostos} ``buffalo''. +%LOANSOURCE:Cree +%SF:animals-domestic +%S:LITM/JOPA/BRBI/MAGO +%UID:000036 +%MD:1997/06/12 + +%P:lhi +%G:dog +%IH:dog +%C:N +%DUOPLURAL:lhike +%SF:animals-domestic +%POSS:lik +%P1s:slik +%P1p:nelik +%DUOPLURAL:lhike +%S:LITM/JOPA/BRBI/STJA/VESE/EDFR/JEKO +%UID:000270 +%MD:2001/02/15 + +%P:budzocho +%G:donkey, mule +%IH:donkey/mule +%SF:animals-domestic +%ETYM:``big ears''. +%C:N +%S:JOPA/BRBI +%UID:000376 +%MD:1997/11/14 + +%P:yeztli +%G:horse +%IH:horse +%SF:animals-domestic +%ETYM:A contraction of {\qc yezihlhi} ``elk dog''. +%C:N +%S:LITM/JOPA/BRBI/PEJO +%UID:000042 +%MD:2000/10/21 + +%P:lhike +%G:Irregular plural of {\qc lhi}, q.v. +%IH:dogs +%C:N +%SF:animals-domestic +%S:LITM/BRBI/JOPA/STJA +%UID:000293 +%MD:1999/01/26 + +%P:sbaiyaz +%G:lamb +%IH:lamb +%C:N +%SF:animals-domestic +%S:LITM +%UID:000254 +%MD:1997/06/16 + +%P:gugoos +%G:pig +%IH:pig +%C:N +%ETYM:Ultimately borrowed from French {\qf coche}, probably via Cree. +%LOANSOURCE:Cree +%SF:animals-domestic +%S:LITM/JOPA/BRBI +%UID:000133 +%MD:1997/06/16 + +%P:'ut'az +%G:bat +%IH:bat +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000390 +%MD:1997/11/14 + +%P:liyabdut'ai +%G:bat +%MN:The only kind of bat found in the region is the Little Brown Myotis. +%IH:bat +%SF:animals-land +%SN:Myotis lucifugus +%ETYM:Literally, ``devil bird'', a compound of {\qc liyab} ``devil'', a loan from + French {\qf le diable}, and {\qc dut'ai} ``bird''. +%LOANSOURCE:French +%C:N +%S:JOPA/BRBI +%UID:000215 +%MD:1997/06/16 + +%P:sus +%G:black bear +%IH:black bear +%C:N +%SF:animals-land +%SN:Ursus americanus +%S:LITM/JOPA/BRBI/STJA/EDFR/VESE/JEKO +%UID:000048 +%MD:1998/12/19 + +%P:musduscho dughai +%G:buffalo +%IH:buffalo +%SF:animals-land +%C:N +%ETYM:``big hairy cow''. +%S:JOPA/EDFR +%UID:003478 +%POCKET:Y +%MD:2000/11/04 + +%P:tl'ok'umusdus +%G:buffalo +%IH:buffalo +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000374 +%MD:2000/11/01 + +%P:jenyo +%G:bull moose +%IH:bull moose/moose, bull +%SF:animals-land +%C:N +%S:MAGO/JOPA/VESE/EDFR/JEKO +%UID:000474 +%MD:1999/05/11 + +%P:denyo +%G:bull moose +%IH:moose, bull +%SF:animals-land +%C:N +%S:LITM/JOPA +%UID:000348 +%MD:1997/06/18 + +%P:tsiyeyaz +%G:calf moose +%IH:calf moose/moose, calf +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000380 +%MD:1997/11/14 + +%P:duniyaz +%G:calf moose +%IH:calf moose/moose, calf +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI +%UID:000245 +%MD:1997/06/16 + +%P:whudzih +%G:caribou +%IH:caribou +%C:N +%SF:animals-land +%SN:Rangifer tarandus +%S:JOPA/BRBI/MAGO/EDFR/VESE/JEKO +%UID:000274 +%MD:1999/05/11 + +%P:boos +%G:cat +%IH:cat +%C:N +%SN:Felis domesticus +%ETYM:Loan from English {\qf puss}, possibly via Chinook Jargon. +%LOANSOURCE:English +%SF:animals-land +%S:LITM/JOPA/BRBI +%UID:000137 +%MD:1997/12/17 + +%P:ts'uwhuljos +%G:chipmunk +%IH:chipmunk +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI +%UID:000146 +%MD:1997/06/16 + +%P:booscho +%G:cougar +%IH:cougar +%SF:animals-land +%SN:Felis concolor +%C:N +%ETYM:Literally, ``big cat'', where {\qc boos} ``cat'' is a loan from English + {\qf puss}, possibly via Chinook Jargon. +%S:JOPA/BRBI +%UID:000050 +%MD:1997/11/14 + +%P:duni'at +%G:cow moose +%IH:cow moose/moose, cow +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000377 +%MD:1997/11/14 + +%P:tintulhi +%G:coyote +%IH:coyote +%C:N +%SF:animals-land +%SN:Canis latrans +%S:JOPA/BRBI +%R:LITM has chuntulhi. +%UID:000155 +%MD:1997/06/16 + +%P:yests'e +%G:deer +%IH:deer +%SF:animals-land +%C:N +%S:LITM/JOPA/BRBI/EDFR +%UID:000132 +%MD:1998/12/16 + +%P:dets'it +%G:dry cow moose +%IH:dry cow moose/moose, dry cow +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000378 +%MD:1997/11/14 + +%P:yezih +%G:elk +%IH:elk +%SF:animals-land +%C:N +%R:STJA doesn't use this. +%S:JOPA/BRBI +%UID:000382 +%MD:1997/11/14 + +%P:tsa'at +%G:female beaver +%IH:beaver, female +%C:N +%SF:animals-land +%S:STJA +%UID:001295 +%MD:1998/12/08 + +%P:chunihcho +%G:fisher +%IH:fisher +%ETYM:``big marten''. +%SF:animals-land +%SN:Martes pennanti +%C:N +%S:JOPA/BRBI/MAGO +%UID:000385 +%MD:2000/06/18 + +%P:ts'unalhbuz +%G:flying squirrel +%IH:flying squirrel +%SF:animals-land +%SN:Glaucomys sabrinus alpinus +%PICTURE:/home/poser/Research/Dakelh/Pictures/psfiles/FlyingSquirrel.ps +%CAPTION:{\qc ts'unulhbuz} --- Flying Squirrel +%PICPERMISSION:N +%PICCREDIT:Drawing of Flying Squirrel from {\it The Mammals of British Columbia\/}. +%C:N +%S:JOPA/BRBI +%UID:000389 +%MD:1997/11/14 + +%P:nanguz +%G:fox +%IH:fox +%C:N +%SF:animals-land +%S:MAGO +%UID:000139 +%MD:2001/02/26 + +%P:shas +%G:grizzly bear +%IH:grizzly bear +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI/VESE/EDFR/JEKO +%UID:000039 +%MD:1997/06/12 + +%P:shasyaz +%G:grizzly bear cub +%IH:grizzly bear cub/cub, grizzly bear +%C:N +%SF:animals-land +%S:STJA +%UID:002114 +%MD:1999/02/20 + +%P:shas'at +%G:grizzly bear sow +%IH:grizzly bear sow/sow, grizzly bear +%C:N +%SF:animals-land +%ETYM:``grizzly bear's wife''. +%S:STJA +%UID:002113 +%MD:1999/02/20 + +%P:-lik +%G:irregular possessed stem of {\qc lhi}, q.v. +%C:N +%SF:animals-land +%S:MAGO +%UID:000564 +%MD:1997/12/11 + +%P:wasi +%G:lynx +%IH:lynx +%C:N +%SF:animals-land +%SN:Felis lynx +%ETYM:Loan from Gitksan {\qf wish}. +%LOANSOURCE:Gitksan +%S:JOPA/BRBI/STJA/EDFR/VESE/JEKO/MAGO +%UID:000049 +%MD:2001/04/20 + +%P:k'ani +%G:woodchuck +%IH:woodchuck +%C:N +%SF:animals-land +%SN:Marmota monax +%S:JOPA/BRBI/PEJO +%R:Clarified with Josie and Peter 2001/05/28. +%UID:000391 +%POCKET:Y +%MD:2001/05/28 + +%P:dutni +%G:marmot +%IH:marmot +%SF:animals-land +%C:N +%SN:Marmota caligata +%R:Josie and Peter are not really familiar with marmots but have heard older + people talk about them. +%S:JOPA/PEJO +%UID:000143 +%MD:1998/02/10 + +%P:chunih +%G:marten +%IH:marten +%SF:animals-land +%SN:Martes americana +%C:N +%S:JOPA/BRBI/VESE/EDFR/JEKO/MAGO +%UID:000016 +%MD:2001/04/20 + +%P:telhjoos +%G:mink +%IH:mink +%C:N +%SF:animals-land +%SN:Mustela vison +%S:LITM/JOPA/BRBI +%UID:000167 +%MD:1997/06/16 + +%P:duni +%G:moose +%IH:moose +%C:N +%SF:animals-land +%SN:Alces alces andersoni +%S:LITM-EDFR/JOPA/BRBI +%UID:000346 +%MD:1997/06/18 + +%P:dats'ooz +%G:mouse +%IH:mouse +%SF:animals-land +%C:N +%S:LITM/JOPA/MAGO/VESE/JEKO +%UID:000156 +%MD:2001/01/22 + +%P:tsek'et +%G:muskrat +%IH:muskrat +%C:N +%SF:animals-land +%SN:Ondatra zibethicus +%S:JOPA/BRBI/STJA/MAGO +%UID:000335 +%MD:1998/12/08 + +%P:chanjo +%G:newly sexually mature cow moose +%IH:moose, newly sexually mature cow +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000379 +%MD:1997/11/14 + +%P:looncho +%G:pack rat +%IH:pack rat +%C:N +%SF:animals-land +%S:VESE/JEKO/MAGO +%UID:000149 +%MD:1999/05/10 + +%P:dlooncho +%G:packrat +%IH:packrat +%C:N +%SF:animals-land +%S:JOPA +%UID:002701 +%MD:1999/05/11 + +%P:duneza +%G:porcupine +%IH:porcupine +%SF:animals-land +%C:N +%S:JOPA/BRBI/MAGO +%UID:000388 +%MD:2001/03/06 + +%P:ts'it +%G:porcupine +%IH:porcupine +%SF:animals-land +%SN:Erethizon dorsatum +%C:N +%ETYM:Perhaps derived from the interjection {\qc ts'it} ``don't touch it!''. +%S:JOPA/BRBI/MAGO/BEMC/STJA +%UID:000387 +%MD:1998/12/08 + +%P:lhiyaz +%G:puppy +%IH:puppy +%C:N +%SF:animals-land +%DUOPLURAL:lhiyazke +%DUOPLURAL:lhikeyaz +%R:Josie prefers {\qc lhikeyaz}. +%S:LITM/BRBI/JOPA/EDFR/MAGO-JEKO +%UID:000182 +%MD:2001/05/26 + +%P:nats'ildelh +%G:Red Squirrel +%IH:squirrel/Red Squirrel +%SN:Tamiasciurus hudsonicus colum. +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI/STJA +%UID:000034 +%MD:1999/02/17 + +%P:goh +%G:rabbit +%IH:rabbit +%C:N +%SF:animals-land +%S:LITM/JOPA/VESE/EDFR/JEKO +%UID:000023 +%MD:1999/05/11 + +%P:ooch'ainischoot +%G:recently weaned calf moose +%IH:moose, recently weaned calf +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000381 +%MD:1997/11/14 + +%P:sbai +%G:sheep +%IH:sheep +%C:N +%SF:animals-land +%S:MAGO +%UID:001131 +%MD:1998/02/10 + +%P:'usbai +%G:sheep +%IH:sheep +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000375 +%MD:1997/11/14 + +%P:'ulhguk +%G:shrew +%IH:shrew +%SF:animals-land +%C:N +%S:MAGO/VESE/JEKO +%UID:000526 +%MD:2001/01/22 + +%P:hoonliz +%G:skunk +%IH:skunk +%C:N +%P2s:unhoonliz +%SF:animals-land +%S:LITM/JOPA/BRBI/MAGO/VESE/EDFR/JEKO +%UID:000052 +%MD:1997/06/12 + +%P:nohbai +%G:weasel +%IH:weasel +%C:N +%SF:animals-land +%S:JOPA/BRBI/MAGO +%UID:000141 +%MD:1997/06/16 + +%P:yus +%G:wolf +%IH:wolf +%C:N +%SF:animals-land +%SN:Canis lupus +%S:LITM/JOPA/BRBI +%UID:000051 +%MD:1997/06/12 + +%P:noostel +%G:wolverine +%IH:wolverine +%C:N +%SF:animals-land +%SN:Gulo gulo +%S:JOPA/BRBI/MAGO/VESE/EDFR/JEKO +%UID:000140 +%MD:2001/04/20 + +%P:tsatsul +%G:young beaver +%IH:beaver, young +%SF:animals-land +%C:N +%S:JOPA/BRBI/STJA +%UID:000384 +%MD:1998/12/08 + +%P:lht'at +%G:beaver dam +%IH:beaver dam/dam, beaver +%C:N +%SF:animals-misc +%S:STJA +%UID:001287 +%MD:1998/12/08 + +%P:'ulh +%G:beaver dam +%IH:beaver dam/dam, beaver +%C:N +%SF:animals-misc +%S:STJA +%UID:001288 +%MD:1998/12/08 + +%P:tsaken +%G:beaver lodge +%IH:beaver lodge +%C:N +%SF:animals-misc +%S:JOPA/BRBI/STJA +%UID:000405 +%MD:1998/12/08 + +%P:tunyohtsati +%G:beaver path under the ice +%IH:beaver path under the ice +%C:N +%SF:animals-misc +%S:JOPA/EDFR +%UID:003769 +%POCKET:Y +%MD:2001/02/13 + +%P:sus'an +%G:black bear den +%IH:black bear den +%C:N +%SF:animals-misc +%S:LITM/STJA +%UID:000131 +%MD:1998/12/08 + +%P:shask'oh +%G:grizzly bear tracks +%IH:tracks, grizzly bear +%C:N +%SF:animals-misc +%S:MAGO +%UID:001132 +%MD:1998/02/10 + +%P:hoolht'ukw +%G:leech +%IH:leech +%SF:animals-misc +%C:N +%S:JOPA/PEJO/EDFR +%UID:003410 +%POCKET:Y +%MD:2000/11/01 + +%P:hoot'ub +%G:leech +%IH:leech +%SF:bugs +%C:N +%S:JOPA/BRBI/MAGO +%UID:000370 +%MD:2000/11/01 + +%P:dunik'oh +%G:moose tracks +%IH:moose tracks +%C:N +%SF:animals-misc +%S:PEJO/JOPA +%ES:000491 +%UID:003121 +%POCKET:Y +%MD:2000/09/28 + +%P:gohk'oh +%G:rabbit tracks +%IH:tracks, rabbit +%C:N +%SF:animals-misc +%S:LITM +%UID:000073 +%MD:1997/06/12 + +%P:tsa +%G:beaver +%IH:beaver +%C:N +%SN:Castor canadensis +%UID:000044 +%SF:animals-water +%S:JOPA/BRBI/STJA/EDFR/VESE/JEKO/MAGO +%MD:2001/04/18 + +%P:tsayaz +%G:beaver kit +%IH:kit, beaver/beaver, baby +%SF:animals-water +%C:N +%S:STJA +%UID:001294 +%MD:2000/06/18 + +%P:tsati +%G:big beaver, old beaver +%IH:beaver, big/beaver, old +%C:N +%SF:animals-water +%S:LITM/JOPA/BRBI/STJA +%UID:000206 +%MD:1998/12/08 + +%P:tsis +%G:otter +%IH:otter +%SF:animals-water +%SN:Lutra canadensis +%C:N +%S:JOPA/BRBI +%UID:000386 +%MD:1997/11/14 + +%P:datsan +%G:American Crow +%C:N +%SF:bird-gen +%SN:Corvus brachyrhynchos +%IH:crow/American Crow +%S:LITM/PEJO +%UID:000158 +%MD:2000/10/21 + +%P:sewh +%G:American Robin +%IH:Robin, American +%SN:Turdus migratorius +%C:N +%SF:bird-gen +%S:LITM/JOPA/BRBI/PEJO +%UID:000181 +%MD:2000/10/21 + +%P:tsebalyan +%G:Bald Eagle +%IH:Bald Eagle +%C:N +%SF:bird-gen +%SN:Haliaeetus leucocephalus +%S:LITM/JOPA/BRBI +%UID:000150 +%MD:1997/06/16 + +%P:dut'ai +%G:bird, duck +%IH:bird/duck +%C:N +%SF:bird-gen +%S:LITM/JOPA/BRBI/MAGO/STJA/PEJO +%UID:000081 +%MD:2000/09/28 + +%P:delh +%G:crane +%IH:crane +%C:N +%SF:bird-gen +%S:LITM +%UID:000255 +%MD:1997/06/16 + +%P:khoh +%G:goose +%IH:goose +%C:N +%P1s:skhoh +%P2s:nkhoh +%P1p:nekhoh +%POSS:khoh +%SF:bird-gen +%S:JOPA/BRBI/MAGO/VESE/EDFR/JEKO +%UID:000031 +%MD:2001/02/15 + +%P:ts'unalhduz +%G:hummingbird +%IH:hummingbird +%C:N +%SF:bird-gen +%S:LITM/BRBI/JOPA +%UID:000242 +%MD:1997/06/16 + +%P:gagiyaz +%G:little bird +%IH:bird, little +%C:N +%QCHECK:Any little bird? +%SF:bird-gen +%S:PEJO +%UID:003115 +%POCKET:Y +%MD:2000/09/28 + +%P:dut'aiyaz +%G:little bird +%IH:bird, little +%C:N +%SF:bird-gen +%S:STJA/JOPA/EDFR/VESE/PEJO +%UID:001818 +%MD:2000/09/28 + +%P:dadzi +%G:loon +%IH:loon +%SF:bird-gen +%SN:Gavia immer +%C:N +%S:LITM/JOPA/BRBI +%UID:000020 +%MD:1997/06/12 + +%P:t'ugicho +%G:Mallard Duck +%IH:Mallard Duck +%C:N +%SN:Anas platyrhynchos +%SF:bird-gen +%S:LITM/JOPA/BRBI/MAGO/VESE/EDFR/JEKO +%UID:000041 +%MD:1999/05/11 + +%P:musdzoon +%G:owl +%IH:owl +%C:N +%SF:bird-gen +%S:LITM/BRBI/JOPA/MAGO +%UID:000135 +%MD:1997/12/11 + +%P:ts'olh +%G:Red-necked Grebe +%MN:A variety of duck locally known as the Helldiver. +%IH:Red-Necked Grebe/Helldiver/Grebe, Red-Necked +%SN:Podiceps grisegena +%SF:bird-gen +%C:N +%S:BRBI/JOPA +%UID:000263 +%MD:2001/03/08 + +%P:'utsut +%G:Ruffed grouse +%IH:Ruffed grouse +%C:N +%SF:bird-gen +%S:LITM +%UID:000218 +%MD:1997/06/16 + +%P:nat'oh +%G:Spruce Grouse, Fool Hen +%IH:Spruce Grouse/Grouse, Spruce/Fool Hen +%SF:bird-gen +%SN:Dendragapus canadensis +%C:N +%S:MAGO/LITM +%UID:000539 +%MD:1997/12/04 + +%P:tehgwuzeh +%G:Steller's Jay, commonly known locally as ``bluejay''. +%IH:Steller's Jay/jay, Steller's/Bluejay (Steller's Jay) +%SF:bird-gen +%SN:Cyanocitta stelleri +%C:N +%S:JOPA/BRBI +%UID:000356 +%MD:1997/11/14 + +%P:wedlew +%G:sandpiper +%IH:sandpiper +%C:N +%SN:Eremophila alpestris et sim. +%SF:bird-gen +%S:LITM +%UID:000237 +%MD:2002/07/19 + +%P:besk'i +%G:seagull +%IH:seagull +%C:N +%SN:Larus species +%SF:bird-gen +%S:LITM +%UID:000136 +%MD:2002/07/19 + +%P:ts'incho +%G:swan +%IH:swan +%C:N +%SF:bird-gen +%S:LITM +%UID:000222 +%MD:1997/06/16 + +%P:'uschas +%G:Tree Swallow +%IH:Tree Swallow +%SF:bird-gen +%SN:Tachycineta bicolor +%C:N +%S:MAGO +%UID:000535 +%MD:1997/11/22 + +%P:gwuzeh +%G:Whiskey Jack, Gray Jay, Canadian Jay +%IH:Whiskey Jack/Jay, Gray/Jay, Canadian +%C:N +%SN:Perisoreus canadensis +%SF:bird-gen +%S:LITM/JOPA/BRBI/MAGO +%UID:000148 +%MD:1997/11/22 + +%P:chundulkw'uz +%G:woodpecker +%IH:woodpecker +%C:N +%SF:bird-gen +%S:JOPA/BRBI/STJA +%UID:000138 +%MD:1999/03/31 + +%P:-t'o +%G:nest +%IH:nest +%C:N +%Pind:'ut'o +%P3s:but'o +%Pref:dut'o +%SF:bird-misc/bugs +%S:STJA/PEJO/JOPA/BRBI/EDFR +%ES:001353 +%UID:000226 +%MD:2001/03/07 + +%P:-nak'uz +%G:a single eye +%IH:eye, a single +%C:N +%SF:body-ext +%S:JOPA/EDFR +%ES:000457 +%UID:003770 +%POCKET:Y +%MD:2001/02/13 + +%P:-kechunoh +%G:ankle +%IH:ankle +%P1s:skechunoh +%P2s:nkechunoh +%C:N +%S:MAGO/STJA +%SF:body-ext +%UID:000865 +%MD:1999/03/03 + +%P:-de +%G:antler, horn +%IH:antler/horn +%C:N +%SF:body-ext +%P3s:bude +%S:STJA +%UID:002266 +%MD:1999/03/02 + +%P:-de_zu_s +%G:antler velvet +%IH:velvet, antler +%C:N +%SF:body-ext +%P3s:bude_zu_s +%S:STJA +%UID:002267 +%MD:1999/03/02 + +%P:-tsul +%G:anus, asshole +%IH:anus/asshole +%C:N +%P1s:stsul +%SF:body-ext +%S:STJA +%UID:002171 +%MD:1999/02/23 + +%P:-gan +%G:arm +%IH:arm +%P1s:sgan +%P2s:ngan +%Pref:dugan +%C:N +%S:LITM/MAGO/STJA/JOPA/VESE/EDFR/JEKO +%SF:body-ext +%UID:000863 +%MD:1999/02/22 + +%P:-chak'ests'oh +%G:armpit +%IH:armpit +%P1s:schak'ests'oh +%C:N +%S:MAGO +%UID:000859 +%SF:body-ext +%MD:1997/12/11 + +%P:-t'ak +%G:back (of body) +%IH:back (of body) +%P1s:st'ak +%P3s:but'ak +%C:N +%S:MAGO/EDFR/VESE/JEKO +%SF:body-ext +%UID:000899 +%MD:1997/12/11 + +%P:-lat'ak +%G:back of hand +%IH:back of hand +%P1s:slat'ak +%C:N +%S:MAGO +%SF:body-ext +%UID:000871 +%MD:1997/12/11 + +%P:tsake +%G:beaver paws +%IH:beaver paws +%C:N +%SF:body-ext +%S:LITM-EDFR +%UID:000329 +%MD:1997/06/18 + +%P:tsache +%G:beaver tail +%IH:beaver tail +%C:N +%SF:body-ext +%S:LITM +%UID:000207 +%MD:1997/06/16 + +%P:-but +%G:belly +%IH:belly +%P1s:sbut +%C:N +%S:MAGO +%SF:body-ext +%UID:000937 +%MD:1997/12/11 + +%P:-ts'oo +%G:breast +%IH:breast +%P1s:sts'oo +%C:N +%S:MAGO +%UID:000855 +%SF:body-ext +%MD:1997/12/11 + +%P:-tl'a +%G:bum, buttocks +%IH:bum/buttocks +%P1s:stl'a +%C:N +%S:MAGO +%SF:body-ext +%UID:000936 +%MD:1997/12/11 + +%P:-kechunch'ooz +%G:calf of leg +%IH:calf of leg +%C:N +%SF:body-ext +%S:JOPA/EDFR +%UID:004458 +%POCKET:Y +%MD:2001/04/20 + +%P:-nembus +%G:cheek +%IH:cheek +%P1s:snimbus +%C:N +%S:MAGO/JOPA/BRBI +%SF:body-ext +%UID:000889 +%MD:1997/12/11 + +%P:-yoh +%G:chest +%IH:chest +%C:N +%SF:body-ext +%S:JOPA/EDFR +%ES:000660 +%UID:003777 +%POCKET:Y +%MD:2001/02/13 + +%P:-yeda' +%G:chin +%IH:chin +%P1s:syeda' +%C:N +%S:MAGO +%SF:body-ext +%UID:000882 +%MD:1997/12/11 + +%P:-tsidakwhudutle +%G:cranial fontanelle, baby's soft spot +%IH:cranial fontanelle/baby's soft spot +%C:N +%P3s:butsidakwhudutle +%S:MAGO +%SF:body-ext +%UID:000898 +%MD:1997/12/11 + +%P:-dzo +%G:ear +%IH:ear +%MN:This refers to the ear considered as a whole, especially the exterior. + When the canal in particular is referred to, one uses {\qc -dzek}, q.v. +%C:N +%P1s:sdzo +%S:MAGO +%SF:body-ext +%UID:000879 +%MD:1997/12/11 + +%P:-dzobal +%G:earlobe +%IH:earlobe +%C:N +%P1s:sdzobal +%SF:body-ext +%S:BRBI/MAGO +%UID:000641 +%MD:1997/12/17 + +%P:-nints'uzti +%G:elbow +%IH:elbow +%P1s:snints'uzti +%C:N +%S:MAGO +%SF:body-ext +%UID:000916 +%MD:1997/12/11 + +%P:-na +%G:eye +%IH:eye +%P1s:sna +%P3s:buna +%C:N +%S:MAGO/JOPA/EDFR +%SF:body-ext +%UID:000891 +%MD:1998/12/18 + +%P:-nak'et +%G:eye socket +%IH:eye socket +%P1s:snak'et +%C:N +%S:MAGO +%SF:body-ext +%UID:000892 +%MD:1997/12/11 + +%P:-nach'usdooz +%G:eyebrow +%IH:eyebrow +%P1s:snach'usdooz +%C:N +%S:MAGO +%SF:body-ext +%UID:000896 +%MD:1997/12/11 + +%P:-nalusgha +%G:eyelash +%IH:eyelash +%P1s:snalusgha +%C:N +%S:MAGO +%SF:body-ext +%UID:000895 +%MD:1997/12/11 + +%P:-nalus +%G:eyelid +%IH:eyelid +%P1s:snalus +%C:N +%S:MAGO +%SF:body-ext +%UID:000894 +%MD:1997/12/11 + +%P:-nen +%G:face +%IH:face +%P1s:snen +%P2s:nyunen +%P3s:bunen +%C:N +%S:MAGO/PEJO/STJA/JOPA/VESE/EDFR +%SF:body-ext +%ES:000369 +%UID:000890 +%MD:2001/04/20 + +%P:ts'uz +%G:feather, down +%IH:feather/down +%C:N +%SF:body-ext +%S:LITM/STJA/PEJO +%UID:000271 +%MD:2000/10/16 + +%P:dut'aits'uz +%G:feathers, down +%IH:feathers/down +%C:N +%SF:body-ext +%S:STJA +%UID:002647 +%MD:2001/02/27 + +%P:-lasge +%G:finger other than thumb or pinkie +%IH:finger other than thumb or pinkie +%P1s:slasge +%C:N +%S:MAGO/STJA/JOPA/PEJO/EDFR +%SF:body-ext +%UID:000869 +%MD:2000/11/01 + +%P:-lagui +%G:fingernails, claws of forepaws +%IH:fingernails/claws of forepaws +%P1s:slagui +%C:N +%S:MAGO +%SF:body-ext +%UID:000875 +%MD:1997/12/11 + +%P:-ke +%G:foot +%IH:foot +%C:N +%P1s:ske +%Pref:duke +%S:MAGO/STJA/JOPA/VESE/EDFR/JEKO +%UID:000851 +%SF:body-ext +%MD:1999/05/11 + +%P:-gha +%G:hair +%MN:This refers to hair in general and where no more specific term exists, as on the + arms and chest. It is not used to refer to the hair of the head, for which the + more specific term {\qc -tsigha} is always used. +%IH:hair +%C:N +%S:MAGO +%SF:body-ext +%UID:000888 +%MD:1997/12/11 + +%P:-tsigha +%G:hair of the head +%IH:hair of the head +%P1s:stsigha +%P2s:ntsigha +%P3s:butsigha +%C:N +%S:MAGO/LITM/PEJO +%SF:body-ext +%UID:000887 +%MD:2000/10/20 + +%P:-la +%G:hand +%IH:hand +%P1s:sla +%P2s:nla +%C:N +%S:MAGO/STJA +%SF:body-ext +%POCKET:Y +%UID:000866 +%MD:1999/02/17 + +%P:-tsi +%G:head +%IH:head +%Pref:dutsi +%C:N +%SF:body-ext +%S:STJA +%UID:002965 +%POCKET:Y +%MD:1999/06/24 + +%P:-kelatsul +%G:heel +%IH:heel +%P1s:skelatsul +%C:N +%S:MAGO +%SF:body-ext +%UID:000917 +%MD:1997/12/11 + +%P:-k'ui +%G:hip +%IH:hip +%P1s:sk'ui +%C:N +%S:MAGO/JOPA +%SF:body-ext +%UID:000923 +%MD:2001/03/15 + +%P:-gwut +%G:knee +%IH:knee +%P1s:sgwut +%C:N +%S:MAGO +%SF:body-ext +%UID:000933 +%MD:1997/12/11 + +%P:-gwutlasi'ai +%G:kneecap +%IH:kneecap +%P1s:sgwutlasi'ai +%R:has something to do with floating at tip of knee +%C:N +%S:MAGO +%SF:body-ext +%UID:000925 +%MD:1997/12/11 + +%P:-langwut +%G:knuckles at boundary between hand and fingers +%IH:knuckles at boundary between hand and fingers +%P1s:slangwut +%SF:body-ext +%C:N +%S:JOPA/BRBI +%UID:000967 +%MD:1997/12/17 + +%P:-kechun +%G:leg +%IH:leg +%P1s:skechun +%C:N +%S:MAGO +%UID:000852 +%SF:body-ext +%MD:1997/12/11 diff -urN gawk-3.1.4/test/wjposer1.ok gawk-3.1.5/test/wjposer1.ok --- gawk-3.1.4/test/wjposer1.ok 1970-01-01 02:00:00.000000000 +0200 +++ gawk-3.1.5/test/wjposer1.ok 2005-05-11 18:28:19.000000000 +0300 @@ -0,0 +1,2068 @@ +%IH:exertion +%P:nut'i +%G:exertion +%OIH:exertion +%C:N +%SF:abstractions-misc +%S:JOPA/EDFR/VESE +%ES:000088 +%UID:002463 +%MD:1999/03/15 + +%IH:information +%P:ts'iyantsuk t'eooninzun +%G:information +%OIH:information +%C:N +%SF:abstractions-misc +%S:JOPA/BRBI +%UID:000986 +%MD:1997/12/17 + +%IH:interval +%P:k'et'uk +%G:interval +%OIH:interval +%C:N +%SF:abstractions-misc +%S:MAGO +%ES:001077 +%UID:000873 +%MD:1997/12/11 + +%IH:language +%P:khunek +%G:language, word, message +%OIH:language/word/message +%POSS:ghunek +%P1p:neghunek +%C:N +%SF:abstractions-misc +%S:MAGO/BRBI/JOPA/EDFR/VESE/JEKO +%UID:000928 +%MD:2001/02/10 + +%IH:word +%P:khunek +%G:language, word, message +%OIH:language/word/message +%POSS:ghunek +%P1p:neghunek +%C:N +%SF:abstractions-misc +%S:MAGO/BRBI/JOPA/EDFR/VESE/JEKO +%UID:000928 +%MD:2001/02/10 + +%IH:message +%P:khunek +%G:language, word, message +%OIH:language/word/message +%POSS:ghunek +%P1p:neghunek +%C:N +%SF:abstractions-misc +%S:MAGO/BRBI/JOPA/EDFR/VESE/JEKO +%UID:000928 +%MD:2001/02/10 + +%IH:running +%P:gal +%G:running +%OIH:running +%C:N +%R:Dugal ndesda. He got hurt while running. +%SF:abstractions-misc +%S:JOPA +%ES:000535 +%UID:002462 +%MD:1999/03/15 + +%IH:work +%P:t'en +%G:work +%OIH:work +%C:N +%SF:abstractions-misc +%S:VESE/PEJO +%ES:000672 +%UID:003028 +%POCKET:N +%MD:2000/10/04 + +%IH:work +%P:'ut'en +%G:work +%OIH:work +%C:N +%SF:abstractions-misc +%P1p:neye'ut'en +%S:JOPA +%ES:001041 +%UID:004264 +%POCKET:Y +%MD:2001/03/15 + +%IH:Spotted Frog +%P:dulkw'ah +%G:Spotted Frog +%OIH:Spotted Frog/Frog, Spotted +%SN:Rana pretiosa +%MN:Lives in water and has red markings on the belly. +%PICTURE:/home/poser/Research/Dakelh/Pictures/psfiles/SpottedFrog.ps +%CAPTION:{\qc Tsasdli} --- Spotted Frog +%PICPERMISSION:N +%PICCREDIT:Drawing of Spotted Frog from {\it The Amphibians of British Columbia\/}. +%C:N +%SF:amphibiansandreptiles +%S:EDFR +%UID:004111 +%POCKET:Y +%MD:2001/03/07 + +%IH:Frog, Spotted +%P:dulkw'ah +%G:Spotted Frog +%OIH:Spotted Frog/Frog, Spotted +%SN:Rana pretiosa +%MN:Lives in water and has red markings on the belly. +%PICTURE:/home/poser/Research/Dakelh/Pictures/psfiles/SpottedFrog.ps +%CAPTION:{\qc Tsasdli} --- Spotted Frog +%PICPERMISSION:N +%PICCREDIT:Drawing of Spotted Frog from {\it The Amphibians of British Columbia\/}. +%C:N +%SF:amphibiansandreptiles +%S:EDFR +%UID:004111 +%POCKET:Y +%MD:2001/03/07 + +%IH:lizard +%P:chunlai +%G:salamander, lizard +%OIH:lizard/salamander +%MN:The only species of salamander found in the region is the + Long-toed Salamander {\it Ambystoma macrodactylum\/}. No lizards + are found in the region. However, this term is applied to other + varieties of salamander and to lizards, such as the gekkos sold as + pets. +%FGREF:Corkran \& Thoms (1996;39) +%SN:Ambystoma macrodactylum +%C:N +%SF:amphibiansandreptiles +%S:LITM/JOPA/BRBI +%UID:000157 +%MD:1998/05/16 + +%IH:salamander +%P:chunlai +%G:salamander, lizard +%OIH:lizard/salamander +%MN:The only species of salamander found in the region is the + Long-toed Salamander {\it Ambystoma macrodactylum\/}. No lizards + are found in the region. However, this term is applied to other + varieties of salamander and to lizards, such as the gekkos sold as + pets. +%FGREF:Corkran \& Thoms (1996;39) +%SN:Ambystoma macrodactylum +%C:N +%SF:amphibiansandreptiles +%S:LITM/JOPA/BRBI +%UID:000157 +%MD:1998/05/16 + +%IH:snake +%P:tl'ughus +%G:snake +%OIH:snake +%C:N +%MN:The only snake found in the region is the Common Garter Snake + {\it Thamnophis sirtalis\/}. However, the term is applied to all snakes. +%SN:Thamnophis sirtalis +%SF:amphibiansandreptiles +%S:LITM/JOPA/BRBI/MAGO +%UID:000250 +%MD:1998/12/07 + +%IH:Western Toad +%P:tsasdli +%G:Western Toad +%SN:Bufo boreas +%OIH:Western Toad/Toad, Western +%MN:Lives on land. +%SF:amphibiansandreptiles +%C:N +%S:LITM/JOPA/BRBI/MAGO/STJA/EDFR +%UID:000059 +%MD:2001/03/07 + +%IH:Toad, Western +%P:tsasdli +%G:Western Toad +%SN:Bufo boreas +%OIH:Western Toad/Toad, Western +%MN:Lives on land. +%SF:amphibiansandreptiles +%C:N +%S:LITM/JOPA/BRBI/MAGO/STJA/EDFR +%UID:000059 +%MD:2001/03/07 + +%IH:bitch +%P:lhits'e +%G:bitch, female dog +%OIH:bitch/dog, female +%C:N +%SF:animals-domestic +%S:JOPA/EDFR/VESE +%UID:002446 +%MD:1999/03/15 + +%IH:dog, female +%P:lhits'e +%G:bitch, female dog +%OIH:bitch/dog, female +%C:N +%SF:animals-domestic +%S:JOPA/EDFR/VESE +%UID:002446 +%MD:1999/03/15 + +%IH:cow +%P:musdus +%G:cow +%OIH:cow +%C:N +%P2s:nmusdus +%ETYM:Loan from Cree {\qf mostos} ``buffalo''. +%LOANSOURCE:Cree +%SF:animals-domestic +%S:LITM/JOPA/BRBI/MAGO +%UID:000036 +%MD:1997/06/12 + +%IH:dog +%P:lhi +%G:dog +%OIH:dog +%C:N +%DUOPLURAL:lhike +%SF:animals-domestic +%POSS:lik +%P1s:slik +%P1p:nelik +%DUOPLURAL:lhike +%S:LITM/JOPA/BRBI/STJA/VESE/EDFR/JEKO +%UID:000270 +%MD:2001/02/15 + +%IH:donkey +%P:budzocho +%G:donkey, mule +%OIH:donkey/mule +%SF:animals-domestic +%ETYM:``big ears''. +%C:N +%S:JOPA/BRBI +%UID:000376 +%MD:1997/11/14 + +%IH:mule +%P:budzocho +%G:donkey, mule +%OIH:donkey/mule +%SF:animals-domestic +%ETYM:``big ears''. +%C:N +%S:JOPA/BRBI +%UID:000376 +%MD:1997/11/14 + +%IH:horse +%P:yeztli +%G:horse +%OIH:horse +%SF:animals-domestic +%ETYM:A contraction of {\qc yezihlhi} ``elk dog''. +%C:N +%S:LITM/JOPA/BRBI/PEJO +%UID:000042 +%MD:2000/10/21 + +%IH:dogs +%P:lhike +%G:Irregular plural of {\qc lhi}, q.v. +%OIH:dogs +%C:N +%SF:animals-domestic +%S:LITM/BRBI/JOPA/STJA +%UID:000293 +%MD:1999/01/26 + +%IH:lamb +%P:sbaiyaz +%G:lamb +%OIH:lamb +%C:N +%SF:animals-domestic +%S:LITM +%UID:000254 +%MD:1997/06/16 + +%IH:pig +%P:gugoos +%G:pig +%OIH:pig +%C:N +%ETYM:Ultimately borrowed from French {\qf coche}, probably via Cree. +%LOANSOURCE:Cree +%SF:animals-domestic +%S:LITM/JOPA/BRBI +%UID:000133 +%MD:1997/06/16 + +%IH:bat +%P:'ut'az +%G:bat +%OIH:bat +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000390 +%MD:1997/11/14 + +%IH:bat +%P:liyabdut'ai +%G:bat +%MN:The only kind of bat found in the region is the Little Brown Myotis. +%OIH:bat +%SF:animals-land +%SN:Myotis lucifugus +%ETYM:Literally, ``devil bird'', a compound of {\qc liyab} ``devil'', a loan from + French {\qf le diable}, and {\qc dut'ai} ``bird''. +%LOANSOURCE:French +%C:N +%S:JOPA/BRBI +%UID:000215 +%MD:1997/06/16 + +%IH:black bear +%P:sus +%G:black bear +%OIH:black bear +%C:N +%SF:animals-land +%SN:Ursus americanus +%S:LITM/JOPA/BRBI/STJA/EDFR/VESE/JEKO +%UID:000048 +%MD:1998/12/19 + +%IH:buffalo +%P:musduscho dughai +%G:buffalo +%OIH:buffalo +%SF:animals-land +%C:N +%ETYM:``big hairy cow''. +%S:JOPA/EDFR +%UID:003478 +%POCKET:Y +%MD:2000/11/04 + +%IH:buffalo +%P:tl'ok'umusdus +%G:buffalo +%OIH:buffalo +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000374 +%MD:2000/11/01 + +%IH:bull moose +%P:jenyo +%G:bull moose +%OIH:bull moose/moose, bull +%SF:animals-land +%C:N +%S:MAGO/JOPA/VESE/EDFR/JEKO +%UID:000474 +%MD:1999/05/11 + +%IH:moose, bull +%P:jenyo +%G:bull moose +%OIH:bull moose/moose, bull +%SF:animals-land +%C:N +%S:MAGO/JOPA/VESE/EDFR/JEKO +%UID:000474 +%MD:1999/05/11 + +%IH:moose, bull +%P:denyo +%G:bull moose +%OIH:moose, bull +%SF:animals-land +%C:N +%S:LITM/JOPA +%UID:000348 +%MD:1997/06/18 + +%IH:calf moose +%P:tsiyeyaz +%G:calf moose +%OIH:calf moose/moose, calf +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000380 +%MD:1997/11/14 + +%IH:moose, calf +%P:tsiyeyaz +%G:calf moose +%OIH:calf moose/moose, calf +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000380 +%MD:1997/11/14 + +%IH:calf moose +%P:duniyaz +%G:calf moose +%OIH:calf moose/moose, calf +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI +%UID:000245 +%MD:1997/06/16 + +%IH:moose, calf +%P:duniyaz +%G:calf moose +%OIH:calf moose/moose, calf +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI +%UID:000245 +%MD:1997/06/16 + +%IH:caribou +%P:whudzih +%G:caribou +%OIH:caribou +%C:N +%SF:animals-land +%SN:Rangifer tarandus +%S:JOPA/BRBI/MAGO/EDFR/VESE/JEKO +%UID:000274 +%MD:1999/05/11 + +%IH:cat +%P:boos +%G:cat +%OIH:cat +%C:N +%SN:Felis domesticus +%ETYM:Loan from English {\qf puss}, possibly via Chinook Jargon. +%LOANSOURCE:English +%SF:animals-land +%S:LITM/JOPA/BRBI +%UID:000137 +%MD:1997/12/17 + +%IH:chipmunk +%P:ts'uwhuljos +%G:chipmunk +%OIH:chipmunk +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI +%UID:000146 +%MD:1997/06/16 + +%IH:cougar +%P:booscho +%G:cougar +%OIH:cougar +%SF:animals-land +%SN:Felis concolor +%C:N +%ETYM:Literally, ``big cat'', where {\qc boos} ``cat'' is a loan from English + {\qf puss}, possibly via Chinook Jargon. +%S:JOPA/BRBI +%UID:000050 +%MD:1997/11/14 + +%IH:cow moose +%P:duni'at +%G:cow moose +%OIH:cow moose/moose, cow +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000377 +%MD:1997/11/14 + +%IH:moose, cow +%P:duni'at +%G:cow moose +%OIH:cow moose/moose, cow +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000377 +%MD:1997/11/14 + +%IH:coyote +%P:tintulhi +%G:coyote +%OIH:coyote +%C:N +%SF:animals-land +%SN:Canis latrans +%S:JOPA/BRBI +%R:LITM has chuntulhi. +%UID:000155 +%MD:1997/06/16 + +%IH:deer +%P:yests'e +%G:deer +%OIH:deer +%SF:animals-land +%C:N +%S:LITM/JOPA/BRBI/EDFR +%UID:000132 +%MD:1998/12/16 + +%IH:dry cow moose +%P:dets'it +%G:dry cow moose +%OIH:dry cow moose/moose, dry cow +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000378 +%MD:1997/11/14 + +%IH:moose, dry cow +%P:dets'it +%G:dry cow moose +%OIH:dry cow moose/moose, dry cow +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000378 +%MD:1997/11/14 + +%IH:elk +%P:yezih +%G:elk +%OIH:elk +%SF:animals-land +%C:N +%R:STJA doesn't use this. +%S:JOPA/BRBI +%UID:000382 +%MD:1997/11/14 + +%IH:beaver, female +%P:tsa'at +%G:female beaver +%OIH:beaver, female +%C:N +%SF:animals-land +%S:STJA +%UID:001295 +%MD:1998/12/08 + +%IH:fisher +%P:chunihcho +%G:fisher +%OIH:fisher +%ETYM:``big marten''. +%SF:animals-land +%SN:Martes pennanti +%C:N +%S:JOPA/BRBI/MAGO +%UID:000385 +%MD:2000/06/18 + +%IH:flying squirrel +%P:ts'unalhbuz +%G:flying squirrel +%OIH:flying squirrel +%SF:animals-land +%SN:Glaucomys sabrinus alpinus +%PICTURE:/home/poser/Research/Dakelh/Pictures/psfiles/FlyingSquirrel.ps +%CAPTION:{\qc ts'unulhbuz} --- Flying Squirrel +%PICPERMISSION:N +%PICCREDIT:Drawing of Flying Squirrel from {\it The Mammals of British Columbia\/}. +%C:N +%S:JOPA/BRBI +%UID:000389 +%MD:1997/11/14 + +%IH:fox +%P:nanguz +%G:fox +%OIH:fox +%C:N +%SF:animals-land +%S:MAGO +%UID:000139 +%MD:2001/02/26 + +%IH:grizzly bear +%P:shas +%G:grizzly bear +%OIH:grizzly bear +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI/VESE/EDFR/JEKO +%UID:000039 +%MD:1997/06/12 + +%IH:grizzly bear cub +%P:shasyaz +%G:grizzly bear cub +%OIH:grizzly bear cub/cub, grizzly bear +%C:N +%SF:animals-land +%S:STJA +%UID:002114 +%MD:1999/02/20 + +%IH:cub, grizzly bear +%P:shasyaz +%G:grizzly bear cub +%OIH:grizzly bear cub/cub, grizzly bear +%C:N +%SF:animals-land +%S:STJA +%UID:002114 +%MD:1999/02/20 + +%IH:grizzly bear sow +%P:shas'at +%G:grizzly bear sow +%OIH:grizzly bear sow/sow, grizzly bear +%C:N +%SF:animals-land +%ETYM:``grizzly bear's wife''. +%S:STJA +%UID:002113 +%MD:1999/02/20 + +%IH:sow, grizzly bear +%P:shas'at +%G:grizzly bear sow +%OIH:grizzly bear sow/sow, grizzly bear +%C:N +%SF:animals-land +%ETYM:``grizzly bear's wife''. +%S:STJA +%UID:002113 +%MD:1999/02/20 + +%IH:lynx +%P:wasi +%G:lynx +%OIH:lynx +%C:N +%SF:animals-land +%SN:Felis lynx +%ETYM:Loan from Gitksan {\qf wish}. +%LOANSOURCE:Gitksan +%S:JOPA/BRBI/STJA/EDFR/VESE/JEKO/MAGO +%UID:000049 +%MD:2001/04/20 + +%IH:woodchuck +%P:k'ani +%G:woodchuck +%OIH:woodchuck +%C:N +%SF:animals-land +%SN:Marmota monax +%S:JOPA/BRBI/PEJO +%R:Clarified with Josie and Peter 2001/05/28. +%UID:000391 +%POCKET:Y +%MD:2001/05/28 + +%IH:marmot +%P:dutni +%G:marmot +%OIH:marmot +%SF:animals-land +%C:N +%SN:Marmota caligata +%R:Josie and Peter are not really familiar with marmots but have heard older + people talk about them. +%S:JOPA/PEJO +%UID:000143 +%MD:1998/02/10 + +%IH:marten +%P:chunih +%G:marten +%OIH:marten +%SF:animals-land +%SN:Martes americana +%C:N +%S:JOPA/BRBI/VESE/EDFR/JEKO/MAGO +%UID:000016 +%MD:2001/04/20 + +%IH:mink +%P:telhjoos +%G:mink +%OIH:mink +%C:N +%SF:animals-land +%SN:Mustela vison +%S:LITM/JOPA/BRBI +%UID:000167 +%MD:1997/06/16 + +%IH:moose +%P:duni +%G:moose +%OIH:moose +%C:N +%SF:animals-land +%SN:Alces alces andersoni +%S:LITM-EDFR/JOPA/BRBI +%UID:000346 +%MD:1997/06/18 + +%IH:mouse +%P:dats'ooz +%G:mouse +%OIH:mouse +%SF:animals-land +%C:N +%S:LITM/JOPA/MAGO/VESE/JEKO +%UID:000156 +%MD:2001/01/22 + +%IH:muskrat +%P:tsek'et +%G:muskrat +%OIH:muskrat +%C:N +%SF:animals-land +%SN:Ondatra zibethicus +%S:JOPA/BRBI/STJA/MAGO +%UID:000335 +%MD:1998/12/08 + +%IH:moose, newly sexually mature cow +%P:chanjo +%G:newly sexually mature cow moose +%OIH:moose, newly sexually mature cow +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000379 +%MD:1997/11/14 + +%IH:pack rat +%P:looncho +%G:pack rat +%OIH:pack rat +%C:N +%SF:animals-land +%S:VESE/JEKO/MAGO +%UID:000149 +%MD:1999/05/10 + +%IH:packrat +%P:dlooncho +%G:packrat +%OIH:packrat +%C:N +%SF:animals-land +%S:JOPA +%UID:002701 +%MD:1999/05/11 + +%IH:porcupine +%P:duneza +%G:porcupine +%OIH:porcupine +%SF:animals-land +%C:N +%S:JOPA/BRBI/MAGO +%UID:000388 +%MD:2001/03/06 + +%IH:porcupine +%P:ts'it +%G:porcupine +%OIH:porcupine +%SF:animals-land +%SN:Erethizon dorsatum +%C:N +%ETYM:Perhaps derived from the interjection {\qc ts'it} ``don't touch it!''. +%S:JOPA/BRBI/MAGO/BEMC/STJA +%UID:000387 +%MD:1998/12/08 + +%IH:puppy +%P:lhiyaz +%G:puppy +%OIH:puppy +%C:N +%SF:animals-land +%DUOPLURAL:lhiyazke +%DUOPLURAL:lhikeyaz +%R:Josie prefers {\qc lhikeyaz}. +%S:LITM/BRBI/JOPA/EDFR/MAGO-JEKO +%UID:000182 +%MD:2001/05/26 + +%IH:squirrel +%P:nats'ildelh +%G:Red Squirrel +%OIH:squirrel/Red Squirrel +%SN:Tamiasciurus hudsonicus colum. +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI/STJA +%UID:000034 +%MD:1999/02/17 + +%IH:Red Squirrel +%P:nats'ildelh +%G:Red Squirrel +%OIH:squirrel/Red Squirrel +%SN:Tamiasciurus hudsonicus colum. +%C:N +%SF:animals-land +%S:LITM/JOPA/BRBI/STJA +%UID:000034 +%MD:1999/02/17 + +%IH:rabbit +%P:goh +%G:rabbit +%OIH:rabbit +%C:N +%SF:animals-land +%S:LITM/JOPA/VESE/EDFR/JEKO +%UID:000023 +%MD:1999/05/11 + +%IH:moose, recently weaned calf +%P:ooch'ainischoot +%G:recently weaned calf moose +%OIH:moose, recently weaned calf +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000381 +%MD:1997/11/14 + +%IH:sheep +%P:sbai +%G:sheep +%OIH:sheep +%C:N +%SF:animals-land +%S:MAGO +%UID:001131 +%MD:1998/02/10 + +%IH:sheep +%P:'usbai +%G:sheep +%OIH:sheep +%SF:animals-land +%C:N +%S:JOPA/BRBI +%UID:000375 +%MD:1997/11/14 + +%IH:shrew +%P:'ulhguk +%G:shrew +%OIH:shrew +%SF:animals-land +%C:N +%S:MAGO/VESE/JEKO +%UID:000526 +%MD:2001/01/22 + +%IH:skunk +%P:hoonliz +%G:skunk +%OIH:skunk +%C:N +%P2s:unhoonliz +%SF:animals-land +%S:LITM/JOPA/BRBI/MAGO/VESE/EDFR/JEKO +%UID:000052 +%MD:1997/06/12 + +%IH:weasel +%P:nohbai +%G:weasel +%OIH:weasel +%C:N +%SF:animals-land +%S:JOPA/BRBI/MAGO +%UID:000141 +%MD:1997/06/16 + +%IH:wolf +%P:yus +%G:wolf +%OIH:wolf +%C:N +%SF:animals-land +%SN:Canis lupus +%S:LITM/JOPA/BRBI +%UID:000051 +%MD:1997/06/12 + +%IH:wolverine +%P:noostel +%G:wolverine +%OIH:wolverine +%C:N +%SF:animals-land +%SN:Gulo gulo +%S:JOPA/BRBI/MAGO/VESE/EDFR/JEKO +%UID:000140 +%MD:2001/04/20 + +%IH:beaver, young +%P:tsatsul +%G:young beaver +%OIH:beaver, young +%SF:animals-land +%C:N +%S:JOPA/BRBI/STJA +%UID:000384 +%MD:1998/12/08 + +%IH:beaver dam +%P:lht'at +%G:beaver dam +%OIH:beaver dam/dam, beaver +%C:N +%SF:animals-misc +%S:STJA +%UID:001287 +%MD:1998/12/08 + +%IH:dam, beaver +%P:lht'at +%G:beaver dam +%OIH:beaver dam/dam, beaver +%C:N +%SF:animals-misc +%S:STJA +%UID:001287 +%MD:1998/12/08 + +%IH:beaver dam +%P:'ulh +%G:beaver dam +%OIH:beaver dam/dam, beaver +%C:N +%SF:animals-misc +%S:STJA +%UID:001288 +%MD:1998/12/08 + +%IH:dam, beaver +%P:'ulh +%G:beaver dam +%OIH:beaver dam/dam, beaver +%C:N +%SF:animals-misc +%S:STJA +%UID:001288 +%MD:1998/12/08 + +%IH:beaver lodge +%P:tsaken +%G:beaver lodge +%OIH:beaver lodge +%C:N +%SF:animals-misc +%S:JOPA/BRBI/STJA +%UID:000405 +%MD:1998/12/08 + +%IH:beaver path under the ice +%P:tunyohtsati +%G:beaver path under the ice +%OIH:beaver path under the ice +%C:N +%SF:animals-misc +%S:JOPA/EDFR +%UID:003769 +%POCKET:Y +%MD:2001/02/13 + +%IH:black bear den +%P:sus'an +%G:black bear den +%OIH:black bear den +%C:N +%SF:animals-misc +%S:LITM/STJA +%UID:000131 +%MD:1998/12/08 + +%IH:tracks, grizzly bear +%P:shask'oh +%G:grizzly bear tracks +%OIH:tracks, grizzly bear +%C:N +%SF:animals-misc +%S:MAGO +%UID:001132 +%MD:1998/02/10 + +%IH:leech +%P:hoolht'ukw +%G:leech +%OIH:leech +%SF:animals-misc +%C:N +%S:JOPA/PEJO/EDFR +%UID:003410 +%POCKET:Y +%MD:2000/11/01 + +%IH:leech +%P:hoot'ub +%G:leech +%OIH:leech +%SF:bugs +%C:N +%S:JOPA/BRBI/MAGO +%UID:000370 +%MD:2000/11/01 + +%IH:moose tracks +%P:dunik'oh +%G:moose tracks +%OIH:moose tracks +%C:N +%SF:animals-misc +%S:PEJO/JOPA +%ES:000491 +%UID:003121 +%POCKET:Y +%MD:2000/09/28 + +%IH:tracks, rabbit +%P:gohk'oh +%G:rabbit tracks +%OIH:tracks, rabbit +%C:N +%SF:animals-misc +%S:LITM +%UID:000073 +%MD:1997/06/12 + +%IH:beaver +%P:tsa +%G:beaver +%OIH:beaver +%C:N +%SN:Castor canadensis +%UID:000044 +%SF:animals-water +%S:JOPA/BRBI/STJA/EDFR/VESE/JEKO/MAGO +%MD:2001/04/18 + +%IH:kit, beaver +%P:tsayaz +%G:beaver kit +%OIH:kit, beaver/beaver, baby +%SF:animals-water +%C:N +%S:STJA +%UID:001294 +%MD:2000/06/18 + +%IH:beaver, baby +%P:tsayaz +%G:beaver kit +%OIH:kit, beaver/beaver, baby +%SF:animals-water +%C:N +%S:STJA +%UID:001294 +%MD:2000/06/18 + +%IH:beaver, big +%P:tsati +%G:big beaver, old beaver +%OIH:beaver, big/beaver, old +%C:N +%SF:animals-water +%S:LITM/JOPA/BRBI/STJA +%UID:000206 +%MD:1998/12/08 + +%IH:beaver, old +%P:tsati +%G:big beaver, old beaver +%OIH:beaver, big/beaver, old +%C:N +%SF:animals-water +%S:LITM/JOPA/BRBI/STJA +%UID:000206 +%MD:1998/12/08 + +%IH:otter +%P:tsis +%G:otter +%OIH:otter +%SF:animals-water +%SN:Lutra canadensis +%C:N +%S:JOPA/BRBI +%UID:000386 +%MD:1997/11/14 + +%IH:crow +%P:datsan +%G:American Crow +%C:N +%SF:bird-gen +%SN:Corvus brachyrhynchos +%OIH:crow/American Crow +%S:LITM/PEJO +%UID:000158 +%MD:2000/10/21 + +%IH:American Crow +%P:datsan +%G:American Crow +%C:N +%SF:bird-gen +%SN:Corvus brachyrhynchos +%OIH:crow/American Crow +%S:LITM/PEJO +%UID:000158 +%MD:2000/10/21 + +%IH:Robin, American +%P:sewh +%G:American Robin +%OIH:Robin, American +%SN:Turdus migratorius +%C:N +%SF:bird-gen +%S:LITM/JOPA/BRBI/PEJO +%UID:000181 +%MD:2000/10/21 + +%IH:Bald Eagle +%P:tsebalyan +%G:Bald Eagle +%OIH:Bald Eagle +%C:N +%SF:bird-gen +%SN:Haliaeetus leucocephalus +%S:LITM/JOPA/BRBI +%UID:000150 +%MD:1997/06/16 + +%IH:bird +%P:dut'ai +%G:bird, duck +%OIH:bird/duck +%C:N +%SF:bird-gen +%S:LITM/JOPA/BRBI/MAGO/STJA/PEJO +%UID:000081 +%MD:2000/09/28 + +%IH:duck +%P:dut'ai +%G:bird, duck +%OIH:bird/duck +%C:N +%SF:bird-gen +%S:LITM/JOPA/BRBI/MAGO/STJA/PEJO +%UID:000081 +%MD:2000/09/28 + +%IH:crane +%P:delh +%G:crane +%OIH:crane +%C:N +%SF:bird-gen +%S:LITM +%UID:000255 +%MD:1997/06/16 + +%IH:goose +%P:khoh +%G:goose +%OIH:goose +%C:N +%P1s:skhoh +%P2s:nkhoh +%P1p:nekhoh +%POSS:khoh +%SF:bird-gen +%S:JOPA/BRBI/MAGO/VESE/EDFR/JEKO +%UID:000031 +%MD:2001/02/15 + +%IH:hummingbird +%P:ts'unalhduz +%G:hummingbird +%OIH:hummingbird +%C:N +%SF:bird-gen +%S:LITM/BRBI/JOPA +%UID:000242 +%MD:1997/06/16 + +%IH:bird, little +%P:gagiyaz +%G:little bird +%OIH:bird, little +%C:N +%QCHECK:Any little bird? +%SF:bird-gen +%S:PEJO +%UID:003115 +%POCKET:Y +%MD:2000/09/28 + +%IH:bird, little +%P:dut'aiyaz +%G:little bird +%OIH:bird, little +%C:N +%SF:bird-gen +%S:STJA/JOPA/EDFR/VESE/PEJO +%UID:001818 +%MD:2000/09/28 + +%IH:loon +%P:dadzi +%G:loon +%OIH:loon +%SF:bird-gen +%SN:Gavia immer +%C:N +%S:LITM/JOPA/BRBI +%UID:000020 +%MD:1997/06/12 + +%IH:Mallard Duck +%P:t'ugicho +%G:Mallard Duck +%OIH:Mallard Duck +%C:N +%SN:Anas platyrhynchos +%SF:bird-gen +%S:LITM/JOPA/BRBI/MAGO/VESE/EDFR/JEKO +%UID:000041 +%MD:1999/05/11 + +%IH:owl +%P:musdzoon +%G:owl +%OIH:owl +%C:N +%SF:bird-gen +%S:LITM/BRBI/JOPA/MAGO +%UID:000135 +%MD:1997/12/11 + +%IH:Red-Necked Grebe +%P:ts'olh +%G:Red-necked Grebe +%MN:A variety of duck locally known as the Helldiver. +%OIH:Red-Necked Grebe/Helldiver/Grebe, Red-Necked +%SN:Podiceps grisegena +%SF:bird-gen +%C:N +%S:BRBI/JOPA +%UID:000263 +%MD:2001/03/08 + +%IH:Helldiver +%P:ts'olh +%G:Red-necked Grebe +%MN:A variety of duck locally known as the Helldiver. +%OIH:Red-Necked Grebe/Helldiver/Grebe, Red-Necked +%SN:Podiceps grisegena +%SF:bird-gen +%C:N +%S:BRBI/JOPA +%UID:000263 +%MD:2001/03/08 + +%IH:Grebe, Red-Necked +%P:ts'olh +%G:Red-necked Grebe +%MN:A variety of duck locally known as the Helldiver. +%OIH:Red-Necked Grebe/Helldiver/Grebe, Red-Necked +%SN:Podiceps grisegena +%SF:bird-gen +%C:N +%S:BRBI/JOPA +%UID:000263 +%MD:2001/03/08 + +%IH:Ruffed grouse +%P:'utsut +%G:Ruffed grouse +%OIH:Ruffed grouse +%C:N +%SF:bird-gen +%S:LITM +%UID:000218 +%MD:1997/06/16 + +%IH:Spruce Grouse +%P:nat'oh +%G:Spruce Grouse, Fool Hen +%OIH:Spruce Grouse/Grouse, Spruce/Fool Hen +%SF:bird-gen +%SN:Dendragapus canadensis +%C:N +%S:MAGO/LITM +%UID:000539 +%MD:1997/12/04 + +%IH:Grouse, Spruce +%P:nat'oh +%G:Spruce Grouse, Fool Hen +%OIH:Spruce Grouse/Grouse, Spruce/Fool Hen +%SF:bird-gen +%SN:Dendragapus canadensis +%C:N +%S:MAGO/LITM +%UID:000539 +%MD:1997/12/04 + +%IH:Fool Hen +%P:nat'oh +%G:Spruce Grouse, Fool Hen +%OIH:Spruce Grouse/Grouse, Spruce/Fool Hen +%SF:bird-gen +%SN:Dendragapus canadensis +%C:N +%S:MAGO/LITM +%UID:000539 +%MD:1997/12/04 + +%IH:Steller's Jay +%P:tehgwuzeh +%G:Steller's Jay, commonly known locally as ``bluejay''. +%OIH:Steller's Jay/jay, Steller's/Bluejay (Steller's Jay) +%SF:bird-gen +%SN:Cyanocitta stelleri +%C:N +%S:JOPA/BRBI +%UID:000356 +%MD:1997/11/14 + +%IH:jay, Steller's +%P:tehgwuzeh +%G:Steller's Jay, commonly known locally as ``bluejay''. +%OIH:Steller's Jay/jay, Steller's/Bluejay (Steller's Jay) +%SF:bird-gen +%SN:Cyanocitta stelleri +%C:N +%S:JOPA/BRBI +%UID:000356 +%MD:1997/11/14 + +%IH:Bluejay (Steller's Jay) +%P:tehgwuzeh +%G:Steller's Jay, commonly known locally as ``bluejay''. +%OIH:Steller's Jay/jay, Steller's/Bluejay (Steller's Jay) +%SF:bird-gen +%SN:Cyanocitta stelleri +%C:N +%S:JOPA/BRBI +%UID:000356 +%MD:1997/11/14 + +%IH:sandpiper +%P:wedlew +%G:sandpiper +%OIH:sandpiper +%C:N +%SN:Eremophila alpestris et sim. +%SF:bird-gen +%S:LITM +%UID:000237 +%MD:2002/07/19 + +%IH:seagull +%P:besk'i +%G:seagull +%OIH:seagull +%C:N +%SN:Larus species +%SF:bird-gen +%S:LITM +%UID:000136 +%MD:2002/07/19 + +%IH:swan +%P:ts'incho +%G:swan +%OIH:swan +%C:N +%SF:bird-gen +%S:LITM +%UID:000222 +%MD:1997/06/16 + +%IH:Tree Swallow +%P:'uschas +%G:Tree Swallow +%OIH:Tree Swallow +%SF:bird-gen +%SN:Tachycineta bicolor +%C:N +%S:MAGO +%UID:000535 +%MD:1997/11/22 + +%IH:Whiskey Jack +%P:gwuzeh +%G:Whiskey Jack, Gray Jay, Canadian Jay +%OIH:Whiskey Jack/Jay, Gray/Jay, Canadian +%C:N +%SN:Perisoreus canadensis +%SF:bird-gen +%S:LITM/JOPA/BRBI/MAGO +%UID:000148 +%MD:1997/11/22 + +%IH:Jay, Gray +%P:gwuzeh +%G:Whiskey Jack, Gray Jay, Canadian Jay +%OIH:Whiskey Jack/Jay, Gray/Jay, Canadian +%C:N +%SN:Perisoreus canadensis +%SF:bird-gen +%S:LITM/JOPA/BRBI/MAGO +%UID:000148 +%MD:1997/11/22 + +%IH:Jay, Canadian +%P:gwuzeh +%G:Whiskey Jack, Gray Jay, Canadian Jay +%OIH:Whiskey Jack/Jay, Gray/Jay, Canadian +%C:N +%SN:Perisoreus canadensis +%SF:bird-gen +%S:LITM/JOPA/BRBI/MAGO +%UID:000148 +%MD:1997/11/22 + +%IH:woodpecker +%P:chundulkw'uz +%G:woodpecker +%OIH:woodpecker +%C:N +%SF:bird-gen +%S:JOPA/BRBI/STJA +%UID:000138 +%MD:1999/03/31 + +%IH:nest +%P:-t'o +%G:nest +%OIH:nest +%C:N +%Pind:'ut'o +%P3s:but'o +%Pref:dut'o +%SF:bird-misc/bugs +%S:STJA/PEJO/JOPA/BRBI/EDFR +%ES:001353 +%UID:000226 +%MD:2001/03/07 + +%IH:eye, a single +%P:-nak'uz +%G:a single eye +%OIH:eye, a single +%C:N +%SF:body-ext +%S:JOPA/EDFR +%ES:000457 +%UID:003770 +%POCKET:Y +%MD:2001/02/13 + +%IH:ankle +%P:-kechunoh +%G:ankle +%OIH:ankle +%P1s:skechunoh +%P2s:nkechunoh +%C:N +%S:MAGO/STJA +%SF:body-ext +%UID:000865 +%MD:1999/03/03 + +%IH:antler +%P:-de +%G:antler, horn +%OIH:antler/horn +%C:N +%SF:body-ext +%P3s:bude +%S:STJA +%UID:002266 +%MD:1999/03/02 + +%IH:horn +%P:-de +%G:antler, horn +%OIH:antler/horn +%C:N +%SF:body-ext +%P3s:bude +%S:STJA +%UID:002266 +%MD:1999/03/02 + +%IH:velvet, antler +%P:-de_zu_s +%G:antler velvet +%OIH:velvet, antler +%C:N +%SF:body-ext +%P3s:bude_zu_s +%S:STJA +%UID:002267 +%MD:1999/03/02 + +%IH:anus +%P:-tsul +%G:anus, asshole +%OIH:anus/asshole +%C:N +%P1s:stsul +%SF:body-ext +%S:STJA +%UID:002171 +%MD:1999/02/23 + +%IH:asshole +%P:-tsul +%G:anus, asshole +%OIH:anus/asshole +%C:N +%P1s:stsul +%SF:body-ext +%S:STJA +%UID:002171 +%MD:1999/02/23 + +%IH:arm +%P:-gan +%G:arm +%OIH:arm +%P1s:sgan +%P2s:ngan +%Pref:dugan +%C:N +%S:LITM/MAGO/STJA/JOPA/VESE/EDFR/JEKO +%SF:body-ext +%UID:000863 +%MD:1999/02/22 + +%IH:armpit +%P:-chak'ests'oh +%G:armpit +%OIH:armpit +%P1s:schak'ests'oh +%C:N +%S:MAGO +%UID:000859 +%SF:body-ext +%MD:1997/12/11 + +%IH:back (of body) +%P:-t'ak +%G:back (of body) +%OIH:back (of body) +%P1s:st'ak +%P3s:but'ak +%C:N +%S:MAGO/EDFR/VESE/JEKO +%SF:body-ext +%UID:000899 +%MD:1997/12/11 + +%IH:back of hand +%P:-lat'ak +%G:back of hand +%OIH:back of hand +%P1s:slat'ak +%C:N +%S:MAGO +%SF:body-ext +%UID:000871 +%MD:1997/12/11 + +%IH:beaver paws +%P:tsake +%G:beaver paws +%OIH:beaver paws +%C:N +%SF:body-ext +%S:LITM-EDFR +%UID:000329 +%MD:1997/06/18 + +%IH:beaver tail +%P:tsache +%G:beaver tail +%OIH:beaver tail +%C:N +%SF:body-ext +%S:LITM +%UID:000207 +%MD:1997/06/16 + +%IH:belly +%P:-but +%G:belly +%OIH:belly +%P1s:sbut +%C:N +%S:MAGO +%SF:body-ext +%UID:000937 +%MD:1997/12/11 + +%IH:breast +%P:-ts'oo +%G:breast +%OIH:breast +%P1s:sts'oo +%C:N +%S:MAGO +%UID:000855 +%SF:body-ext +%MD:1997/12/11 + +%IH:bum +%P:-tl'a +%G:bum, buttocks +%OIH:bum/buttocks +%P1s:stl'a +%C:N +%S:MAGO +%SF:body-ext +%UID:000936 +%MD:1997/12/11 + +%IH:buttocks +%P:-tl'a +%G:bum, buttocks +%OIH:bum/buttocks +%P1s:stl'a +%C:N +%S:MAGO +%SF:body-ext +%UID:000936 +%MD:1997/12/11 + +%IH:calf of leg +%P:-kechunch'ooz +%G:calf of leg +%OIH:calf of leg +%C:N +%SF:body-ext +%S:JOPA/EDFR +%UID:004458 +%POCKET:Y +%MD:2001/04/20 + +%IH:cheek +%P:-nembus +%G:cheek +%OIH:cheek +%P1s:snimbus +%C:N +%S:MAGO/JOPA/BRBI +%SF:body-ext +%UID:000889 +%MD:1997/12/11 + +%IH:chest +%P:-yoh +%G:chest +%OIH:chest +%C:N +%SF:body-ext +%S:JOPA/EDFR +%ES:000660 +%UID:003777 +%POCKET:Y +%MD:2001/02/13 + +%IH:chin +%P:-yeda' +%G:chin +%OIH:chin +%P1s:syeda' +%C:N +%S:MAGO +%SF:body-ext +%UID:000882 +%MD:1997/12/11 + +%IH:cranial fontanelle +%P:-tsidakwhudutle +%G:cranial fontanelle, baby's soft spot +%OIH:cranial fontanelle/baby's soft spot +%C:N +%P3s:butsidakwhudutle +%S:MAGO +%SF:body-ext +%UID:000898 +%MD:1997/12/11 + +%IH:baby's soft spot +%P:-tsidakwhudutle +%G:cranial fontanelle, baby's soft spot +%OIH:cranial fontanelle/baby's soft spot +%C:N +%P3s:butsidakwhudutle +%S:MAGO +%SF:body-ext +%UID:000898 +%MD:1997/12/11 + +%IH:ear +%P:-dzo +%G:ear +%OIH:ear +%MN:This refers to the ear considered as a whole, especially the exterior. + When the canal in particular is referred to, one uses {\qc -dzek}, q.v. +%C:N +%P1s:sdzo +%S:MAGO +%SF:body-ext +%UID:000879 +%MD:1997/12/11 + +%IH:earlobe +%P:-dzobal +%G:earlobe +%OIH:earlobe +%C:N +%P1s:sdzobal +%SF:body-ext +%S:BRBI/MAGO +%UID:000641 +%MD:1997/12/17 + +%IH:elbow +%P:-nints'uzti +%G:elbow +%OIH:elbow +%P1s:snints'uzti +%C:N +%S:MAGO +%SF:body-ext +%UID:000916 +%MD:1997/12/11 + +%IH:eye +%P:-na +%G:eye +%OIH:eye +%P1s:sna +%P3s:buna +%C:N +%S:MAGO/JOPA/EDFR +%SF:body-ext +%UID:000891 +%MD:1998/12/18 + +%IH:eye socket +%P:-nak'et +%G:eye socket +%OIH:eye socket +%P1s:snak'et +%C:N +%S:MAGO +%SF:body-ext +%UID:000892 +%MD:1997/12/11 + +%IH:eyebrow +%P:-nach'usdooz +%G:eyebrow +%OIH:eyebrow +%P1s:snach'usdooz +%C:N +%S:MAGO +%SF:body-ext +%UID:000896 +%MD:1997/12/11 + +%IH:eyelash +%P:-nalusgha +%G:eyelash +%OIH:eyelash +%P1s:snalusgha +%C:N +%S:MAGO +%SF:body-ext +%UID:000895 +%MD:1997/12/11 + +%IH:eyelid +%P:-nalus +%G:eyelid +%OIH:eyelid +%P1s:snalus +%C:N +%S:MAGO +%SF:body-ext +%UID:000894 +%MD:1997/12/11 + +%IH:face +%P:-nen +%G:face +%OIH:face +%P1s:snen +%P2s:nyunen +%P3s:bunen +%C:N +%S:MAGO/PEJO/STJA/JOPA/VESE/EDFR +%SF:body-ext +%ES:000369 +%UID:000890 +%MD:2001/04/20 + +%IH:feather +%P:ts'uz +%G:feather, down +%OIH:feather/down +%C:N +%SF:body-ext +%S:LITM/STJA/PEJO +%UID:000271 +%MD:2000/10/16 + +%IH:down +%P:ts'uz +%G:feather, down +%OIH:feather/down +%C:N +%SF:body-ext +%S:LITM/STJA/PEJO +%UID:000271 +%MD:2000/10/16 + +%IH:feathers +%P:dut'aits'uz +%G:feathers, down +%OIH:feathers/down +%C:N +%SF:body-ext +%S:STJA +%UID:002647 +%MD:2001/02/27 + +%IH:down +%P:dut'aits'uz +%G:feathers, down +%OIH:feathers/down +%C:N +%SF:body-ext +%S:STJA +%UID:002647 +%MD:2001/02/27 + +%IH:finger other than thumb or pinkie +%P:-lasge +%G:finger other than thumb or pinkie +%OIH:finger other than thumb or pinkie +%P1s:slasge +%C:N +%S:MAGO/STJA/JOPA/PEJO/EDFR +%SF:body-ext +%UID:000869 +%MD:2000/11/01 + +%IH:fingernails +%P:-lagui +%G:fingernails, claws of forepaws +%OIH:fingernails/claws of forepaws +%P1s:slagui +%C:N +%S:MAGO +%SF:body-ext +%UID:000875 +%MD:1997/12/11 + +%IH:claws of forepaws +%P:-lagui +%G:fingernails, claws of forepaws +%OIH:fingernails/claws of forepaws +%P1s:slagui +%C:N +%S:MAGO +%SF:body-ext +%UID:000875 +%MD:1997/12/11 + +%IH:foot +%P:-ke +%G:foot +%OIH:foot +%C:N +%P1s:ske +%Pref:duke +%S:MAGO/STJA/JOPA/VESE/EDFR/JEKO +%UID:000851 +%SF:body-ext +%MD:1999/05/11 + +%IH:hair +%P:-gha +%G:hair +%MN:This refers to hair in general and where no more specific term exists, as on the + arms and chest. It is not used to refer to the hair of the head, for which the + more specific term {\qc -tsigha} is always used. +%OIH:hair +%C:N +%S:MAGO +%SF:body-ext +%UID:000888 +%MD:1997/12/11 + +%IH:hair of the head +%P:-tsigha +%G:hair of the head +%OIH:hair of the head +%P1s:stsigha +%P2s:ntsigha +%P3s:butsigha +%C:N +%S:MAGO/LITM/PEJO +%SF:body-ext +%UID:000887 +%MD:2000/10/20 + +%IH:hand +%P:-la +%G:hand +%OIH:hand +%P1s:sla +%P2s:nla +%C:N +%S:MAGO/STJA +%SF:body-ext +%POCKET:Y +%UID:000866 +%MD:1999/02/17 + +%IH:head +%P:-tsi +%G:head +%OIH:head +%Pref:dutsi +%C:N +%SF:body-ext +%S:STJA +%UID:002965 +%POCKET:Y +%MD:1999/06/24 + +%IH:heel +%P:-kelatsul +%G:heel +%OIH:heel +%P1s:skelatsul +%C:N +%S:MAGO +%SF:body-ext +%UID:000917 +%MD:1997/12/11 + +%IH:hip +%P:-k'ui +%G:hip +%OIH:hip +%P1s:sk'ui +%C:N +%S:MAGO/JOPA +%SF:body-ext +%UID:000923 +%MD:2001/03/15 + +%IH:knee +%P:-gwut +%G:knee +%OIH:knee +%P1s:sgwut +%C:N +%S:MAGO +%SF:body-ext +%UID:000933 +%MD:1997/12/11 + +%IH:kneecap +%P:-gwutlasi'ai +%G:kneecap +%OIH:kneecap +%P1s:sgwutlasi'ai +%R:has something to do with floating at tip of knee +%C:N +%S:MAGO +%SF:body-ext +%UID:000925 +%MD:1997/12/11 + +%IH:knuckles at boundary between hand and fingers +%P:-langwut +%G:knuckles at boundary between hand and fingers +%OIH:knuckles at boundary between hand and fingers +%P1s:slangwut +%SF:body-ext +%C:N +%S:JOPA/BRBI +%UID:000967 +%MD:1997/12/17 + +%IH:leg +%P:-kechun +%G:leg +%OIH:leg +%P1s:skechun +%C:N +%S:MAGO +%UID:000852 +%SF:body-ext +%MD:1997/12/11 + diff -urN gawk-3.1.4/unsupported/atari/ChangeLog gawk-3.1.5/unsupported/atari/ChangeLog --- gawk-3.1.4/unsupported/atari/ChangeLog 2004-08-02 12:19:25.000000000 +0300 +++ gawk-3.1.5/unsupported/atari/ChangeLog 2005-07-26 21:47:40.000000000 +0300 @@ -1,3 +1,7 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/unsupported/atari/Makefile.awklib gawk-3.1.5/unsupported/atari/Makefile.awklib --- gawk-3.1.4/unsupported/atari/Makefile.awklib 1996-12-13 05:56:48.000000000 +0200 +++ gawk-3.1.5/unsupported/atari/Makefile.awklib 2005-05-11 18:28:19.000000000 +0300 @@ -22,7 +22,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA SHELL = /bin/sh diff -urN gawk-3.1.4/unsupported/atari/Makefile.st gawk-3.1.5/unsupported/atari/Makefile.st --- gawk-3.1.4/unsupported/atari/Makefile.st 1996-12-13 05:56:49.000000000 +0200 +++ gawk-3.1.5/unsupported/atari/Makefile.st 2005-05-11 18:28:19.000000000 +0300 @@ -26,7 +26,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA MAKEINFO = makeinfo --no-split diff -urN gawk-3.1.4/unsupported/atari/config.h gawk-3.1.5/unsupported/atari/config.h --- gawk-3.1.4/unsupported/atari/config.h 1996-12-13 05:56:49.000000000 +0200 +++ gawk-3.1.5/unsupported/atari/config.h 2005-05-11 18:28:19.000000000 +0300 @@ -24,7 +24,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* Define if using alloca.c. */ diff -urN gawk-3.1.4/unsupported/atari/gawkmisc.atr gawk-3.1.5/unsupported/atari/gawkmisc.atr --- gawk-3.1.4/unsupported/atari/gawkmisc.atr 2002-06-11 22:52:57.000000000 +0300 +++ gawk-3.1.5/unsupported/atari/gawkmisc.atr 2005-05-11 18:28:19.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include diff -urN gawk-3.1.4/unsupported/atari/redirect.h gawk-3.1.5/unsupported/atari/redirect.h --- gawk-3.1.4/unsupported/atari/redirect.h 1995-12-20 00:00:37.000000000 +0200 +++ gawk-3.1.5/unsupported/atari/redirect.h 2005-05-11 18:28:19.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* This file is already conditioned on atarist in awk.h */ diff -urN gawk-3.1.4/unsupported/tandem/ChangeLog gawk-3.1.5/unsupported/tandem/ChangeLog --- gawk-3.1.4/unsupported/tandem/ChangeLog 2004-08-02 12:19:30.000000000 +0300 +++ gawk-3.1.5/unsupported/tandem/ChangeLog 2005-07-26 21:47:42.000000000 +0300 @@ -1,3 +1,7 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/unsupported/tandem/config.h gawk-3.1.5/unsupported/tandem/config.h --- gawk-3.1.4/unsupported/tandem/config.h 1999-06-01 14:09:03.000000000 +0300 +++ gawk-3.1.5/unsupported/tandem/config.h 2005-05-11 18:28:19.000000000 +0300 @@ -22,7 +22,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ diff -urN gawk-3.1.4/unsupported/tandem/tmisc.c gawk-3.1.5/unsupported/tandem/tmisc.c --- gawk-3.1.4/unsupported/tandem/tmisc.c 2002-06-11 22:53:06.000000000 +0300 +++ gawk-3.1.5/unsupported/tandem/tmisc.c 2005-05-11 18:28:19.000000000 +0300 @@ -45,7 +45,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ char quote = '"'; diff -urN gawk-3.1.4/version.c gawk-3.1.5/version.c --- gawk-3.1.4/version.c 2004-08-02 12:16:45.000000000 +0300 +++ gawk-3.1.5/version.c 2005-07-26 21:44:16.000000000 +0300 @@ -1,6 +1,6 @@ #include "config.h" -const char *version_string = "@(#)GNU Awk 3.1.4"; +const char *version_string = "@(#)GNU Awk 3.1.5"; /* 1.02 fixed /= += *= etc to return the new Left Hand Side instead of the Right Hand Side */ diff -urN gawk-3.1.4/version.in gawk-3.1.5/version.in --- gawk-3.1.4/version.in 2004-06-06 19:15:43.000000000 +0300 +++ gawk-3.1.5/version.in 2005-05-11 18:28:19.000000000 +0300 @@ -1,6 +1,6 @@ #include "config.h" -const char *version_string = "@(#)GNU Awk @VERSION@"; +const char *version_string = "@(#)@PACKAGE_STRING@"; /* 1.02 fixed /= += *= etc to return the new Left Hand Side instead of the Right Hand Side */ diff -urN gawk-3.1.4/vms/ChangeLog gawk-3.1.5/vms/ChangeLog --- gawk-3.1.4/vms/ChangeLog 2004-08-02 12:19:33.000000000 +0300 +++ gawk-3.1.5/vms/ChangeLog 2005-07-26 21:47:44.000000000 +0300 @@ -1,3 +1,63 @@ +Tue Jul 26 21:46:16 2005 Arnold D. Robbins + + * Release 3.1.5: Release tar file made. + +Mon May 23 20:54:31 2005 Pat Rankin + + * vms_gawk.c [gawk_cmd, #if __ia64__]: Switch from globalvalue + to strict_refdef and then take gawk_cmd's address during use. + + * vmstest.com (concat1, longsub, arrayprm2, arrayprm3, arryref2, + arryref3, arryref4, arryref5, aryprm1, aryprm2, aryprm3, + aryprm4, aryprm5, aryprm6, aryprm7, aryprm8, concat2, concat3, + delarpm2, delfunc, exitval2, fmttest, fnarray2, fnmisc, fordel, + getline3, gsubasgn, gsubtest, gsubtst2, gsubtst4, gsubtst5, + hex, inputred, iobug1, manglprm, nested, nfneg, noloop1, + noloop2, nulrsend, prec, prtoeval, rstest1, rstest2, rstest3, + rstest4, rstest5, scalar, sortempty, splitarr, strcat1, + subsepnm, synerr1, uninit2, uninit3, uninit4, uninitialized, + unterm, wjposer1, zeroe0): New tests. + +Wed May 18 21:22:09 2005 Pat Rankin + + * vms_gawk.c [#if __ia64__]: Use #pragma extern_model globalvalue + for the declaration of gawk_cmd. + +Mon May 9 21:17:33 2005 Pat Rankin + + * vms-conf.h [#if DECC]: Use #pragma to suppress "new feature in C99" + diagnostic for structure field designator style initialization in + regexec.c. + +Thu May 5 21:17:48 2005 Anders Wallin + + * vms_gawk.c [__ia64__]: Change to lower case, then Itanium + VMS is happy. + +Sun May 1 08:20:00 2005 Pat Rankin + + * vms_gawk.c [gawk_cmd]: Declare as ordinary data symbol rather + than as a fake routine for Itanium. (Can't do that for other + configurations without getting tangled up in compiler-specific + details like `#pragma extern_model' and VAX C's `globalref'.) + +Fri Mar 4 20:46:20 2005 Pat Rankin + + * vms-conf.h: Define VAXCRTL when appropriate; used in builtin.c. + +Sat Feb 19 20:13:28 2005 Pat Rankin + + * vms-conf.h [RE_TOKEN_INIT_BUG]: Define for regcomp.c. + +Wed Feb 16 20:45:21 2005 Pat Rankin + + * vms-conf.h [NO_MBSUPPORT]: Define when compiling with VAX C. + [inline]: Define as empty when compiling with VAX C. + +Thu Jan 20 19:09:52 2005 Pat Rankin + + * vms-conf.h: Synchronize with configh.in. + Mon Aug 2 12:18:15 2004 Arnold D. Robbins * Release 3.1.4: Release tar file made. diff -urN gawk-3.1.4/vms/descrip.mms gawk-3.1.5/vms/descrip.mms --- gawk-3.1.4/vms/descrip.mms 2004-07-28 16:51:07.000000000 +0300 +++ gawk-3.1.5/vms/descrip.mms 2005-07-26 21:43:24.000000000 +0300 @@ -122,7 +122,7 @@ # Release of gawk REL=3.1 -PATCHLVL=4 +PATCHLVL=5 # generic target all : gawk diff -urN gawk-3.1.4/vms/gawkmisc.vms gawk-3.1.5/vms/gawkmisc.vms --- gawk-3.1.4/vms/gawkmisc.vms 2003-02-04 14:26:59.000000000 +0200 +++ gawk-3.1.5/vms/gawkmisc.vms 2005-05-11 18:28:19.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ char quote = '\''; diff -urN gawk-3.1.4/vms/redirect.h gawk-3.1.5/vms/redirect.h --- gawk-3.1.4/vms/redirect.h 2001-12-24 14:01:57.000000000 +0200 +++ gawk-3.1.5/vms/redirect.h 2005-05-11 18:28:19.000000000 +0300 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* This file is included by custom.h for VMS-POSIX, or first diff -urN gawk-3.1.4/vms/vms-conf.h gawk-3.1.5/vms/vms-conf.h --- gawk-3.1.4/vms/vms-conf.h 2003-06-15 18:20:07.000000000 +0300 +++ gawk-3.1.5/vms/vms-conf.h 2005-05-11 18:28:19.000000000 +0300 @@ -7,7 +7,7 @@ */ /* - * Copyright (C) 1991-1992, 1995-1996, 1999, 2001, 2002, 2003 the Free Software Foundation, Inc. + * Copyright (C) 1991-1992, 1995-1996, 1999, 2001, 2002, 2003, 2005 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -24,7 +24,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /* switch statements are enabled in awk programs */ @@ -69,31 +69,48 @@ /* Define to 1 if you have the header file. */ #undef HAVE_ARGZ_H +/* Define to 1 if you have the `asprintf' function. */ +#undef HAVE_ASPRINTF + /* Define if the GNU dcgettext() function is already present or preinstalled. */ #undef HAVE_DCGETTEXT +/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you + don't. */ +#define HAVE_DECL_FEOF_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FGETS_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you + don't. */ +#define HAVE_DECL_GETC_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `_snprintf', and to 0 if you + don't. */ +#define HAVE_DECL__SNPRINTF 0 + +/* Define to 1 if you have the declaration of `_snwprintf', and to 0 if you + don't. */ +#define HAVE_DECL__SNWPRINTF 0 + /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ #undef HAVE_DOPRNT /* Define to 1 if you have the header file. */ #undef HAVE_FCNTL_H -/* Define to 1 if you have the `feof_unlocked' function. */ -#undef HAVE_FEOF_UNLOCKED - -/* Define to 1 if you have the `fgets_unlocked' function. */ -#undef HAVE_FGETS_UNLOCKED - /* Define to 1 if you have the `fmod' function. */ #define HAVE_FMOD 1 +/* Define to 1 if you have the `fwprintf' function. */ +#undef HAVE_FWPRINTF + /* Define to 1 if you have the `getcwd' function. */ #define HAVE_GETCWD 1 -/* Define to 1 if you have the `getc_unlocked' function. */ -#undef HAVE_GETC_UNLOCKED - /* Define to 1 if you have the `getegid' function. */ #undef HAVE_GETEGID @@ -124,9 +141,25 @@ /* Define if you have the iconv() function. */ #undef HAVE_ICONV +/* Define if you have the 'intmax_t' type in or . */ +#undef HAVE_INTMAX_T + /* Define if exists and doesn't clash with . */ #undef HAVE_INTTYPES_H +/* Define if exists, doesn't clash with , and + declares uintmax_t. */ +#undef HAVE_INTTYPES_H_WITH_UINTMAX + +/* Define to 1 if you have the `iswctype' function. */ +#undef HAVE_ISWCTYPE + +/* Define to 1 if you have the `iswlower' function. */ +#undef HAVE_ISWLOWER + +/* Define to 1 if you have the `iswupper' function. */ +#undef HAVE_ISWUPPER + /* Define if you have and nl_langinfo(CODESET). */ #undef HAVE_LANGINFO_CODESET @@ -148,7 +181,10 @@ /* Define to 1 if you have the header file. */ #undef HAVE_LOCALE_H -/* Define if you have the long long type. */ +/* Define if you have the 'long double' type. */ +#undef HAVE_LONG_DOUBLE + +/* Define if you have the 'long long' type. */ #undef HAVE_LONG_LONG /* Define to 1 if you have the header file. */ @@ -157,7 +193,7 @@ /* Define to 1 if you have the `mbrlen' function. */ #undef HAVE_MBRLEN -/* Define to 1 if you have the `mbrtowc' function. */ +/* Define to 1 if mbrtowc and mbstate_t are properly declared. */ #undef HAVE_MBRTOWC /* Define to 1 if you have the header file. */ @@ -169,6 +205,9 @@ /* Define to 1 if you have the `memcpy' function. */ #define HAVE_MEMCPY 1 +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H @@ -199,6 +238,9 @@ /* we have portals on /p on this system */ #undef HAVE_PORTALS +/* Define if your printf() function supports format strings with positions. */ +#undef HAVE_POSIX_PRINTF + /* Define to 1 if you have the `putenv' function. */ #undef HAVE_PUTENV @@ -226,6 +268,10 @@ /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H +/* Define if exists, doesn't clash with , and declares + uintmax_t. */ +#undef HAVE_STDINT_H_WITH_UINTMAX + /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 @@ -310,6 +356,12 @@ `HAVE_STRUCT_TM_TM_ZONE' instead. */ #undef HAVE_TM_ZONE +/* Define to 1 if you have the `towlower' function. */ +#undef HAVE_TOWLOWER + +/* Define to 1 if you have the `towupper' function. */ +#undef HAVE_TOWUPPER + /* Define to 1 if you have the `tsearch' function. */ #undef HAVE_TSEARCH @@ -320,6 +372,9 @@ /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* (faked in vms/vms_misc.c) */ +/* Define if you have the 'uintmax_t' type in or . */ +#undef HAVE_UINTMAX_T + /* Define to 1 if you have the header file. */ #ifdef __DECC #define HAVE_UNISTD_H 1 @@ -336,15 +391,30 @@ /* Define to 1 if you have the header file. */ #undef HAVE_WCHAR_H +/* Define if you have the 'wchar_t' type. */ +#undef HAVE_WCHAR_T + /* Define to 1 if you have the `wcrtomb' function. */ #undef HAVE_WCRTOMB /* Define to 1 if you have the `wcscoll' function. */ #undef HAVE_WCSCOLL +/* Define to 1 if you have the `wcslen' function. */ +#undef HAVE_WCSLEN + +/* Define to 1 if you have the `wctype' function. */ +#undef HAVE_WCTYPE + /* Define to 1 if you have the header file. */ #undef HAVE_WCTYPE_H +/* systems should define this type here */ +#undef HAVE_WCTYPE_T + +/* systems should define this type here */ +#undef HAVE_WINT_T + /* Define to 1 if you have the `__argz_count' function. */ #undef HAVE___ARGZ_COUNT @@ -354,6 +424,9 @@ /* Define to 1 if you have the `__argz_stringify' function. */ #undef HAVE___ARGZ_STRINGIFY +/* Define to 1 if you have the `__fsetlocking' function. */ +#undef HAVE___FSETLOCKING + /* Define as const if the declaration of iconv() needs const. */ #undef ICONV_CONST @@ -373,13 +446,16 @@ #define PACKAGE_NAME "GNU Awk" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "GNU Awk 3.1.2" +#define PACKAGE_STRING "GNU Awk 3.1.4c" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "gawk" /* Define to the version of this package. */ -#define PACKAGE_VERSION "3.1.2" +#define PACKAGE_VERSION "3.1.4c" + +/* Define to 1 if *printf supports %F format */ +#undef PRINTF_HAS_F_FORMAT /* Define if exists and defines unusable PRI* macros. */ #undef PRI_MACROS_BROKEN @@ -387,12 +463,19 @@ /* Define if compiler has function prototypes */ #define PROTOTYPES 1 -/* use malloc instead of alloca in regex.c */ -#define REGEX_MALLOC 1 - /* Define as the return type of signal handlers (`int' or `void'). */ #define RETSIGTYPE void +/* The size of a `unsigned int', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_INT 4 + +/* The size of a `unsigned long', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_LONG 4 + +/* Define as the maximum value of type 'size_t', if the system doesn't define + it. */ +#define SIZE_MAX 0xffffffffUL + /* return type of sprintf */ #define SPRINTF_RET int @@ -423,7 +506,7 @@ #define USE_INCLUDED_STRFTIME 1 /* Version number of package */ -#define VERSION "3.1.2" +#define VERSION "3.1.4" /* Define to 1 if on AIX 3. System headers sometimes define this. @@ -453,15 +536,20 @@ # undef __CHAR_UNSIGNED__ #endif +/* Define like PROTOTYPES; this can be used by system headers. */ +#define __PROTOTYPES 1 + /* Define to empty if `const' does not conform to ANSI C. */ #undef const /* Define to `int' if doesn't define. */ #undef gid_t -/* Define as `__inline' if that's what the C compiler calls it, or to nothing - if it is not supported. */ +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus #undef inline +#endif /* Define to widest signed type if doesn't define. */ #define intmax_t long int @@ -472,6 +560,13 @@ /* Define to `int' if doesn't define. */ #undef pid_t +/* Define as the type of the result of subtracting two pointers, if the system + doesn't define it. */ +#undef ptrdiff_t + +/* Define to empty if the C compiler doesn't support this keyword. */ +#undef signed + /* Define to `unsigned' if doesn't define. */ #undef size_t @@ -481,7 +576,8 @@ /* Define to `int' if doesn't define. */ #undef uid_t -/* Define to widest unsigned type if doesn't define. */ +/* Define to unsigned long or unsigned long long if and + don't define. */ #define uintmax_t unsigned long #if 0 @@ -520,9 +616,15 @@ #define PIPES_SIMULATED 1 /* - * %g format in VAXCRTL is broken (chooses %e format when should use %f). + * VAXCRTL is pre-ANSI and does some variations of numeric formatting + * differently than gawk expects. */ +#if defined(VAX) && !defined(__DECC) +/* '0' format modifier for %e,%f,%g gives wrong results in many cases */ +#define VAXCRTL +/* %g format chooses %e format when should use %f */ #define GFMT_WORKAROUND 1 +#endif /* * VAX C @@ -534,10 +636,14 @@ #if defined(VAXC) && !defined(__STDC__) #define __STDC__ 0 #define NO_TOKEN_PASTING +#define signed /*empty*/ +#define inline /*empty*/ #ifndef __DECC /* DEC C does not support #pragma builtins even in VAXC mode */ #define VAXC_BUILTINS #endif /* #define YYDEBUG 0 */ +#define NO_MBSUPPORT /* VAX C's preprocessor can't handle mbsupport.h */ +#define RE_TOKEN_INIT_BUG /* regcomp.c */ #endif /* @@ -562,6 +668,11 @@ # undef __CRTL_VER # define __CRTL_VER 60100000 #endif +#if __DECC_VER >= 60400000 && !defined(DEBUG) +/* disable "new feature in C99" diagnostics (for regex code); + NEWC99 ought to suffice but doesn't (at least in V6.4) */ +#pragma message disable (NEWC99,DESIGNATORUSE) +#endif #endif /* __DECC */ /* diff -urN gawk-3.1.4/vms/vms_args.c gawk-3.1.5/vms/vms_args.c --- gawk-3.1.4/vms/vms_args.c 2002-07-25 07:28:01.000000000 +0300 +++ gawk-3.1.5/vms/vms_args.c 2005-05-11 18:28:19.000000000 +0300 @@ -15,7 +15,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ /* * [.vms]vms_arg_fixup - emulate shell's command line processing: handle diff -urN gawk-3.1.4/vms/vms_fwrite.c gawk-3.1.5/vms/vms_fwrite.c --- gawk-3.1.4/vms/vms_fwrite.c 2001-04-09 13:29:31.000000000 +0300 +++ gawk-3.1.5/vms/vms_fwrite.c 2005-05-11 18:28:19.000000000 +0300 @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "awk.h" /* really "../awk.h" */ diff -urN gawk-3.1.4/vms/vms_gawk.c gawk-3.1.5/vms/vms_gawk.c --- gawk-3.1.4/vms/vms_gawk.c 2003-02-25 12:24:15.000000000 +0200 +++ gawk-3.1.5/vms/vms_gawk.c 2005-05-25 20:33:40.000000000 +0300 @@ -1,6 +1,6 @@ /* vms_gawk.c -- parse GAWK command line using DCL syntax - Copyright (C) 1991-1993, 1996, 2003 the Free Software Foundation, Inc. + Copyright (C) 1991-1993, 1996, 2003, 2005 the Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ /* @@ -36,8 +36,17 @@ #define Present(arg) vmswork(Cli_Present(arg)) #define Get_Value(arg,buf,siz) vmswork(Cli_Get_Value(arg,buf,siz)) +#ifndef __ia64__ extern void gawk_cmd(); /* created with $ SET COMMAND/OBJECT */ #define GAWK_CMD ((const void *)gawk_cmd) +#else /* linker on Itanium is much pickier about such things */ +#pragma extern_model save +#pragma extern_model strict_refdef +/* (could use globalvalue rather than _refdef if we omit GAWK_CMD's `&') */ +extern void *gawk_cmd; +#pragma extern_model restore +#define GAWK_CMD ((const void *)&gawk_cmd) +#endif extern void _exit(int); static int vms_usage(int); diff -urN gawk-3.1.4/vms/vms_misc.c gawk-3.1.5/vms/vms_misc.c --- gawk-3.1.4/vms/vms_misc.c 2003-02-04 12:35:40.000000000 +0200 +++ gawk-3.1.5/vms/vms_misc.c 2005-05-11 18:28:19.000000000 +0300 @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #define creat creat_dummy /* one of gcc-vms's headers has bad prototype */ #include "awk.h" diff -urN gawk-3.1.4/vms/vms_popen.c gawk-3.1.5/vms/vms_popen.c --- gawk-3.1.4/vms/vms_popen.c 1997-06-04 19:38:29.000000000 +0300 +++ gawk-3.1.5/vms/vms_popen.c 2005-05-11 18:28:19.000000000 +0300 @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef NO_VMS_PIPES diff -urN gawk-3.1.4/vms/vmsbuild.com gawk-3.1.5/vms/vmsbuild.com --- gawk-3.1.4/vms/vmsbuild.com 2004-07-28 16:50:46.000000000 +0300 +++ gawk-3.1.5/vms/vmsbuild.com 2005-07-26 21:43:14.000000000 +0300 @@ -9,7 +9,7 @@ $! gawk 3.1.1 revised, Apr'02 $! $ REL = "3.1" !release version number -$ PATCHLVL = "4" +$ PATCHLVL = "5" $! $! $ CCFLAGS = "/noList" ! "/noOpt/Debug" diff -urN gawk-3.1.4/vms/vmstest.com gawk-3.1.5/vms/vmstest.com --- gawk-3.1.4/vms/vmstest.com 2004-06-15 14:17:24.000000000 +0300 +++ gawk-3.1.5/vms/vmstest.com 2005-05-25 20:33:40.000000000 +0300 @@ -51,7 +51,17 @@ + " psx96sub addcomma" $ basic_lst3 = "rebt8b1 rebt8b2 leadnl funsemnl ofmtfidl" - + " onlynl arrymem1 compare2 minusstr membug1 forsimp" - - + " concat1 longsub" + + " concat1 longsub arrayprm2 arrayprm3 arryref2" - + + " arryref3 arryref4 arryref5 aryprm1 aryprm2 aryprm3" - + + " aryprm4 aryprm5 aryprm6 aryprm7 aryprm8 concat2" - + + " concat3 delarpm2 delfunc exitval2 fmttest fnarray2" - + + " fnmisc fordel getline getline3 gsubasgn gsubtest" - + + " gsubtst2 gsubtst4 gsubtst5 hex inputred iobug1" +$ basic_lst4 = "manglprm nested nfneg noloop1 noloop2" - + + " nulrsend prec prtoeval rstest1 rstest2 rstest3" - + + " rstest4 rstest5 scalar sortempty splitarr strcat1" - + + " subsepnm synerr1 uninit2 uninit3 uninit4" - + + " uninitialized unterm wjposer1 zeroe0" $ echo "basic" $basic_loop1: basic_test = f$element(0," ",basic_lst1) $ basic_lst1 = basic_lst1 - basic_test - " " @@ -65,6 +75,10 @@ $ basic_lst3 = basic_lst3 - basic_test - " " $ if basic_test.nes." " then gosub 'basic_test' $ if basic_lst3.nes."" then goto basic_loop3 +$basic_loop4: basic_test = f$element(0," ",basic_lst4) +$ basic_lst4 = basic_lst4 - basic_test - " " +$ if basic_test.nes." " then gosub 'basic_test' +$ if basic_lst4.nes."" then goto basic_loop4 $ return $ $unix_tests: unix_tst_list = "fflush getlnhd pid pipeio1" - @@ -1212,6 +1226,430 @@ $ if $status then rm tmp.; $ return $ +$arrayprm2: echo "arrayprm2" +$ gawk -f arrayprm2.awk arrayprm2.in >tmp. +$ cmp arrayprm2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$arrayprm3: echo "arrayprm3" +$ gawk -f arrayprm3.awk arrayprm3.in >tmp. +$ cmp arrayprm3.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$arryref2: echo "arryref2" +$ gawk -f arryref2.awk arryref2.in >tmp. +$ cmp arryref2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$arryref3: echo "arryref3" +$ set noOn +$ gawk -f arryref3.awk arryref3.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp arryref3.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$arryref4: echo "arryref4" +$ set noOn +$ gawk -f arryref4.awk arryref4.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp arryref4.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$arryref5: echo "arryref5" +$ set noOn +$ gawk -f arryref5.awk arryref5.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp arryref5.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$aryprm1: echo "aryprm1" +$ set noOn +$ gawk -f aryprm1.awk aryprm1.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp aryprm1.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$aryprm2: echo "aryprm2" +$ set noOn +$ gawk -f aryprm2.awk aryprm2.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp aryprm2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$aryprm3: echo "aryprm3" +$ set noOn +$ gawk -f aryprm3.awk aryprm3.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp aryprm3.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$aryprm4: echo "aryprm4" +$ set noOn +$ gawk -f aryprm4.awk aryprm4.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp aryprm4.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$aryprm5: echo "aryprm5" +$ set noOn +$ gawk -f aryprm5.awk aryprm5.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp aryprm5.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$aryprm6: echo "aryprm6" +$ set noOn +$ gawk -f aryprm6.awk aryprm6.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp aryprm6.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$aryprm7: echo "aryprm7" +$ set noOn +$ gawk -f aryprm7.awk aryprm7.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp aryprm7.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$aryprm8: echo "aryprm8" +$ gawk -f aryprm8.awk aryprm8.in >tmp. +$ cmp aryprm8.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$concat2: echo "concat2" +$ gawk -f concat2.awk concat2.in >tmp. +$ cmp concat2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$concat3: echo "concat3" +$ gawk -f concat3.awk concat3.in >tmp. +$ cmp concat3.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$delarpm2: echo "delarpm2" +$ gawk -f delarpm2.awk delarpm2.in >tmp. +$ cmp delarpm2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$delfunc: echo "delfunc" +$ set noOn +$ gawk -f delfunc.awk delfunc.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp delfunc.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$exitval2: echo "exitval2 skipped" +$ return +$!!exitval2: echo "exitval2" +$ gawk -f exitval2.awk exitval2.in >tmp. +$ cmp exitval2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$fmttest: echo "fmttest" +$ gawk -f fmttest.awk fmttest.in >tmp. +$ cmp fmttest.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$fnarray2: echo "fnarray2" +$ set noOn +$ gawk -f fnarray2.awk fnarray2.in >tmp. 2>&1 +$ if .not.$status then call exit_code 1 +$ set On +$ cmp fnarray2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$fnmisc: echo "fnmisc" +$ set noOn +$ gawk -f fnmisc.awk fnmisc.in >tmp. 2>&1 +$ if .not.$status then call exit_code 1 +$ set On +$ cmp fnmisc.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$fordel: echo "fordel" +$ gawk -f fordel.awk fordel.in >tmp. +$ cmp fordel.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$getline: echo "getline skipped" +$ return +$!!getline: echo "getline" +$ gawk -f getline.awk getline.in >tmp. +$ cmp getline.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$getline3: echo "getline3" +$ gawk -f getline3.awk getline3.in >tmp. +$ cmp getline3.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$gsubasgn: echo "gsubasgn" +$ set noOn +$ gawk -f gsubasgn.awk gsubasgn.in >tmp. 2>&1 +$ if .not.$status then call exit_code 1 +$ set On +$ cmp gsubasgn.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$gsubtest: echo "gsubtest" +$ gawk -f gsubtest.awk gsubtest.in >tmp. +$ cmp gsubtest.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$gsubtst2: echo "gsubtst2" +$ gawk -f gsubtst2.awk gsubtst2.in >tmp. +$ cmp gsubtst2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$gsubtst3: echo "gsubtst3" +$ gawk --re-interval -f gsubtst3.awk gsubtst3.in >tmp. +$ cmp gsubtst3.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$gsubtst4: echo "gsubtst4" +$ gawk -f gsubtst4.awk gsubtst4.in >tmp. +$ cmp gsubtst4.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$gsubtst5: echo "gsubtst5" +$ gawk -f gsubtst5.awk gsubtst5.in >tmp. +$ cmp gsubtst5.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$hex: echo "hex" +$ gawk -f hex.awk hex.in >tmp. +$ cmp hex.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$inputred: echo "inputred" +$ gawk -f inputred.awk inputred.in >tmp. +$ cmp inputred.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$iobug1: echo "iobug1" +$ cat = "TYPE sys$input:" +$ true = "exit 1" !success +$ gawk -f iobug1.awk iobug1.in >tmp. +$ cmp iobug1.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$manglprm: echo "manglprm" +$ gawk -f manglprm.awk manglprm.in >tmp. +$ cmp manglprm.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$nested: echo "nested" +$ gawk -f nested.awk nested.in >tmp. +$ cmp nested.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$nfneg: echo "nfneg" +$ set noOn +$ gawk -f nfneg.awk nfneg.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp nfneg.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$noloop1: echo "noloop1" +$ gawk -f noloop1.awk noloop1.in >tmp. +$ cmp noloop1.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$noloop2: echo "noloop2" +$ gawk -f noloop2.awk noloop2.in >tmp. +$ cmp noloop2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$nulrsend: echo "nulrsend" +$ gawk -f nulrsend.awk nulrsend.in >tmp. +$ cmp nulrsend.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$prec: echo "prec" +$ gawk -f prec.awk prec.in >tmp. +$ cmp prec.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$prtoeval: echo "prtoeval" +$ gawk -f prtoeval.awk prtoeval.in >tmp. +$ cmp prtoeval.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$rstest1: echo "rstest1" +$ gawk -f rstest1.awk rstest1.in >tmp. +$ cmp rstest1.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$rstest2: echo "rstest2" +$ gawk -f rstest2.awk rstest2.in >tmp. +$ cmp rstest2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$rstest3: echo "rstest3" +$ gawk -f rstest3.awk rstest3.in >tmp. +$ cmp rstest3.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$rstest4: echo "rstest4 skipped" +$ return +$!!rstest4: echo "rstest4" +$ gawk -f rstest4.awk rstest4.in >tmp. +$ cmp rstest4.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$rstest5: echo "rstest5 skipped" +$ return +$!!rstest5: echo "rstest5" +$ gawk -f rstest5.awk rstest5.in >tmp. +$ cmp rstest5.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$scalar: echo "scalar" +$ set noOn +$ gawk -f scalar.awk scalar.in >tmp. 2>&1 +$ if .not.$status then call exit_code 2 +$ set On +$ cmp scalar.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$sortempty: echo "sortempty" +$ gawk -f sortempty.awk sortempty.in >tmp. +$ cmp sortempty.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$splitarr: echo "splitarr" +$ gawk -f splitarr.awk splitarr.in >tmp. +$ cmp splitarr.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$strcat1: echo "strcat1" +$ gawk -f strcat1.awk strcat1.in >tmp. +$ cmp strcat1.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$subsepnm: echo "subsepnm" +$ gawk -f subsepnm.awk subsepnm.in >tmp. +$ cmp subsepnm.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$synerr1: echo "synerr1" +$ set noOn +$ gawk -f synerr1.awk synerr1.in >tmp. 2>&1 +$ if .not.$status then call exit_code 1 +$ set On +$ cmp synerr1.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$uninitialized: echo "uninitialized" +$ gawk --lint -f uninitialized.awk uninitialized.in >tmp. 2>&1 +$ cmp uninitialized.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$uninit2: echo "uninit2" +$ gawk --lint -f uninit2.awk uninit2.in >tmp. 2>&1 +$ cmp uninit2.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$uninit3: echo "uninit3" +$ gawk --lint -f uninit3.awk uninit3.in >tmp. 2>&1 +$ cmp uninit3.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$uninit4: echo "uninit4" +$ gawk --lint -f uninit4.awk uninit4.in >tmp. 2>&1 +$ cmp uninit4.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$unterm: echo "unterm" +$ set noOn +$ gawk -f unterm.awk unterm.in >tmp. 2>&1 +$ if .not.$status then call exit_code 1 +$ set On +$ cmp unterm.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$wjposer1: echo "wjposer1" +$ gawk -f wjposer1.awk wjposer1.in >tmp. +$ cmp wjposer1.ok tmp. +$ if $status then rm tmp.; +$ return +$ +$zeroe0: echo "zeroe0" +$ gawk -f zeroe0.awk zeroe0.in >tmp. +$ cmp zeroe0.ok tmp. +$ if $status then rm tmp.; +$ return +$ $vms_io1: echo "vms_io1" $ if f$search("vms_io1.ok").eqs."" $ then create vms_io1.ok diff -urN gawk-3.1.4/ylwrap gawk-3.1.5/ylwrap --- gawk-3.1.4/ylwrap 2004-06-21 16:38:34.000000000 +0300 +++ gawk-3.1.5/ylwrap 2005-05-11 18:28:19.000000000 +0300 @@ -1,9 +1,9 @@ #! /bin/sh # ylwrap - wrapper for lex/yacc invocations. -scriptversion=2003-11-18.20 +scriptversion=2005-02-02.22 -# Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003 +# Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # # Written by Tom Tromey . @@ -20,7 +20,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -56,11 +56,11 @@ Report bugs to . EOF - exit 0 + exit $? ;; -v|--v*) echo "ylwrap $scriptversion" - exit 0 + exit $? ;; esac @@ -109,9 +109,9 @@ 0) $prog "$input" ;; *) $prog "$@" "$input" ;; esac -status=$? +ret=$? -if test $status -eq 0; then +if test $ret -eq 0; then set X $pairlist shift first=yes @@ -177,7 +177,7 @@ -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'` sed -e "/^#/!b" -e "s,$input_rx,," -e "s,$from,$2," \ - -e "s,$FROM,$TARGET," "$from" >"$target" || status=$? + -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$? # Check whether header files must be updated. if test $first = no; then @@ -195,7 +195,7 @@ # is not specified, we don't want an error when the header # file is "missing". if test $first = yes; then - status=1 + ret=1 fi fi shift @@ -203,14 +203,14 @@ first=no done else - status=$? + ret=$? fi # Remove the directory. cd .. rm -rf $dirname -exit $status +exit $ret # Local Variables: # mode: shell-script EOF # Final cleanup echo Sleeping and touching files to update timestamps. # touch list of zero length files touch test/iobug1.ok sleep 2 touch aclocal.m4 configh.in test/Makefile.in touch awklib/Makefile.in doc/Makefile.in Makefile.in sleep 2 touch configure version.c echo Remove any .orig or "'~'" files that may remain. echo Use '"configure && make"' to rebuild any dependent files. echo Use "'make distclean'" to clean up.