aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--testcases-cons144
1 files changed, 144 insertions, 0 deletions
diff --git a/testcases-cons b/testcases-cons
index b2fce7f..c4f9cd8 100644
--- a/testcases-cons
+++ b/testcases-cons
@@ -415,3 +415,147 @@ brk
1
0
0
+--
+25:
+$cppawk '
+#include <cons.h>
+
+BEGIN {
+ print sexp(list())
+ print sexp(list(1))
+ print sexp(list(1, 2))
+ print sexp(list(1, 2, 3))
+ print sexp(list(1, 2, 3, 4))
+ print sexp(list(1, 2, 3, 4, 5))
+ print sexp(list(1, 2, 3, 4, 5, 6))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31))
+ print sexp(list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32))
+ print sexp(list(list(list(1, 2), list(3, 4)), list(list(5, 6), list(7, 8))))
+}'
+:
+nil
+(1)
+(1 2)
+(1 2 3)
+(1 2 3 4)
+(1 2 3 4 5)
+(1 2 3 4 5 6)
+(1 2 3 4 5 6 7)
+(1 2 3 4 5 6 7 8)
+(1 2 3 4 5 6 7 8 9)
+(1 2 3 4 5 6 7 8 9 10)
+(1 2 3 4 5 6 7 8 9 10 11)
+(1 2 3 4 5 6 7 8 9 10 11 12)
+(1 2 3 4 5 6 7 8 9 10 11 12 13)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31)
+(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32)
+(((1 2) (3 4)) ((5 6) (7 8)))
+--
+26:
+$cppawk '
+#include <cons.h>
+BEGIN {
+ list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
+}'
+:
+ERR
+--
+27:
+$cppawk '
+#include <cons.h>
+
+BEGIN {
+ print sexp(append())
+ print sexp(append(nil))
+ print sexp(append(1))
+ print sexp(append(list(1), 1))
+ print sexp(append(list(1), list(2), 3))
+ print sexp(append(list(1, 2), list(3, 4), list(5, 6, 7)))
+}'
+:
+nil
+nil
+1
+(1 . 1)
+(1 2 . 3)
+(1 2 3 4 5 6 7)
+--
+28:
+$cppawk '
+#include <cons.h>
+
+BEGIN {
+ print append(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil)
+}'
+:
+ERR
+--
+29:
+$cppawk '
+#include <cons.h>
+
+BEGIN {
+ print append(1, 2)
+}'
+:
+ERR
+--
+30:
+$cppawk --prepro-only '
+#include <cons.h>
+
+li(1)
+li(1, 2)
+li(1, 2, 3)
+listar(1)
+listar(1, 2)
+listar(1, 2, 3)
+' | $cppawk '/^__cons/,0'
+:
+__cons(1, "")
+__cons(1, __cons(2, ""))
+__cons(1, __cons(2, __cons(3, "")))
+1
+__cons(1, 2)
+__cons(1, __cons(2, 3))