xref: /freebsd/contrib/one-true-awk/bugs-fixed/subsep-overflow.awk (revision 2e3507c25e42292b45a5482e116d278f5515d04d)
1function foo(c, n) {
2    s = "";
3    for (i = 0; i < n; i++) {
4        s = s c;
5    }
6    return s;
7}
8
9BEGIN {
10    str1 = foo("a", 4500);
11    str2 = foo("b", 9000);
12
13    a[(SUBSEP = str1), (SUBSEP = str2), "c"] = 1;
14
15    for (k in a) {
16        print length(k);
17    }
18
19    print (((SUBSEP = str1), (SUBSEP = str2), "c") in a);
20    print (((SUBSEP = str1) SUBSEP (SUBSEP = str2) SUBSEP "c") in a);
21    delete a[(SUBSEP = str1), (SUBSEP = str2), "c"];
22    print (((SUBSEP = str1), (SUBSEP = str2), "c") in a);
23    print (((SUBSEP = str1) SUBSEP (SUBSEP = str2) SUBSEP "c") in a);
24}
25