aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/ChangeLog27
-rw-r--r--test/Makefile.am27
-rw-r--r--test/Makefile.in32
-rw-r--r--test/Maketests5
-rw-r--r--test/dbugtypedre1.awk (renamed from test/dbugtypedre.awk)0
-rw-r--r--test/dbugtypedre1.in (renamed from test/dbugtypedre.in)0
-rw-r--r--test/dbugtypedre1.ok (renamed from test/dbugtypedre.ok)6
-rw-r--r--test/dbugtypedre2.awk1
-rw-r--r--test/dbugtypedre2.in4
-rw-r--r--test/dbugtypedre2.ok15
-rw-r--r--test/getfile.ok8
-rw-r--r--test/id.ok1
-rw-r--r--test/typedregex1.awk2
-rw-r--r--test/typedregex2.awk11
-rw-r--r--test/typedregex2.ok4
-rw-r--r--test/typeof1.ok6
-rw-r--r--test/typeof3.ok6
17 files changed, 124 insertions, 31 deletions
diff --git a/test/ChangeLog b/test/ChangeLog
index b92d8ae7..f29dea72 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,30 @@
+2015-06-28 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (typedregex2): New test.
+ * typedregex2.awk, typedregex2.ok: New files.
+ Thanks to Hermann Peifer for the report.
+
+2015-06-26 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (dbugtypedre1): Renamed from dbugtypedre.
+ (dbugtypedre2): New test.
+ * dbugtypedre1.awk, dbugtypedre1.in, dbugtypedre1.ok: Renamed files.
+ * dbugtypedre2.awk, dbugtypedre2.in, dbugtypedre2.ok: New files.
+
+ Unrelated:
+
+ * id.ok: Update after code changes.
+
+ Unrelated:
+
+ * Makefile.am (getfile, dbugtypedre1, dbugtypedre2): Fixed to
+ work if building out of the source tree.
+
+ Unrelated:
+
+ * dbugtypedre1.ok, typedregex1.awk, typeof1.ok, typeof3.ok:
+ Update after code changes.
+
2015-06-25 Arnold D. Robbins <arnold@skeeve.com>
* Makefile.am (negtime): Fix out-of-tree test run.
diff --git a/test/Makefile.am b/test/Makefile.am
index 03d28f21..df1f1e2c 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -177,9 +177,12 @@ EXTRA_DIST = \
datanonl.ok \
dbugeval.in \
dbugeval.ok \
- dbugtypedre.awk \
- dbugtypedre.in \
- dbugtypedre.ok \
+ dbugtypedre1.awk \
+ dbugtypedre1.in \
+ dbugtypedre1.ok \
+ dbugtypedre2.awk \
+ dbugtypedre2.in \
+ dbugtypedre2.ok \
defref.awk \
defref.ok \
delargv.awk \
@@ -986,6 +989,8 @@ EXTRA_DIST = \
tweakfld.ok \
typedregex1.awk \
typedregex1.ok \
+ typedregex2.awk \
+ typedregex2.ok \
typeof1.awk \
typeof1.ok \
typeof2.awk \
@@ -1088,7 +1093,8 @@ UNIX_TESTS = \
GAWK_EXT_TESTS = \
aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort \
backw badargs beginfile1 beginfile2 binmode1 charasbytes \
- colonwarn clos1way crlf dbugeval dbugtypedre delsub devfd devfd1 devfd2 dumpvars errno exit \
+ colonwarn clos1way crlf dbugeval dbugtypedre1 dbugtypedre2 delsub \
+ devfd devfd1 devfd2 dumpvars errno exit \
fieldwdth fpat1 fpat2 fpat3 fpat4 fpatnull fsfwfs funlen \
functab1 functab2 functab3 fwtest fwtest2 fwtest3 \
genpot gensub gensub2 getlndir gnuops2 gnuops3 gnureops gsubind \
@@ -1108,7 +1114,7 @@ GAWK_EXT_TESTS = \
splitarg4 strftime \
strtonum switch2 symtab1 symtab2 symtab3 symtab4 symtab5 symtab6 \
symtab7 symtab8 symtab9 \
- typedregex1 typeof1 typeof2 typeof3 typeof4
+ typedregex1 typedregex2 typeof1 typeof2 typeof3 typeof4
timeout
EXTRA_TESTS = inftest regtest
@@ -1996,7 +2002,7 @@ testext::
getfile:
@echo $@
- @$(AWK) -v TESTEXT_QUIET=1 -ltestext -f $(srcdir)/$@.awk $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @AWKPATH="$(srcdir)" $(AWK) -v TESTEXT_QUIET=1 -ltestext -f $@.awk < $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
readdir:
@@ -2135,9 +2141,14 @@ negtime::
@TZ=GMT AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@AWKPATH="$(srcdir)" $(AWK) -f checknegtime.awk "$(srcdir)"/$@.ok _$@ && rm -f _$@
-dbugtypedre:
+dbugtypedre1:
@echo $@
- @AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk < $@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
+dbugtypedre2:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
# Targets generated for other tests:
diff --git a/test/Makefile.in b/test/Makefile.in
index 294c60c0..ec270c1b 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -434,9 +434,12 @@ EXTRA_DIST = \
datanonl.ok \
dbugeval.in \
dbugeval.ok \
- dbugtypedre.awk \
- dbugtypedre.in \
- dbugtypedre.ok \
+ dbugtypedre1.awk \
+ dbugtypedre1.in \
+ dbugtypedre1.ok \
+ dbugtypedre2.awk \
+ dbugtypedre2.in \
+ dbugtypedre2.ok \
defref.awk \
defref.ok \
delargv.awk \
@@ -1243,6 +1246,8 @@ EXTRA_DIST = \
tweakfld.ok \
typedregex1.awk \
typedregex1.ok \
+ typedregex2.awk \
+ typedregex2.ok \
typeof1.awk \
typeof1.ok \
typeof2.awk \
@@ -1344,7 +1349,8 @@ UNIX_TESTS = \
GAWK_EXT_TESTS = \
aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort \
backw badargs beginfile1 beginfile2 binmode1 charasbytes \
- colonwarn clos1way crlf dbugeval dbugtypedre delsub devfd devfd1 devfd2 dumpvars errno exit \
+ colonwarn clos1way crlf dbugeval dbugtypedre1 dbugtypedre2 delsub \
+ devfd devfd1 devfd2 dumpvars errno exit \
fieldwdth fpat1 fpat2 fpat3 fpat4 fpatnull fsfwfs funlen \
functab1 functab2 functab3 fwtest fwtest2 fwtest3 \
genpot gensub gensub2 getlndir gnuops2 gnuops3 gnureops gsubind \
@@ -1364,7 +1370,7 @@ GAWK_EXT_TESTS = \
splitarg4 strftime \
strtonum switch2 symtab1 symtab2 symtab3 symtab4 symtab5 symtab6 \
symtab7 symtab8 symtab9 \
- typedregex1 typeof1 typeof2 typeof3 typeof4
+ typedregex1 typedregex2 typeof1 typeof2 typeof3 typeof4
EXTRA_TESTS = inftest regtest
INET_TESTS = inetdayu inetdayt inetechu inetecht
@@ -2433,7 +2439,7 @@ testext::
getfile:
@echo $@
- @$(AWK) -v TESTEXT_QUIET=1 -ltestext -f $(srcdir)/$@.awk $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @AWKPATH="$(srcdir)" $(AWK) -v TESTEXT_QUIET=1 -ltestext -f $@.awk < $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
readdir:
@@ -2571,9 +2577,14 @@ negtime::
@TZ=GMT AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@AWKPATH="$(srcdir)" $(AWK) -f checknegtime.awk "$(srcdir)"/$@.ok _$@ && rm -f _$@
-dbugtypedre:
+dbugtypedre1:
@echo $@
- @AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk < $@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
+dbugtypedre2:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
Gt-dummy:
# file Maketests, generated from Makefile.am by the Gentests program
@@ -3914,6 +3925,11 @@ typedregex1:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+typedregex2:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
typeof1:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/Maketests b/test/Maketests
index e4cea0de..462128ea 100644
--- a/test/Maketests
+++ b/test/Maketests
@@ -1337,6 +1337,11 @@ typedregex1:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+typedregex2:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
typeof1:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/dbugtypedre.awk b/test/dbugtypedre1.awk
index b8c0b6d7..b8c0b6d7 100644
--- a/test/dbugtypedre.awk
+++ b/test/dbugtypedre1.awk
diff --git a/test/dbugtypedre.in b/test/dbugtypedre1.in
index 00158c65..00158c65 100644
--- a/test/dbugtypedre.in
+++ b/test/dbugtypedre1.in
diff --git a/test/dbugtypedre.ok b/test/dbugtypedre1.ok
index de3c8bcd..dffee0e8 100644
--- a/test/dbugtypedre.ok
+++ b/test/dbugtypedre1.ok
@@ -1,10 +1,10 @@
Watchpoint 1: e
Starting program:
-scalar_n
+number
untyped
regexp
-scalar_s
-array scalar_n
+string
+array number
Stopping in BEGIN ...
Watchpoint 1: e
Old value: untyped variable
diff --git a/test/dbugtypedre2.awk b/test/dbugtypedre2.awk
new file mode 100644
index 00000000..a78de32b
--- /dev/null
+++ b/test/dbugtypedre2.awk
@@ -0,0 +1 @@
+BEGIN { x = 0; x = @/[a-z]/; x = "" }
diff --git a/test/dbugtypedre2.in b/test/dbugtypedre2.in
new file mode 100644
index 00000000..d01ce5a5
--- /dev/null
+++ b/test/dbugtypedre2.in
@@ -0,0 +1,4 @@
+w x
+ r
+ n
+ n
diff --git a/test/dbugtypedre2.ok b/test/dbugtypedre2.ok
new file mode 100644
index 00000000..9c04e1e7
--- /dev/null
+++ b/test/dbugtypedre2.ok
@@ -0,0 +1,15 @@
+Watchpoint 1: x
+Starting program:
+Stopping in BEGIN ...
+Watchpoint 1: x
+ Old value: untyped variable
+ New value: 0
+main() at `dbugtypedre2.awk':1
+1 BEGIN { x = 0; x = @/[a-z]/; x = "" }
+Watchpoint 1: x
+ Old value: 0
+ New value: @/[a-z]/
+main() at `dbugtypedre2.awk':1
+1 BEGIN { x = 0; x = @/[a-z]/; x = "" }
+Program exited normally with exit value: 0
+EXIT CODE: 2
diff --git a/test/getfile.ok b/test/getfile.ok
index 92c915f2..1109a303 100644
--- a/test/getfile.ok
+++ b/test/getfile.ok
@@ -1,16 +1,16 @@
BEGIN
-gawk: ./getfile.awk:9: warning: cannot open unrecognized file type `<<' for `echo hello; echo goodbye'
+gawk: getfile.awk:9: warning: cannot open unrecognized file type `<<' for `echo hello; echo goodbye'
get_file: get_file(echo hello; echo goodbye, <<, -1) failed
expected error result 0
get_file returned 1
input_name echo hello; echo goodbye
1
hello
-BEGINFILE (getfile.awk) ERRNO ()
+BEGINFILE (-) ERRNO ()
get_file returned 1
-input_name getfile.awk
+input_name -
end BEGIN
-ENDFILE (getfile.awk) ERRNO ()
+ENDFILE (-) ERRNO ()
END
1
goodbye
diff --git a/test/id.ok b/test/id.ok
index 145869f1..ef68c426 100644
--- a/test/id.ok
+++ b/test/id.ok
@@ -57,7 +57,6 @@ an_array -> untyped
patsplit -> builtin
NR -> scalar
SUBSEP -> scalar
-extension -> builtin
i -> untyped
sub -> builtin
OFMT -> scalar
diff --git a/test/typedregex1.awk b/test/typedregex1.awk
index fc8ba805..f308a335 100644
--- a/test/typedregex1.awk
+++ b/test/typedregex1.awk
@@ -69,7 +69,7 @@ function simple_tests( fbre, numresult, strresult)
else
print "conversion to number: fail"
- if (typeof(fbre) == "scalar_n")
+ if (typeof(fbre) == "number")
print "typeof variable after conversion: ok"
else
print "typeof variable after conversion: fail"
diff --git a/test/typedregex2.awk b/test/typedregex2.awk
new file mode 100644
index 00000000..e17df4be
--- /dev/null
+++ b/test/typedregex2.awk
@@ -0,0 +1,11 @@
+BEGIN {
+ x = @/xxx/
+ y = @/yyy/
+ print typeof(x), typeof(y)
+ print x, y
+
+ x++
+ y = y ""
+ print typeof(x), typeof(y)
+ print x, y
+}
diff --git a/test/typedregex2.ok b/test/typedregex2.ok
new file mode 100644
index 00000000..832ef551
--- /dev/null
+++ b/test/typedregex2.ok
@@ -0,0 +1,4 @@
+regexp regexp
+xxx yyy
+number string
+1 yyy
diff --git a/test/typeof1.ok b/test/typeof1.ok
index 3a2f6a92..132cc24e 100644
--- a/test/typeof1.ok
+++ b/test/typeof1.ok
@@ -1,7 +1,7 @@
-scalar_n
+number
untyped
regexp
-scalar_s
-array scalar_n
+string
+array number
regexp
regexp
diff --git a/test/typeof3.ok b/test/typeof3.ok
index 8186ad9e..a6cd6c4a 100644
--- a/test/typeof3.ok
+++ b/test/typeof3.ok
@@ -1,9 +1,9 @@
regexp
xx
regexp
-scalar_n
+number
4
-scalar_n
-untyped
+number
+unassigned
gawk: typeof3.awk:18: fatal: attempt to use scalar `a["1"]' as an array
EXIT CODE: 2