9 char *q = memmem(p, strlen(p), sub, strlen(sub)); \
11 t_error("memmem(%s,%s) returned str+%d, wanted 0\n", #s, #sub, q-p); \
14 #define T(s, sub, n) { \
16 char *q = memmem(p, strlen(p), sub, strlen(sub)); \
18 t_error("memmem(%s,%s) returned 0, wanted str+%d\n", #s, #sub, n); \
19 else if (q - p != n) \
20 t_error("memmem(%s,%s) returned str+%d, wanted str+%d\n", #s, #sub, q-p, n); \
32 N("0-1-2-3-4-5-6-7-8-9", "-3-4-56-7-8-")
33 N("0-1-2-3-4-5-6-7-8-9", "-3-4-5+6-7-8-")
34 N("_ _ _\xff_ _ _", "_\x7f_")
35 N("_ _ _\x7f_ _ _", "_\xff_")
47 T("ababab", "babab", 1)
48 T("abababa", "bababa", 1)
49 T("abababab", "bababab", 1)
50 T("ababababa", "babababa", 1)
51 T("nanabanabanana", "aba", 3)
52 T("nanabanabanana", "ban", 4)
53 T("nanabanabanana", "anab", 1)
54 T("nanabanabanana", "banana", 8)
55 T("_ _\xff_ _", "_\xff_", 2)