Lines Matching +full:- +full:a
2 * Copyright © 2005-2020 Rich Felker
5 * a copy of this software and associated documentation files (the
17 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
30 /* adapted from dietlibc's test-newfnmatch.c */
58 for (; map->str; map++) { in printflags()
59 if (map->val && (flags & map->val) == map->val) { in printflags()
60 printf("%s%s", sep, map->str); in printflags()
62 flags &= ~(map->val); in printflags()
80 { "*.a", "foo.c", 0, FNM_NOMATCH },
84 { "a\\*.c", "a*.c", FNM_NOESCAPE, FNM_NOMATCH },
85 { "a\\*.c", "ax.c", 0, FNM_NOMATCH },
86 { "a[xy].c", "ax.c", 0, 0 },
87 { "a[!y].c", "ax.c", 0, 0 },
88 { "a[a/z]*.c", "a/x.c", FNM_PATHNAME, FNM_NOMATCH },
89 { "a/*.c", "a/x.c", FNM_PATHNAME, 0 },
90 { "a*.c", "a/x.c", FNM_PATHNAME, FNM_NOMATCH },
92 { "-O[01]", "-O1", 0, 0 },
95 /* initial right-bracket tests */
96 { "[!]a-]", "b", 0, 0 },
97 { "[]-_]", "^", 0, 0 }, /* range: ']', '^', '_' */
98 { "[!]-_]", "X", 0, 0 },
99 { "??", "-", 0, FNM_NOMATCH },
102 { "a[/]b", "a/b", 0, 0 },
103 { "a[/]b", "a/b", FNM_PATHNAME, FNM_NOMATCH },
104 { "[a-z]/[a-z]", "a/b", 0, 0 },
105 { "*", "a/b", FNM_PATHNAME, FNM_NOMATCH },
106 { "*[/]b", "a/b", FNM_PATHNAME, FNM_NOMATCH },
107 { "*[b]", "a/b", FNM_PATHNAME, FNM_NOMATCH },
108 { "[*]/b", "a/b", 0, FNM_NOMATCH },
110 { "[?]/b", "a/b", 0, FNM_NOMATCH },
112 { "[[a]/b", "a/b", 0, 0 },
113 { "[[a]/b", "[/b", 0, 0 },
114 { "\\*/b", "a/b", 0, FNM_NOMATCH },
116 { "\\?/b", "a/b", 0, FNM_NOMATCH },
123 { "?a/b", ".a/b", FNM_PATHNAME|FNM_PERIOD, FNM_NOMATCH },
124 { "a/?b", "a/.b", FNM_PATHNAME|FNM_PERIOD, FNM_NOMATCH },
125 { "*a/b", ".a/b", FNM_PATHNAME|FNM_PERIOD, FNM_NOMATCH },
126 { "a/*b", "a/.b", FNM_PATHNAME|FNM_PERIOD, FNM_NOMATCH },
127 { "[.]a/b", ".a/b", FNM_PATHNAME|FNM_PERIOD, FNM_NOMATCH },
128 { "a/[.]b", "a/.b", FNM_PATHNAME|FNM_PERIOD, FNM_NOMATCH },
129 { "*/?", "a/b", FNM_PATHNAME|FNM_PERIOD, 0 },
130 { "?/*", "a/b", FNM_PATHNAME|FNM_PERIOD, 0 },
131 { ".*/?", ".a/b", FNM_PATHNAME|FNM_PERIOD, 0 },
132 { "*/.?", "a/.b", FNM_PATHNAME|FNM_PERIOD, 0 },
133 { "*/*", "a/.b", FNM_PATHNAME|FNM_PERIOD, FNM_NOMATCH },
134 { "*?*/*", "a/.b", FNM_PERIOD, 0 },
135 { "*[.]/b", "a./b", FNM_PATHNAME|FNM_PERIOD, 0 },
137 { "*[[:alpha:]]/*[[:alnum:]]", "a/b", FNM_PATHNAME, 0 },
142 { "*[![:digit:]]*/[![:d-d]", "a/b", FNM_PATHNAME, -FNM_NOMATCH },
143 { "*[![:digit:]]*/[[:d-d]", "a/[", FNM_PATHNAME, -FNM_NOMATCH },
144 { "*[![:digit:]]*/[![:d-d]", "a/[", FNM_PATHNAME, -FNM_NOMATCH },
146 { "a?b", "a.b", FNM_PATHNAME|FNM_PERIOD, 0 },
147 { "a*b", "a.b", FNM_PATHNAME|FNM_PERIOD, 0 },
148 { "a[.]b", "a.b", FNM_PATHNAME|FNM_PERIOD, 0 },
160 if (r != x && (r != FNM_NOMATCH || x != -FNM_NOMATCH)) { in test_fnmatch()
162 printf("fail - fnmatch(\"%s\", \"%s\", ", in test_fnmatch()