OpenCoverage

array.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/bash/src/array.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8-
9-
10-
11-
12static char *array_to_string_internal (ARRAY_ELEMENT *, ARRAY_ELEMENT *, char *, int);-
13-
14static char *spacesep = " ";-
15ARRAY *-
16array_create()-
17{-
18 ARRAY *r;-
19 ARRAY_ELEMENT *head;-
20-
21 r = (ARRAY *)sh_xmalloc((sizeof(ARRAY)), "array.c", 86);-
22 r->type = array_indexed;-
23 r->max_index = -1;-
24 r->num_elements = 0;-
25 r->lastref = (ARRAY_ELEMENT *)0;-
26 head = array_create_element(-1, (char *)-
27 ((void *)0)-
28 );-
29 head->prev = head->next = head;-
30 r->head = head;-
31 return
executed 760887 times by 1 test: return(r);
Executed by:
  • Self test
(r);
executed 760887 times by 1 test: return(r);
Executed by:
  • Self test
760887
32}-
33-
34void-
35array_flush (a)-
36ARRAY *a;-
37{-
38 register ARRAY_ELEMENT *r, *r1;-
39-
40 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 722402 times by 1 test
Evaluated by:
  • Self test
)
0-722402
41 return;
never executed: return;
0
42 for (r = ((a->head)->next); r != a->head
r != a->headDescription
TRUEevaluated 734452 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 722402 times by 1 test
Evaluated by:
  • Self test
; ) {
722402-734452
43 r1 = ((r)->next);-
44 array_dispose_element(r);-
45 r = r1;-
46 }
executed 734452 times by 1 test: end of block
Executed by:
  • Self test
734452
47 a->head->next = a->head->prev = a->head;-
48 a->max_index = -1;-
49 a->num_elements = 0;-
50 a->lastref = 0;-
51}
executed 722402 times by 1 test: end of block
Executed by:
  • Self test
722402
52-
53void-
54array_dispose(a)-
55ARRAY *a;-
56{-
57 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 711728 times by 1 test
Evaluated by:
  • Self test
)
0-711728
58 return;
never executed: return;
0
59 array_flush (a);-
60 array_dispose_element(a->head);-
61 sh_xfree((a), "array.c", 124);-
62}
executed 711728 times by 1 test: end of block
Executed by:
  • Self test
711728
63-
64ARRAY *-
65array_copy(a)-
66ARRAY *a;-
67{-
68 ARRAY *a1;-
69 ARRAY_ELEMENT *ae, *new;-
70-
71 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 711168 times by 1 test
Evaluated by:
  • Self test
)
0-711168
72 return
never executed: return((ARRAY *) ((void *)0) );
((ARRAY *)
never executed: return((ARRAY *) ((void *)0) );
0
73 ((void *)0)
never executed: return((ARRAY *) ((void *)0) );
0
74 );
never executed: return((ARRAY *) ((void *)0) );
0
75 a1 = array_create();-
76 a1->type = a->type;-
77 a1->max_index = a->max_index;-
78 a1->num_elements = a->num_elements;-
79 for (ae = ((a->head)->next); ae != a->head
ae != a->headDescription
TRUEevaluated 712634 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 711168 times by 1 test
Evaluated by:
  • Self test
; ae = ((ae)->next)) {
711168-712634
80 new = array_create_element(((ae)->ind), ((ae)->value));-
81 do { a1->head->prev->next = new; new->prev = a1->head->prev; a1->head->prev = new; new->next = a1->head; } while(0);-
82 if (ae == (a->lastref
a->lastrefDescription
TRUEevaluated 712634 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
? a->lastref : ((a->head)->next))
ae == (a->last...>head)->next))Description
TRUEevaluated 711168 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 1466 times by 1 test
Evaluated by:
  • Self test
)
0-712634
83 a1->lastref = (new);
executed 711168 times by 1 test: a1->lastref = (new);
Executed by:
  • Self test
711168
84 }
executed 712634 times by 1 test: end of block
Executed by:
  • Self test
712634
85 return
executed 711168 times by 1 test: return(a1);
Executed by:
  • Self test
(a1);
executed 711168 times by 1 test: return(a1);
Executed by:
  • Self test
711168
86}-
87-
88-
89-
90-
91-
92ARRAY *-
93array_slice(array, s, e)-
94ARRAY *array;-
95ARRAY_ELEMENT *s, *e;-
96{-
97 ARRAY *a;-
98 ARRAY_ELEMENT *p, *n;-
99 int i;-
100 arrayind_t mi;-
101-
102 a = array_create ();-
103 a->type = array->type;-
104-
105 for (mi = 0, p = s, i = 0; p != e
p != eDescription
TRUEevaluated 170 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 75 times by 1 test
Evaluated by:
  • Self test
; p = ((p)->next), i++) {
75-170
106 n = array_create_element (((p)->ind), ((p)->value));-
107 do { a->head->prev->next = n; n->prev = a->head->prev; a->head->prev = n; n->next = a->head; } while(0);-
108 mi = ((n)->ind);-
109 }
executed 170 times by 1 test: end of block
Executed by:
  • Self test
170
110 a->num_elements = i;-
111 a->max_index = mi;-
112 return
executed 75 times by 1 test: return a;
Executed by:
  • Self test
a;
executed 75 times by 1 test: return a;
Executed by:
  • Self test
75
113}-
114-
115-
116-
117-
118-
119void-
120array_walk(a, func, udata)-
121ARRAY *a;-
122sh_ae_map_func_t *func;-
123void *udata;-
124{-
125 register ARRAY_ELEMENT *ae;-
126-
127 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| ((
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEnever evaluated
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
128 return;
never executed: return;
0
129 for (ae = ((a->head)->next); ae != a->head
ae != a->headDescription
TRUEnever evaluated
FALSEnever evaluated
; ae = ((ae)->next))
0
130 if ((*
(*func)(ae, udata) < 0Description
TRUEnever evaluated
FALSEnever evaluated
func)(ae, udata) < 0
(*func)(ae, udata) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
131 return;
never executed: return;
0
132}
never executed: end of block
0
133ARRAY_ELEMENT *-
134array_shift(a, n, flags)-
135ARRAY *a;-
136int n, flags;-
137{-
138 register ARRAY_ELEMENT *ae, *ret;-
139 register int i;-
140-
141 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 4917167 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->num_elements == 0)Description
TRUEevaluated 15 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4917152 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEevaluated 15 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4917152 times by 1 test
Evaluated by:
  • Self test
|| n <= 0
n <= 0Description
TRUEnever evaluated
FALSEevaluated 4917152 times by 1 test
Evaluated by:
  • Self test
)
0-4917167
142 return
executed 15 times by 1 test: return ((ARRAY_ELEMENT *) ((void *)0) );
Executed by:
  • Self test
((ARRAY_ELEMENT *)
executed 15 times by 1 test: return ((ARRAY_ELEMENT *) ((void *)0) );
Executed by:
  • Self test
15
143 ((void *)0)
executed 15 times by 1 test: return ((ARRAY_ELEMENT *) ((void *)0) );
Executed by:
  • Self test
15
144 );
executed 15 times by 1 test: return ((ARRAY_ELEMENT *) ((void *)0) );
Executed by:
  • Self test
15
145-
146 a->lastref = 0;-
147 for (i = 0, ret = ae = ((a->head)->next); ae != a->head
ae != a->headDescription
TRUEevaluated 9833104 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 1200 times by 1 test
Evaluated by:
  • Self test
&& i < n
i < nDescription
TRUEevaluated 4917152 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4915952 times by 1 test
Evaluated by:
  • Self test
; ae = ((ae)->next), i++)
1200-9833104
148 ;
executed 4917152 times by 1 test: ;
Executed by:
  • Self test
4917152
149 if (ae == a->head
ae == a->headDescription
TRUEevaluated 1200 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4915952 times by 1 test
Evaluated by:
  • Self test
) {
1200-4915952
150-
151 if (flags & 0x01
flags & 0x01Description
TRUEnever evaluated
FALSEevaluated 1200 times by 1 test
Evaluated by:
  • Self test
) {
0-1200
152 array_flush (a);-
153 return
never executed: return ((ARRAY_ELEMENT *) ((void *)0) );
((ARRAY_ELEMENT *)
never executed: return ((ARRAY_ELEMENT *) ((void *)0) );
0
154 ((void *)0)
never executed: return ((ARRAY_ELEMENT *) ((void *)0) );
0
155 );
never executed: return ((ARRAY_ELEMENT *) ((void *)0) );
0
156 }-
157 for (ae = ret; ((
((ae)->next) != a->headDescription
TRUEnever evaluated
FALSEevaluated 1200 times by 1 test
Evaluated by:
  • Self test
ae)->next) != a->head
((ae)->next) != a->headDescription
TRUEnever evaluated
FALSEevaluated 1200 times by 1 test
Evaluated by:
  • Self test
; ae = ((ae)->next))
0-1200
158 ;
never executed: ;
0
159 ((ae)->next) = (ARRAY_ELEMENT *)-
160 ((void *)0)-
161 ;-
162 a->head->next = a->head->prev = a->head;-
163 a->max_index = -1;-
164 a->num_elements = 0;-
165 return
executed 1200 times by 1 test: return ret;
Executed by:
  • Self test
ret;
executed 1200 times by 1 test: return ret;
Executed by:
  • Self test
1200
166 }-
167-
168-
169-
170-
171 ae->prev->next = (ARRAY_ELEMENT *)-
172 ((void *)0)-
173 ;-
174-
175 a->head->next = ae;-
176 ae->prev = a->head;-
177-
178 for ( ; ae != a->head
ae != a->headDescription
TRUEevaluated 5334252 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4915952 times by 1 test
Evaluated by:
  • Self test
; ae = ((ae)->next))
4915952-5334252
179 ((
executed 5334252 times by 1 test: ((ae)->ind) -= n;
Executed by:
  • Self test
ae)->ind) -= n;
executed 5334252 times by 1 test: ((ae)->ind) -= n;
Executed by:
  • Self test
5334252
180-
181 a->num_elements -= n;-
182 a->max_index = ((a->head->prev)->ind);-
183-
184 if (flags & 0x01
flags & 0x01Description
TRUEnever evaluated
FALSEevaluated 4915952 times by 1 test
Evaluated by:
  • Self test
) {
0-4915952
185 for (ae = ret; ae
aeDescription
TRUEnever evaluated
FALSEnever evaluated
; ) {
0
186 ret = ((ae)->next);-
187 array_dispose_element(ae);-
188 ae = ret;-
189 }
never executed: end of block
0
190 return
never executed: return ((ARRAY_ELEMENT *) ((void *)0) );
((ARRAY_ELEMENT *)
never executed: return ((ARRAY_ELEMENT *) ((void *)0) );
0
191 ((void *)0)
never executed: return ((ARRAY_ELEMENT *) ((void *)0) );
0
192 );
never executed: return ((ARRAY_ELEMENT *) ((void *)0) );
0
193 }-
194-
195 return
executed 4915952 times by 1 test: return ret;
Executed by:
  • Self test
ret;
executed 4915952 times by 1 test: return ret;
Executed by:
  • Self test
4915952
196}-
197-
198-
199-
200-
201-
202-
203int-
204array_rshift (a, n, s)-
205ARRAY *a;-
206int n;-
207char *s;-
208{-
209 register ARRAY_ELEMENT *ae, *new;-
210-
211 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 4945747 times by 1 test
Evaluated by:
  • Self test
|| (((
((a)->num_elements == 0)Description
TRUEevaluated 17028 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4928719 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEevaluated 17028 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4928719 times by 1 test
Evaluated by:
  • Self test
&& s == 0
s == 0Description
TRUEnever evaluated
FALSEevaluated 17028 times by 1 test
Evaluated by:
  • Self test
))
0-4945747
212 return
never executed: return 0;
0;
never executed: return 0;
0
213 else if (n <= 0
n <= 0Description
TRUEnever evaluated
FALSEevaluated 4945747 times by 1 test
Evaluated by:
  • Self test
)
0-4945747
214 return
never executed: return (a->num_elements);
(a->num_elements);
never executed: return (a->num_elements);
0
215-
216 ae = ((a->head)->next);-
217 if (s
sDescription
TRUEevaluated 4945747 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) {
0-4945747
218 new = array_create_element(0, s);-
219 do { ae->prev->next = new; new->prev = ae->prev; ae->prev = new; new->next = ae; } while(0);-
220 a->num_elements++;-
221 if (((
((a)->num_elements) == 1Description
TRUEevaluated 17028 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4928719 times by 1 test
Evaluated by:
  • Self test
a)->num_elements) == 1
((a)->num_elements) == 1Description
TRUEevaluated 17028 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4928719 times by 1 test
Evaluated by:
  • Self test
) {
17028-4928719
222 a->max_index = 0;-
223 return
executed 17028 times by 1 test: return 1;
Executed by:
  • Self test
1;
executed 17028 times by 1 test: return 1;
Executed by:
  • Self test
17028
224 }-
225 }
executed 4928719 times by 1 test: end of block
Executed by:
  • Self test
4928719
226-
227-
228-
229-
230 for ( ; ae != a->head
ae != a->headDescription
TRUEevaluated 5419831 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 4928719 times by 1 test
Evaluated by:
  • Self test
; ae = ((ae)->next))
4928719-5419831
231 ((
executed 5419831 times by 1 test: ((ae)->ind) += n;
Executed by:
  • Self test
ae)->ind) += n;
executed 5419831 times by 1 test: ((ae)->ind) += n;
Executed by:
  • Self test
5419831
232-
233 a->max_index = ((a->head->prev)->ind);-
234-
235 a->lastref = 0;-
236 return
executed 4928719 times by 1 test: return (a->num_elements);
Executed by:
  • Self test
(a->num_elements);
executed 4928719 times by 1 test: return (a->num_elements);
Executed by:
  • Self test
4928719
237}-
238-
239ARRAY_ELEMENT *-
240array_unshift_element(a)-
241ARRAY *a;-
242{-
243 return
never executed: return (array_shift (a, 1, 0));
(array_shift (a, 1, 0));
never executed: return (array_shift (a, 1, 0));
0
244}-
245-
246int-
247array_shift_element(a, v)-
248ARRAY *a;-
249char *v;-
250{-
251 return
never executed: return (array_rshift (a, 1, v));
(array_rshift (a, 1, v));
never executed: return (array_rshift (a, 1, v));
0
252}-
253-
254ARRAY *-
255array_quote(array)-
256ARRAY *array;-
257{-
258 ARRAY_ELEMENT *a;-
259 char *t;-
260-
261 if (array == 0
array == 0Description
TRUEnever evaluated
FALSEevaluated 78 times by 1 test
Evaluated by:
  • Self test
|| ((
((array)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 78 times by 1 test
Evaluated by:
  • Self test
array)->head) == 0
((array)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 78 times by 1 test
Evaluated by:
  • Self test
|| ((
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 78 times by 1 test
Evaluated by:
  • Self test
array)->num_elements == 0)
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 78 times by 1 test
Evaluated by:
  • Self test
)
0-78
262 return
never executed: return (ARRAY *) ((void *)0) ;
(ARRAY *)
never executed: return (ARRAY *) ((void *)0) ;
0
263 ((void *)0)
never executed: return (ARRAY *) ((void *)0) ;
0
264 ;
never executed: return (ARRAY *) ((void *)0) ;
0
265 for (a = ((array->head)->next); a != array->head
a != array->headDescription
TRUEevaluated 237 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 78 times by 1 test
Evaluated by:
  • Self test
; a = ((a)->next)) {
78-237
266 t = quote_string (a->value);-
267 do { if (a->value
a->valueDescription
TRUEevaluated 237 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) sh_xfree((a->value), "array.c", 325);
executed 237 times by 1 test: sh_xfree((a->value), "array.c", 325);
Executed by:
  • Self test
} while (0);
0-237
268 a->value = t;-
269 }
executed 237 times by 1 test: end of block
Executed by:
  • Self test
237
270 return
executed 78 times by 1 test: return array;
Executed by:
  • Self test
array;
executed 78 times by 1 test: return array;
Executed by:
  • Self test
78
271}-
272-
273ARRAY *-
274array_quote_escapes(array)-
275ARRAY *array;-
276{-
277 ARRAY_ELEMENT *a;-
278 char *t;-
279-
280 if (array == 0
array == 0Description
TRUEnever evaluated
FALSEevaluated 146 times by 1 test
Evaluated by:
  • Self test
|| ((
((array)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 146 times by 1 test
Evaluated by:
  • Self test
array)->head) == 0
((array)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 146 times by 1 test
Evaluated by:
  • Self test
|| ((
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 146 times by 1 test
Evaluated by:
  • Self test
array)->num_elements == 0)
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 146 times by 1 test
Evaluated by:
  • Self test
)
0-146
281 return
never executed: return (ARRAY *) ((void *)0) ;
(ARRAY *)
never executed: return (ARRAY *) ((void *)0) ;
0
282 ((void *)0)
never executed: return (ARRAY *) ((void *)0) ;
0
283 ;
never executed: return (ARRAY *) ((void *)0) ;
0
284 for (a = ((array->head)->next); a != array->head
a != array->headDescription
TRUEevaluated 732 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 146 times by 1 test
Evaluated by:
  • Self test
; a = ((a)->next)) {
146-732
285 t = quote_escapes (a->value);-
286 do { if (a->value
a->valueDescription
TRUEevaluated 732 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) sh_xfree((a->value), "array.c", 342);
executed 732 times by 1 test: sh_xfree((a->value), "array.c", 342);
Executed by:
  • Self test
} while (0);
0-732
287 a->value = t;-
288 }
executed 732 times by 1 test: end of block
Executed by:
  • Self test
732
289 return
executed 146 times by 1 test: return array;
Executed by:
  • Self test
array;
executed 146 times by 1 test: return array;
Executed by:
  • Self test
146
290}-
291-
292ARRAY *-
293array_dequote(array)-
294ARRAY *array;-
295{-
296 ARRAY_ELEMENT *a;-
297 char *t;-
298-
299 if (array == 0
array == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| ((
((array)->head) == 0Description
TRUEnever evaluated
FALSEnever evaluated
array)->head) == 0
((array)->head) == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| ((
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEnever evaluated
array)->num_elements == 0)
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
300 return
never executed: return (ARRAY *) ((void *)0) ;
(ARRAY *)
never executed: return (ARRAY *) ((void *)0) ;
0
301 ((void *)0)
never executed: return (ARRAY *) ((void *)0) ;
0
302 ;
never executed: return (ARRAY *) ((void *)0) ;
0
303 for (a = ((array->head)->next); a != array->head
a != array->headDescription
TRUEnever evaluated
FALSEnever evaluated
; a = ((a)->next)) {
0
304 t = dequote_string (a->value);-
305 do { if (a->value
a->valueDescription
TRUEnever evaluated
FALSEnever evaluated
) sh_xfree((a->value), "array.c", 359);
never executed: sh_xfree((a->value), "array.c", 359);
} while (0);
0
306 a->value = t;-
307 }
never executed: end of block
0
308 return
never executed: return array;
array;
never executed: return array;
0
309}-
310-
311ARRAY *-
312array_dequote_escapes(array)-
313ARRAY *array;-
314{-
315 ARRAY_ELEMENT *a;-
316 char *t;-
317-
318 if (array == 0
array == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| ((
((array)->head) == 0Description
TRUEnever evaluated
FALSEnever evaluated
array)->head) == 0
((array)->head) == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| ((
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEnever evaluated
array)->num_elements == 0)
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
319 return
never executed: return (ARRAY *) ((void *)0) ;
(ARRAY *)
never executed: return (ARRAY *) ((void *)0) ;
0
320 ((void *)0)
never executed: return (ARRAY *) ((void *)0) ;
0
321 ;
never executed: return (ARRAY *) ((void *)0) ;
0
322 for (a = ((array->head)->next); a != array->head
a != array->headDescription
TRUEnever evaluated
FALSEnever evaluated
; a = ((a)->next)) {
0
323 t = dequote_escapes (a->value);-
324 do { if (a->value
a->valueDescription
TRUEnever evaluated
FALSEnever evaluated
) sh_xfree((a->value), "array.c", 376);
never executed: sh_xfree((a->value), "array.c", 376);
} while (0);
0
325 a->value = t;-
326 }
never executed: end of block
0
327 return
never executed: return array;
array;
never executed: return array;
0
328}-
329-
330ARRAY *-
331array_remove_quoted_nulls(array)-
332ARRAY *array;-
333{-
334 ARRAY_ELEMENT *a;-
335-
336 if (array == 0
array == 0Description
TRUEnever evaluated
FALSEevaluated 29 times by 1 test
Evaluated by:
  • Self test
|| ((
((array)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 29 times by 1 test
Evaluated by:
  • Self test
array)->head) == 0
((array)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 29 times by 1 test
Evaluated by:
  • Self test
|| ((
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 29 times by 1 test
Evaluated by:
  • Self test
array)->num_elements == 0)
((array)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 29 times by 1 test
Evaluated by:
  • Self test
)
0-29
337 return
never executed: return (ARRAY *) ((void *)0) ;
(ARRAY *)
never executed: return (ARRAY *) ((void *)0) ;
0
338 ((void *)0)
never executed: return (ARRAY *) ((void *)0) ;
0
339 ;
never executed: return (ARRAY *) ((void *)0) ;
0
340 for (a = ((array->head)->next); a != array->head
a != array->headDescription
TRUEevaluated 200 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 29 times by 1 test
Evaluated by:
  • Self test
; a = ((a)->next))
29-200
341 a->value = remove_quoted_nulls (a->value);
executed 200 times by 1 test: a->value = remove_quoted_nulls (a->value);
Executed by:
  • Self test
200
342 return
executed 29 times by 1 test: return array;
Executed by:
  • Self test
array;
executed 29 times by 1 test: return array;
Executed by:
  • Self test
29
343}-
344-
345-
346-
347-
348-
349-
350char *-
351array_subrange (a, start, nelem, starsub, quoted)-
352ARRAY *a;-
353arrayind_t start, nelem;-
354int starsub, quoted;-
355{-
356 ARRAY *a2;-
357 ARRAY_ELEMENT *h, *p;-
358 arrayind_t i;-
359 char *ifs, *sifs, *t;-
360 int slen;-
361-
362 p = a
aDescription
TRUEevaluated 75 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
? ((a)->head) : 0;
0-75
363 if (p == 0
p == 0Description
TRUEnever evaluated
FALSEevaluated 75 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 75 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 75 times by 1 test
Evaluated by:
  • Self test
|| start > ((a)->max_index)
start > ((a)->max_index)Description
TRUEnever evaluated
FALSEevaluated 75 times by 1 test
Evaluated by:
  • Self test
)
0-75
364 return
never executed: return ((char *) ((void *)0) );
((char *)
never executed: return ((char *) ((void *)0) );
0
365 ((void *)0)
never executed: return ((char *) ((void *)0) );
0
366 );
never executed: return ((char *) ((void *)0) );
0
367 for (p = ((p)->next); p != ((a)->head)
p != ((a)->head)Description
TRUEevaluated 194 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
&& start > ((p)->ind)
start > ((p)->ind)Description
TRUEevaluated 119 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 75 times by 1 test
Evaluated by:
  • Self test
; p = ((p)->next))
0-194
368 ;
executed 119 times by 1 test: ;
Executed by:
  • Self test
119
369-
370 if (p == a->head
p == a->headDescription
TRUEnever evaluated
FALSEevaluated 75 times by 1 test
Evaluated by:
  • Self test
)
0-75
371 return
never executed: return ((char *) ((void *)0) );
((char *)
never executed: return ((char *) ((void *)0) );
0
372 ((void *)0)
never executed: return ((char *) ((void *)0) );
0
373 );
never executed: return ((char *) ((void *)0) );
0
374-
375-
376 for (i = 0, h = p; p != a->head
p != a->headDescription
TRUEevaluated 187 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 58 times by 1 test
Evaluated by:
  • Self test
&& i < nelem
i < nelemDescription
TRUEevaluated 170 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 17 times by 1 test
Evaluated by:
  • Self test
; i++, p = ((p)->next))
17-187
377 ;
executed 170 times by 1 test: ;
Executed by:
  • Self test
170
378-
379 a2 = array_slice(a, h, p);-
380-
381 if (quoted & (0x001|0x002)
quoted & (0x001|0x002)Description
TRUEevaluated 27 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 48 times by 1 test
Evaluated by:
  • Self test
)
27-48
382 array_quote(a2);
executed 27 times by 1 test: array_quote(a2);
Executed by:
  • Self test
27
383 else-
384 array_quote_escapes(a2);
executed 48 times by 1 test: array_quote_escapes(a2);
Executed by:
  • Self test
48
385-
386 if (starsub
starsubDescription
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 70 times by 1 test
Evaluated by:
  • Self test
&& (
(quoted & (0x001|0x002))Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test
quoted & (0x001|0x002))
(quoted & (0x001|0x002))Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test
) {
2-70
387-
388 array_remove_quoted_nulls (a2);-
389 sifs = ifs_firstchar ((int *)-
390 ((void *)0)-
391 );-
392 t = array_to_string (a2, sifs, 0);-
393 sh_xfree((sifs), "array.c", 445);-
394 }
executed 3 times by 1 test: end of block
Executed by:
  • Self test
else if (quoted & (0x001|0x002)
quoted & (0x001|0x002)Description
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 48 times by 1 test
Evaluated by:
  • Self test
) {
3-48
395-
396 sifs = ifs_firstchar (&slen);-
397 ifs = getifs ();-
398 if (ifs == 0
ifs == 0Description
TRUEnever evaluated
FALSEevaluated 24 times by 1 test
Evaluated by:
  • Self test
|| *
*ifs == 0Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 20 times by 1 test
Evaluated by:
  • Self test
ifs == 0
*ifs == 0Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 20 times by 1 test
Evaluated by:
  • Self test
) {
0-24
399 if (slen < 2
slen < 2Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
)
0-4
400 sifs = sh_xrealloc((sifs), (2), "array.c", 452);
executed 4 times by 1 test: sifs = sh_xrealloc((sifs), (2), "array.c", 452);
Executed by:
  • Self test
4
401 sifs[0] = ' ';-
402 sifs[1] = '\0';-
403 }
executed 4 times by 1 test: end of block
Executed by:
  • Self test
4
404 t = array_to_string (a2, sifs, 0);-
405 sh_xfree((sifs), "array.c", 457);-
406 }
executed 24 times by 1 test: end of block
Executed by:
  • Self test
else
24
407 t = array_to_string (a2, " ", 0);
executed 48 times by 1 test: t = array_to_string (a2, " ", 0);
Executed by:
  • Self test
48
408 array_dispose(a2);-
409-
410 return
executed 75 times by 1 test: return t;
Executed by:
  • Self test
t;
executed 75 times by 1 test: return t;
Executed by:
  • Self test
75
411}-
412-
413char *-
414array_patsub (a, pat, rep, mflags)-
415ARRAY *a;-
416char *pat, *rep;-
417int mflags;-
418{-
419 ARRAY *a2;-
420 ARRAY_ELEMENT *e;-
421 char *t, *sifs, *ifs;-
422 int slen;-
423-
424 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 138 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 138 times by 1 test
Evaluated by:
  • Self test
a)->head) == 0
((a)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 138 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 138 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 138 times by 1 test
Evaluated by:
  • Self test
)
0-138
425 return
never executed: return ((char *) ((void *)0) );
((char *)
never executed: return ((char *) ((void *)0) );
0
426 ((void *)0)
never executed: return ((char *) ((void *)0) );
0
427 );
never executed: return ((char *) ((void *)0) );
0
428-
429 a2 = array_copy(a);-
430 for (e = ((a2->head)->next); e != a2->head
e != a2->headDescription
TRUEevaluated 770 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 138 times by 1 test
Evaluated by:
  • Self test
; e = ((e)->next)) {
138-770
431 t = pat_subst(((e)->value), pat, rep, mflags);-
432 do { if (((
((e)->value)Description
TRUEevaluated 770 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
e)->value)
((e)->value)Description
TRUEevaluated 770 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) sh_xfree((((e)->value)), "array.c", 482);
executed 770 times by 1 test: sh_xfree((((e)->value)), "array.c", 482);
Executed by:
  • Self test
} while (0);
0-770
433 e->value = t;-
434 }
executed 770 times by 1 test: end of block
Executed by:
  • Self test
770
435-
436 if (mflags & 0x020
mflags & 0x020Description
TRUEevaluated 46 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 92 times by 1 test
Evaluated by:
  • Self test
)
46-92
437 array_quote(a2);
executed 46 times by 1 test: array_quote(a2);
Executed by:
  • Self test
46
438 else-
439 array_quote_escapes(a2);
executed 92 times by 1 test: array_quote_escapes(a2);
Executed by:
  • Self test
92
440-
441 if (mflags & 0x080
mflags & 0x080Description
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 114 times by 1 test
Evaluated by:
  • Self test
) {
24-114
442 array_remove_quoted_nulls (a2);-
443 if ((
(mflags & 0x020) == 0Description
TRUEevaluated 21 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
mflags & 0x020) == 0
(mflags & 0x020) == 0Description
TRUEevaluated 21 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
&& ifs_is_null
ifs_is_nullDescription
TRUEnever evaluated
FALSEevaluated 21 times by 1 test
Evaluated by:
  • Self test
)
0-21
444 sifs = spacesep;
never executed: sifs = spacesep;
0
445 else-
446 sifs = ifs_firstchar((int *)
executed 24 times by 1 test: sifs = ifs_firstchar((int *) ((void *)0) );
Executed by:
  • Self test
24
447 ((void *)0)
executed 24 times by 1 test: sifs = ifs_firstchar((int *) ((void *)0) );
Executed by:
  • Self test
24
448 );
executed 24 times by 1 test: sifs = ifs_firstchar((int *) ((void *)0) );
Executed by:
  • Self test
24
449 t = array_to_string (a2, sifs, 0);-
450 if (sifs != spacesep
sifs != spacesepDescription
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
)
0-24
451 sh_xfree((sifs), "array.c", 499);
executed 24 times by 1 test: sh_xfree((sifs), "array.c", 499);
Executed by:
  • Self test
24
452 }
executed 24 times by 1 test: end of block
Executed by:
  • Self test
else if (mflags & 0x020
mflags & 0x020Description
TRUEevaluated 43 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 71 times by 1 test
Evaluated by:
  • Self test
) {
24-71
453-
454 sifs = ifs_firstchar (&slen);-
455 ifs = getifs ();-
456 if (ifs == 0
ifs == 0Description
TRUEnever evaluated
FALSEevaluated 43 times by 1 test
Evaluated by:
  • Self test
|| *
*ifs == 0Description
TRUEnever evaluated
FALSEevaluated 43 times by 1 test
Evaluated by:
  • Self test
ifs == 0
*ifs == 0Description
TRUEnever evaluated
FALSEevaluated 43 times by 1 test
Evaluated by:
  • Self test
) {
0-43
457 if (slen < 2
slen < 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
458 sifs = sh_xrealloc((sifs), (2), "array.c", 506);
never executed: sifs = sh_xrealloc((sifs), (2), "array.c", 506);
0
459 sifs[0] = ' ';-
460 sifs[1] = '\0';-
461 }
never executed: end of block
0
462 t = array_to_string (a2, sifs, 0);-
463 sh_xfree((sifs), "array.c", 511);-
464 }
executed 43 times by 1 test: end of block
Executed by:
  • Self test
else
43
465 t = array_to_string (a2, " ", 0);
executed 71 times by 1 test: t = array_to_string (a2, " ", 0);
Executed by:
  • Self test
71
466 array_dispose (a2);-
467-
468 return
executed 138 times by 1 test: return t;
Executed by:
  • Self test
t;
executed 138 times by 1 test: return t;
Executed by:
  • Self test
138
469}-
470-
471char *-
472array_modcase (a, pat, modop, mflags)-
473ARRAY *a;-
474char *pat;-
475int modop;-
476int mflags;-
477{-
478 ARRAY *a2;-
479 ARRAY_ELEMENT *e;-
480 char *t, *sifs, *ifs;-
481 int slen;-
482-
483 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 11 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 11 times by 1 test
Evaluated by:
  • Self test
a)->head) == 0
((a)->head) == 0Description
TRUEnever evaluated
FALSEevaluated 11 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 11 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 11 times by 1 test
Evaluated by:
  • Self test
)
0-11
484 return
never executed: return ((char *) ((void *)0) );
((char *)
never executed: return ((char *) ((void *)0) );
0
485 ((void *)0)
never executed: return ((char *) ((void *)0) );
0
486 );
never executed: return ((char *) ((void *)0) );
0
487-
488 a2 = array_copy(a);-
489 for (e = ((a2->head)->next); e != a2->head
e != a2->headDescription
TRUEevaluated 29 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 11 times by 1 test
Evaluated by:
  • Self test
; e = ((e)->next)) {
11-29
490 t = sh_modcase(((e)->value), pat, modop);-
491 do { if (((
((e)->value)Description
TRUEevaluated 29 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
e)->value)
((e)->value)Description
TRUEevaluated 29 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) sh_xfree((((e)->value)), "array.c", 537);
executed 29 times by 1 test: sh_xfree((((e)->value)), "array.c", 537);
Executed by:
  • Self test
} while (0);
0-29
492 e->value = t;-
493 }
executed 29 times by 1 test: end of block
Executed by:
  • Self test
29
494-
495 if (mflags & 0x020
mflags & 0x020Description
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test
)
5-6
496 array_quote(a2);
executed 5 times by 1 test: array_quote(a2);
Executed by:
  • Self test
5
497 else-
498 array_quote_escapes(a2);
executed 6 times by 1 test: array_quote_escapes(a2);
Executed by:
  • Self test
6
499-
500 if (mflags & 0x080
mflags & 0x080Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 9 times by 1 test
Evaluated by:
  • Self test
) {
2-9
501 array_remove_quoted_nulls (a2);-
502 if ((
(mflags & 0x020) == 0Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test
mflags & 0x020) == 0
(mflags & 0x020) == 0Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test
&& ifs_is_null
ifs_is_nullDescription
TRUEnever evaluated
FALSEnever evaluated
)
0-2
503 sifs = spacesep;
never executed: sifs = spacesep;
0
504 else-
505 sifs = ifs_firstchar((int *)
executed 2 times by 1 test: sifs = ifs_firstchar((int *) ((void *)0) );
Executed by:
  • Self test
2
506 ((void *)0)
executed 2 times by 1 test: sifs = ifs_firstchar((int *) ((void *)0) );
Executed by:
  • Self test
2
507 );
executed 2 times by 1 test: sifs = ifs_firstchar((int *) ((void *)0) );
Executed by:
  • Self test
2
508 t = array_to_string (a2, sifs, 0);-
509 if (sifs != spacesep
sifs != spacesepDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
)
0-2
510 sh_xfree((sifs), "array.c", 554);
executed 2 times by 1 test: sh_xfree((sifs), "array.c", 554);
Executed by:
  • Self test
2
511 }
executed 2 times by 1 test: end of block
Executed by:
  • Self test
else if (mflags & 0x020
mflags & 0x020Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test
) {
2-6
512-
513 sifs = ifs_firstchar (&slen);-
514 ifs = getifs ();-
515 if (ifs == 0
ifs == 0Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
|| *
*ifs == 0Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
ifs == 0
*ifs == 0Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
) {
0-3
516 if (slen < 2
slen < 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
517 sifs = sh_xrealloc((sifs), (2), "array.c", 561);
never executed: sifs = sh_xrealloc((sifs), (2), "array.c", 561);
0
518 sifs[0] = ' ';-
519 sifs[1] = '\0';-
520 }
never executed: end of block
0
521 t = array_to_string (a2, sifs, 0);-
522 sh_xfree((sifs), "array.c", 566);-
523 }
executed 3 times by 1 test: end of block
Executed by:
  • Self test
else
3
524 t = array_to_string (a2, " ", 0);
executed 6 times by 1 test: t = array_to_string (a2, " ", 0);
Executed by:
  • Self test
6
525 array_dispose (a2);-
526-
527 return
executed 11 times by 1 test: return t;
Executed by:
  • Self test
t;
executed 11 times by 1 test: return t;
Executed by:
  • Self test
11
528}-
529-
530-
531-
532-
533ARRAY_ELEMENT *-
534array_create_element(indx, value)-
535arrayind_t indx;-
536char *value;-
537{-
538 ARRAY_ELEMENT *r;-
539-
540 r = (ARRAY_ELEMENT *)sh_xmalloc((sizeof(ARRAY_ELEMENT)), "array.c", 584);-
541 r->ind = indx;-
542 r->value = value
valueDescription
TRUEevaluated 5732043 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 760887 times by 1 test
Evaluated by:
  • Self test
? (char *)strcpy (sh_xmalloc((1 + strlen (value)), "array.c", 586), (value)) : (char *)
760887-5732043
543 ((void *)0)-
544 ;-
545 r->next = r->prev = (ARRAY_ELEMENT *) -
546 ((void *)0)-
547 ;-
548 return
executed 6492930 times by 1 test: return(r);
Executed by:
  • Self test
(r);
executed 6492930 times by 1 test: return(r);
Executed by:
  • Self test
6492930
549}-
550void-
551array_dispose_element(ae)-
552ARRAY_ELEMENT *ae;-
553{-
554 if (ae
aeDescription
TRUEevaluated 6373478 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 15 times by 1 test
Evaluated by:
  • Self test
) {
15-6373478
555 do { if (ae->value
ae->valueDescription
TRUEevaluated 5651639 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 721839 times by 1 test
Evaluated by:
  • Self test
) sh_xfree((ae->value), "array.c", 606);
executed 5651639 times by 1 test: sh_xfree((ae->value), "array.c", 606);
Executed by:
  • Self test
} while (0);
721839-5651639
556 sh_xfree((ae), "array.c", 607);-
557 }
executed 6373478 times by 1 test: end of block
Executed by:
  • Self test
6373478
558}
executed 6373493 times by 1 test: end of block
Executed by:
  • Self test
6373493
559-
560-
561-
562-
563int-
564array_insert(a, i, v)-
565ARRAY *a;-
566arrayind_t i;-
567char *v;-
568{-
569 register ARRAY_ELEMENT *new, *ae, *start;-
570 arrayind_t startind;-
571 int direction;-
572-
573 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 73492 times by 1 test
Evaluated by:
  • Self test
)
0-73492
574 return
never executed: return(-1);
(-1);
never executed: return(-1);
0
575 new = array_create_element(i, v);-
576 if (i > ((a)->max_index)
i > ((a)->max_index)Description
TRUEevaluated 63345 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 10147 times by 1 test
Evaluated by:
  • Self test
) {
10147-63345
577-
578-
579-
580-
581-
582 do { a->head->prev->next = new; new->prev = a->head->prev; a->head->prev = new; new->next = a->head; } while(0);-
583 a->max_index = i;-
584 a->num_elements++;-
585 a->lastref = (new);-
586 return
executed 63345 times by 1 test: return(0);
Executed by:
  • Self test
(0);
executed 63345 times by 1 test: return(0);
Executed by:
  • Self test
63345
587 } else if (i < ((a)->head->next->ind)
i < ((a)->head->next->ind)Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 10139 times by 1 test
Evaluated by:
  • Self test
) {
8-10139
588-
589 do { a->head->next->prev = new; new->next = a->head->next; new->prev = a->head; a->head->next = new; } while (0);-
590 a->num_elements++;-
591 a->lastref = (new);-
592 return
executed 8 times by 1 test: return(0);
Executed by:
  • Self test
(0);
executed 8 times by 1 test: return(0);
Executed by:
  • Self test
8
593 }-
594-
595-
596-
597-
598-
599-
600 start = (a->lastref
a->lastrefDescription
TRUEevaluated 10139 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
? a->lastref : ((a->head)->next));
0-10139
601-
602-
603 startind = ((start)->ind);-
604 if (i < startind/2
i < startind/2Description
TRUEevaluated 18 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 10121 times by 1 test
Evaluated by:
  • Self test
) {
18-10121
605 start = ((a->head)->next);-
606 startind = ((start)->ind);-
607 direction = 1;-
608 }
executed 18 times by 1 test: end of block
Executed by:
  • Self test
else if (i >= startind
i >= startindDescription
TRUEevaluated 10089 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 32 times by 1 test
Evaluated by:
  • Self test
) {
18-10089
609 direction = 1;-
610 }
executed 10089 times by 1 test: end of block
Executed by:
  • Self test
else {
10089
611 direction = -1;-
612 }
executed 32 times by 1 test: end of block
Executed by:
  • Self test
32
613-
614-
615-
616-
617-
618 for (ae = start; ae != a->head
ae != a->headDescription
TRUEevaluated 10256 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
; ) {
0-10256
619 if (((
((ae)->ind) == iDescription
TRUEevaluated 10111 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 145 times by 1 test
Evaluated by:
  • Self test
ae)->ind) == i
((ae)->ind) == iDescription
TRUEevaluated 10111 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 145 times by 1 test
Evaluated by:
  • Self test
) {
145-10111
620-
621-
622-
623 sh_xfree((((ae)->value)), "array.c", 674);-
624-
625 ae->value = new->value;-
626 new->value = 0;-
627 array_dispose_element(new);-
628 a->lastref = (ae);-
629 return
executed 10111 times by 1 test: return(0);
Executed by:
  • Self test
(0);
executed 10111 times by 1 test: return(0);
Executed by:
  • Self test
10111
630 } else if (direction == 1
direction == 1Description
TRUEevaluated 88 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 57 times by 1 test
Evaluated by:
  • Self test
&& ((
((ae)->ind) > iDescription
TRUEevaluated 6 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 82 times by 1 test
Evaluated by:
  • Self test
ae)->ind) > i
((ae)->ind) > iDescription
TRUEevaluated 6 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 82 times by 1 test
Evaluated by:
  • Self test
) {
6-88
631 do { ae->prev->next = new; new->prev = ae->prev; ae->prev = new; new->next = ae; } while(0);-
632 a->num_elements++;-
633 a->lastref = (new);-
634 return
executed 6 times by 1 test: return(0);
Executed by:
  • Self test
(0);
executed 6 times by 1 test: return(0);
Executed by:
  • Self test
6
635 } else if (direction == -1
direction == -1Description
TRUEevaluated 57 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 82 times by 1 test
Evaluated by:
  • Self test
&& ((
((ae)->ind) < iDescription
TRUEevaluated 22 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 35 times by 1 test
Evaluated by:
  • Self test
ae)->ind) < i
((ae)->ind) < iDescription
TRUEevaluated 22 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 35 times by 1 test
Evaluated by:
  • Self test
) {
22-82
636 do { ae->next->prev = new; new->next = ae->next; new->prev = ae; ae->next = new; } while (0);-
637 a->num_elements++;-
638 a->lastref = (new);-
639 return
executed 22 times by 1 test: return(0);
Executed by:
  • Self test
(0);
executed 22 times by 1 test: return(0);
Executed by:
  • Self test
22
640 }-
641 ae = direction == 1
direction == 1Description
TRUEevaluated 82 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 35 times by 1 test
Evaluated by:
  • Self test
? ((ae)->next) : ((ae)->prev);
35-82
642 }
executed 117 times by 1 test: end of block
Executed by:
  • Self test
117
643 array_dispose_element(new);-
644 a->lastref = 0;-
645 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
646}-
647-
648-
649-
650-
651-
652ARRAY_ELEMENT *-
653array_remove(a, i)-
654ARRAY *a;-
655arrayind_t i;-
656{-
657 register ARRAY_ELEMENT *ae, *start;-
658 arrayind_t startind;-
659 int direction;-
660-
661 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 73 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 73 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 73 times by 1 test
Evaluated by:
  • Self test
)
0-73
662 return
never executed: return((ARRAY_ELEMENT *) ((void *)0) );
((ARRAY_ELEMENT *)
never executed: return((ARRAY_ELEMENT *) ((void *)0) );
0
663 ((void *)0)
never executed: return((ARRAY_ELEMENT *) ((void *)0) );
0
664 );
never executed: return((ARRAY_ELEMENT *) ((void *)0) );
0
665 if (i > ((a)->max_index)
i > ((a)->max_index)Description
TRUEevaluated 38 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 35 times by 1 test
Evaluated by:
  • Self test
|| i < ((a)->head->next->ind)
i < ((a)->head->next->ind)Description
TRUEnever evaluated
FALSEevaluated 35 times by 1 test
Evaluated by:
  • Self test
)
0-38
666 return
executed 38 times by 1 test: return((ARRAY_ELEMENT *) ((void *)0) );
Executed by:
  • Self test
((ARRAY_ELEMENT *)
executed 38 times by 1 test: return((ARRAY_ELEMENT *) ((void *)0) );
Executed by:
  • Self test
38
667 ((void *)0)
executed 38 times by 1 test: return((ARRAY_ELEMENT *) ((void *)0) );
Executed by:
  • Self test
38
668 );
executed 38 times by 1 test: return((ARRAY_ELEMENT *) ((void *)0) );
Executed by:
  • Self test
38
669 start = (a->lastref
a->lastrefDescription
TRUEevaluated 35 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
? a->lastref : ((a->head)->next));
0-35
670-
671-
672 startind = ((start)->ind);-
673 if (i < startind/2
i < startind/2Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • Self test
FALSEevaluated 34 times by 1 test
Evaluated by:
  • Self test
) {
1-34
674 start = ((a->head)->next);-
675 startind = ((start)->ind);-
676 direction = 1;-
677 }
executed 1 time by 1 test: end of block
Executed by:
  • Self test
else if (i >= startind
i >= startindDescription
TRUEevaluated 31 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
) {
1-31
678 direction = 1;-
679 }
executed 31 times by 1 test: end of block
Executed by:
  • Self test
else {
31
680 direction = -1;-
681 }
executed 3 times by 1 test: end of block
Executed by:
  • Self test
3
682 for (ae = start; ae != a->head
ae != a->headDescription
TRUEevaluated 50 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
; ) {
0-50
683 if (((
((ae)->ind) == iDescription
TRUEevaluated 35 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 15 times by 1 test
Evaluated by:
  • Self test
ae)->ind) == i
((ae)->ind) == iDescription
TRUEevaluated 35 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 15 times by 1 test
Evaluated by:
  • Self test
) {
15-35
684 ae->next->prev = ae->prev;-
685 ae->prev->next = ae->next;-
686 a->num_elements--;-
687 if (i == ((a)->max_index)
i == ((a)->max_index)Description
TRUEevaluated 17 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 18 times by 1 test
Evaluated by:
  • Self test
)
17-18
688 a->max_index = ((ae->prev)->ind);
executed 17 times by 1 test: a->max_index = ((ae->prev)->ind);
Executed by:
  • Self test
17
689-
690-
691-
692 if (ae->next != a->head
ae->next != a->headDescription
TRUEevaluated 18 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 17 times by 1 test
Evaluated by:
  • Self test
)
17-18
693 a->lastref = (ae->next);
executed 18 times by 1 test: a->lastref = (ae->next);
Executed by:
  • Self test
18
694 else if (ae->prev != a->head
ae->prev != a->headDescription
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 12 times by 1 test
Evaluated by:
  • Self test
)
5-12
695 a->lastref = (ae->prev);
executed 5 times by 1 test: a->lastref = (ae->prev);
Executed by:
  • Self test
5
696 else-
697 a->lastref = 0;
executed 12 times by 1 test: a->lastref = 0;
Executed by:
  • Self test
12
698-
699 return
executed 35 times by 1 test: return(ae);
Executed by:
  • Self test
(ae);
executed 35 times by 1 test: return(ae);
Executed by:
  • Self test
35
700 }-
701 ae = (
(direction == 1)Description
TRUEevaluated 12 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
direction == 1)
(direction == 1)Description
TRUEevaluated 12 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
? ((ae)->next) : ((ae)->prev);
3-12
702 if (direction == 1
direction == 1Description
TRUEevaluated 12 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
&& ((
((ae)->ind) > iDescription
TRUEnever evaluated
FALSEevaluated 12 times by 1 test
Evaluated by:
  • Self test
ae)->ind) > i
((ae)->ind) > iDescription
TRUEnever evaluated
FALSEevaluated 12 times by 1 test
Evaluated by:
  • Self test
)
0-12
703 break;
never executed: break;
0
704 else if (direction == -1
direction == -1Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 12 times by 1 test
Evaluated by:
  • Self test
&& ((
((ae)->ind) < iDescription
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
ae)->ind) < i
((ae)->ind) < iDescription
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test
)
0-12
705 break;
never executed: break;
0
706 }
executed 15 times by 1 test: end of block
Executed by:
  • Self test
15
707 return
never executed: return((ARRAY_ELEMENT *) ((void *)0) );
((ARRAY_ELEMENT *)
never executed: return((ARRAY_ELEMENT *) ((void *)0) );
0
708 ((void *)0)
never executed: return((ARRAY_ELEMENT *) ((void *)0) );
0
709 );
never executed: return((ARRAY_ELEMENT *) ((void *)0) );
0
710}-
711-
712-
713-
714-
715char *-
716array_reference(a, i)-
717ARRAY *a;-
718arrayind_t i;-
719{-
720 register ARRAY_ELEMENT *ae, *start;-
721 arrayind_t startind;-
722 int direction;-
723-
724 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 28632 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->num_elements == 0)Description
TRUEevaluated 77 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 28555 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEevaluated 77 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 28555 times by 1 test
Evaluated by:
  • Self test
)
0-28632
725 return
executed 77 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
((char *)
executed 77 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
77
726 ((void *)0)
executed 77 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
77
727 );
executed 77 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
77
728 if (i > ((a)->max_index)
i > ((a)->max_index)Description
TRUEevaluated 34 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 28521 times by 1 test
Evaluated by:
  • Self test
|| i < ((a)->head->next->ind)
i < ((a)->head->next->ind)Description
TRUEevaluated 34 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 28487 times by 1 test
Evaluated by:
  • Self test
)
34-28521
729 return
executed 68 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
((char *)
executed 68 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
68
730 ((void *)0)
executed 68 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
68
731 );
executed 68 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
68
732 start = (a->lastref
a->lastrefDescription
TRUEevaluated 16086 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 12401 times by 1 test
Evaluated by:
  • Self test
? a->lastref : ((a->head)->next));
12401-16086
733 startind = ((start)->ind);-
734 if (i < startind/2
i < startind/2Description
TRUEevaluated 1092 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 27395 times by 1 test
Evaluated by:
  • Self test
) {
1092-27395
735 start = ((a->head)->next);-
736 startind = ((start)->ind);-
737 direction = 1;-
738 }
executed 1092 times by 1 test: end of block
Executed by:
  • Self test
else if (i >= startind
i >= startindDescription
TRUEevaluated 23509 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 3886 times by 1 test
Evaluated by:
  • Self test
) {
1092-23509
739 direction = 1;-
740 }
executed 23509 times by 1 test: end of block
Executed by:
  • Self test
else {
23509
741 direction = -1;-
742 }
executed 3886 times by 1 test: end of block
Executed by:
  • Self test
3886
743 for (ae = start; ae != a->head
ae != a->headDescription
TRUEevaluated 381002 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
; ) {
0-381002
744 if (((
((ae)->ind) == iDescription
TRUEevaluated 28097 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 352905 times by 1 test
Evaluated by:
  • Self test
ae)->ind) == i
((ae)->ind) == iDescription
TRUEevaluated 28097 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 352905 times by 1 test
Evaluated by:
  • Self test
) {
28097-352905
745 a->lastref = (ae);-
746 return
executed 28097 times by 1 test: return(((ae)->value));
Executed by:
  • Self test
(((ae)->value));
executed 28097 times by 1 test: return(((ae)->value));
Executed by:
  • Self test
28097
747 }-
748 ae = (
(direction == 1)Description
TRUEevaluated 343088 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 9817 times by 1 test
Evaluated by:
  • Self test
direction == 1)
(direction == 1)Description
TRUEevaluated 343088 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 9817 times by 1 test
Evaluated by:
  • Self test
? ((ae)->next) : ((ae)->prev);
9817-343088
749-
750-
751-
752-
753-
754 if (direction == 1
direction == 1Description
TRUEevaluated 343088 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 9817 times by 1 test
Evaluated by:
  • Self test
&& ((
((ae)->ind) > iDescription
TRUEevaluated 386 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 342702 times by 1 test
Evaluated by:
  • Self test
ae)->ind) > i
((ae)->ind) > iDescription
TRUEevaluated 386 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 342702 times by 1 test
Evaluated by:
  • Self test
) {
386-343088
755 start = ae;-
756 break;
executed 386 times by 1 test: break;
Executed by:
  • Self test
386
757 } else if (direction == -1
direction == -1Description
TRUEevaluated 9817 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 342702 times by 1 test
Evaluated by:
  • Self test
&& ((
((ae)->ind) < iDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 9813 times by 1 test
Evaluated by:
  • Self test
ae)->ind) < i
((ae)->ind) < iDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 9813 times by 1 test
Evaluated by:
  • Self test
) {
4-342702
758 start = ae;-
759 break;
executed 4 times by 1 test: break;
Executed by:
  • Self test
4
760 }-
761 }
executed 352515 times by 1 test: end of block
Executed by:
  • Self test
352515
762-
763-
764-
765 a->lastref = (start);-
766-
767 return
executed 390 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
((char *)
executed 390 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
390
768 ((void *)0)
executed 390 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
390
769 );
executed 390 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
390
770}-
771-
772-
773-
774-
775WORD_LIST *-
776array_to_word_list(a)-
777ARRAY *a;-
778{-
779 WORD_LIST *list;-
780 ARRAY_ELEMENT *ae;-
781-
782 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 793 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->num_elements == 0)Description
TRUEevaluated 26 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 767 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEevaluated 26 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 767 times by 1 test
Evaluated by:
  • Self test
)
0-793
783 return
executed 26 times by 1 test: return((WORD_LIST *) ((void *)0) );
Executed by:
  • Self test
((WORD_LIST *)
executed 26 times by 1 test: return((WORD_LIST *) ((void *)0) );
Executed by:
  • Self test
26
784 ((void *)0)
executed 26 times by 1 test: return((WORD_LIST *) ((void *)0) );
Executed by:
  • Self test
26
785 );
executed 26 times by 1 test: return((WORD_LIST *) ((void *)0) );
Executed by:
  • Self test
26
786 list = (WORD_LIST *)-
787 ((void *)0)-
788 ;-
789 for (ae = ((a->head)->next); ae != a->head
ae != a->headDescription
TRUEevaluated 3328 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 767 times by 1 test
Evaluated by:
  • Self test
; ae = ((ae)->next))
767-3328
790 list = make_word_list (make_bare_word(((ae)->value)), list);
executed 3328 times by 1 test: list = make_word_list (make_bare_word(((ae)->value)), list);
Executed by:
  • Self test
3328
791 return
executed 767 times by 1 test: return (((list && list->next) ? (WORD_LIST *)list_reverse ((GENERIC_LIST *)list) : (WORD_LIST *)(list)));
Executed by:
  • Self test
(((list && list->next) ? (WORD_LIST *)list_reverse ((GENERIC_LIST *)list) : (WORD_LIST *)(list)));
executed 767 times by 1 test: return (((list && list->next) ? (WORD_LIST *)list_reverse ((GENERIC_LIST *)list) : (WORD_LIST *)(list)));
Executed by:
  • Self test
767
792}-
793-
794ARRAY *-
795array_from_word_list (list)-
796WORD_LIST *list;-
797{-
798 ARRAY *a;-
799-
800 if (list == 0
list == 0Description
TRUEnever evaluated
FALSEevaluated 27 times by 1 test
Evaluated by:
  • Self test
)
0-27
801 return
never executed: return((ARRAY *) ((void *)0) );
((ARRAY *)
never executed: return((ARRAY *) ((void *)0) );
0
802 ((void *)0)
never executed: return((ARRAY *) ((void *)0) );
0
803 );
never executed: return((ARRAY *) ((void *)0) );
0
804 a = array_create();-
805 return
executed 27 times by 1 test: return (array_assign_list (a, list));
Executed by:
  • Self test
(array_assign_list (a, list));
executed 27 times by 1 test: return (array_assign_list (a, list));
Executed by:
  • Self test
27
806}-
807-
808WORD_LIST *-
809array_keys_to_word_list(a)-
810ARRAY *a;-
811{-
812 WORD_LIST *list;-
813 ARRAY_ELEMENT *ae;-
814 char *t;-
815-
816 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • Self test
)
0-8
817 return
never executed: return((WORD_LIST *) ((void *)0) );
((WORD_LIST *)
never executed: return((WORD_LIST *) ((void *)0) );
0
818 ((void *)0)
never executed: return((WORD_LIST *) ((void *)0) );
0
819 );
never executed: return((WORD_LIST *) ((void *)0) );
0
820 list = (WORD_LIST *)-
821 ((void *)0)-
822 ;-
823 for (ae = ((a->head)->next); ae != a->head
ae != a->headDescription
TRUEevaluated 34 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 8 times by 1 test
Evaluated by:
  • Self test
; ae = ((ae)->next)) {
8-34
824 t = itos(((ae)->ind));-
825 list = make_word_list (make_bare_word(t), list);-
826 sh_xfree((t), "array.c", 855);-
827 }
executed 34 times by 1 test: end of block
Executed by:
  • Self test
34
828 return
executed 8 times by 1 test: return (((list && list->next) ? (WORD_LIST *)list_reverse ((GENERIC_LIST *)list) : (WORD_LIST *)(list)));
Executed by:
  • Self test
(((list && list->next) ? (WORD_LIST *)list_reverse ((GENERIC_LIST *)list) : (WORD_LIST *)(list)));
executed 8 times by 1 test: return (((list && list->next) ? (WORD_LIST *)list_reverse ((GENERIC_LIST *)list) : (WORD_LIST *)(list)));
Executed by:
  • Self test
8
829}-
830-
831ARRAY *-
832array_assign_list (array, list)-
833ARRAY *array;-
834WORD_LIST *list;-
835{-
836 register WORD_LIST *l;-
837 register arrayind_t i;-
838-
839 for (l = list, i = 0; l
lDescription
TRUEevaluated 87 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 27 times by 1 test
Evaluated by:
  • Self test
; l = l->next, i++)
27-87
840 array_insert(array, i, l->word->word);
executed 87 times by 1 test: array_insert(array, i, l->word->word);
Executed by:
  • Self test
87
841 return
executed 27 times by 1 test: return array;
Executed by:
  • Self test
array;
executed 27 times by 1 test: return array;
Executed by:
  • Self test
27
842}-
843-
844char **-
845array_to_argv (a)-
846ARRAY *a;-
847{-
848 char **ret, *t;-
849 int i;-
850 ARRAY_ELEMENT *ae;-
851-
852 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| ((
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEnever evaluated
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
853 return
never executed: return ((char **) ((void *)0) );
((char **)
never executed: return ((char **) ((void *)0) );
0
854 ((void *)0)
never executed: return ((char **) ((void *)0) );
0
855 );
never executed: return ((char **) ((void *)0) );
0
856 ret = strvec_create (((a)->num_elements) + 1);-
857 i = 0;-
858 for (ae = ((a->head)->next); ae != a->head
ae != a->headDescription
TRUEnever evaluated
FALSEnever evaluated
; ae = ((ae)->next)) {
0
859 t = ((ae)->value);-
860 ret[i++] = t
tDescription
TRUEnever evaluated
FALSEnever evaluated
? (char *)strcpy (sh_xmalloc((1 + strlen (t)), "array.c", 887), (t)) : (char *)
0
861 ((void *)0)-
862 ;-
863 }
never executed: end of block
0
864 ret[i] = (char *)-
865 ((void *)0)-
866 ;-
867 return
never executed: return (ret);
(ret);
never executed: return (ret);
0
868}-
869-
870-
871-
872-
873-
874static char *-
875array_to_string_internal (start, end, sep, quoted)-
876ARRAY_ELEMENT *start, *end;-
877char *sep;-
878int quoted;-
879{-
880 char *result, *t;-
881 ARRAY_ELEMENT *ae;-
882 int slen, rsize, rlen, reg;-
883-
884 if (start == end
start == endDescription
TRUEnever evaluated
FALSEevaluated 224 times by 1 test
Evaluated by:
  • Self test
)
0-224
885 return
never executed: return ((char *) ((void *)0) );
((char *)
never executed: return ((char *) ((void *)0) );
0
886 ((void *)0)
never executed: return ((char *) ((void *)0) );
0
887 );
never executed: return ((char *) ((void *)0) );
0
888-
889 slen = strlen(sep);-
890 result = -
891 ((void *)0)-
892 ;-
893 for (rsize = rlen = 0, ae = start; ae != end
ae != endDescription
TRUEevaluated 969 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 224 times by 1 test
Evaluated by:
  • Self test
; ae = ((ae)->next)) {
224-969
894 if (rsize == 0
rsize == 0Description
TRUEevaluated 224 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 745 times by 1 test
Evaluated by:
  • Self test
)
224-745
895 result = (char *)sh_xmalloc((rsize = 64), "array.c", 914);
executed 224 times by 1 test: result = (char *)sh_xmalloc((rsize = 64), "array.c", 914);
Executed by:
  • Self test
224
896 if (((
((ae)->value)Description
TRUEevaluated 969 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
ae)->value)
((ae)->value)Description
TRUEevaluated 969 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) {
0-969
897 t = quoted
quotedDescription
TRUEnever evaluated
FALSEevaluated 969 times by 1 test
Evaluated by:
  • Self test
? quote_string(((ae)->value)) : ((ae)->value);
0-969
898 reg = strlen(t);-
899 do { if ((
(rlen) + ((reg...+ 2)) >= rsizeDescription
TRUEevaluated 9 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 960 times by 1 test
Evaluated by:
  • Self test
rlen) + ((reg + slen + 2)) >= rsize
(rlen) + ((reg...+ 2)) >= rsizeDescription
TRUEevaluated 9 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 960 times by 1 test
Evaluated by:
  • Self test
) { while ((
(rlen) + ((reg...+ 2)) >= rsizeDescription
TRUEevaluated 9 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 9 times by 1 test
Evaluated by:
  • Self test
rlen) + ((reg + slen + 2)) >= rsize
(rlen) + ((reg...+ 2)) >= rsizeDescription
TRUEevaluated 9 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 9 times by 1 test
Evaluated by:
  • Self test
) rsize += (rsize);
executed 9 times by 1 test: rsize += (rsize);
Executed by:
  • Self test
result = sh_xrealloc((result), (rsize),
9-960
900 "array.c"-
901 ,-
902 919-
903 ); }
executed 9 times by 1 test: end of block
Executed by:
  • Self test
} while (0)
9
904 ;-
905 strcpy(result + rlen, t);-
906 rlen += reg;-
907 if (quoted
quotedDescription
TRUEnever evaluated
FALSEevaluated 969 times by 1 test
Evaluated by:
  • Self test
)
0-969
908 sh_xfree((t), "array.c", 923);
never executed: sh_xfree((t), "array.c", 923);
0
909-
910-
911-
912 if (((
((ae)->next) != endDescription
TRUEevaluated 745 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 224 times by 1 test
Evaluated by:
  • Self test
ae)->next) != end
((ae)->next) != endDescription
TRUEevaluated 745 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 224 times by 1 test
Evaluated by:
  • Self test
) {
224-745
913 strcpy(result + rlen, sep);-
914 rlen += slen;-
915 }
executed 745 times by 1 test: end of block
Executed by:
  • Self test
745
916 }
executed 969 times by 1 test: end of block
Executed by:
  • Self test
969
917 }
executed 969 times by 1 test: end of block
Executed by:
  • Self test
969
918 if (result
resultDescription
TRUEevaluated 224 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
)
0-224
919 result[rlen] = '\0';
executed 224 times by 1 test: result[rlen] = '\0';
Executed by:
  • Self test
224
920 return
executed 224 times by 1 test: return(result);
Executed by:
  • Self test
(result);
executed 224 times by 1 test: return(result);
Executed by:
  • Self test
224
921}-
922-
923char *-
924array_to_assign (a, quoted)-
925ARRAY *a;-
926int quoted;-
927{-
928 char *result, *valstr, *is;-
929 char indstr[((sizeof (intmax_t) * 8 - (! ((intmax_t) 0 < (intmax_t) -1))) * 302 / 1000 + 1 + (! ((intmax_t) 0 < (intmax_t) -1))) + 1];-
930 ARRAY_ELEMENT *ae;-
931 int rsize, rlen, elen;-
932-
933 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 277 times by 1 test
Evaluated by:
  • Self test
|| ((
((a)->num_elements == 0)Description
TRUEevaluated 51 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 226 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEevaluated 51 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 226 times by 1 test
Evaluated by:
  • Self test
)
0-277
934 return
executed 51 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
((char *)
executed 51 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
51
935 ((void *)0)
executed 51 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
51
936 );
executed 51 times by 1 test: return((char *) ((void *)0) );
Executed by:
  • Self test
51
937-
938 result = (char *)sh_xmalloc((rsize = 128), "array.c", 951);-
939 result[0] = '(';-
940 rlen = 1;-
941-
942 for (ae = ((a->head)->next); ae != a->head
ae != a->headDescription
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 226 times by 1 test
Evaluated by:
  • Self test
; ae = ((ae)->next)) {
226-523
943 is = inttostr (((ae)->ind), indstr, sizeof(indstr));-
944 valstr = ((
((ae)->value)Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
ae)->value)
((ae)->value)Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
?
0-523
945 (ansic_shouldquote (((ae)->value))
ansic_shouldqu...((ae)->value))Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 520 times by 1 test
Evaluated by:
  • Self test
?
3-520
946 ansic_quote (((ae)->value), 0, (int *)0) :-
947 sh_double_quote (((ae)->value)))-
948 : (char *)-
949 ((void *)0)-
950 ;-
951 elen = (((is)
(is)Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
&& (is)[
(is)[0]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
0]
(is)[0]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) ? ((is)[
(is)[1]Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 514 times by 1 test
Evaluated by:
  • Self test
1]
(is)[1]Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 514 times by 1 test
Evaluated by:
  • Self test
? ((is)[
(is)[2]Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test
2]
(is)[2]Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test
? strlen(is) : 2) : 1) : 0) + 8 + (((
(valstr)Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
valstr)
(valstr)Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
&& (
(valstr)[0]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
valstr)[0]
(valstr)[0]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) ? ((
(valstr)[1]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
valstr)[1]
(valstr)[1]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
? ((
(valstr)[2]Description
TRUEevaluated 505 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 18 times by 1 test
Evaluated by:
  • Self test
valstr)[2]
(valstr)[2]Description
TRUEevaluated 505 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 18 times by 1 test
Evaluated by:
  • Self test
? strlen(valstr) : 2) : 1) : 0);
0-523
952 do { if ((
(rlen) + ((elen + 1)) >= rsizeDescription
TRUEnever evaluated
FALSEevaluated 523 times by 1 test
Evaluated by:
  • Self test
rlen) + ((elen + 1)) >= rsize
(rlen) + ((elen + 1)) >= rsizeDescription
TRUEnever evaluated
FALSEevaluated 523 times by 1 test
Evaluated by:
  • Self test
) { while ((
(rlen) + ((elen + 1)) >= rsizeDescription
TRUEnever evaluated
FALSEnever evaluated
rlen) + ((elen + 1)) >= rsize
(rlen) + ((elen + 1)) >= rsizeDescription
TRUEnever evaluated
FALSEnever evaluated
) rsize += (rsize);
never executed: rsize += (rsize);
result = sh_xrealloc((result), (rsize), "array.c", 963); }
never executed: end of block
} while (0);
0-523
953-
954 result[rlen++] = '[';-
955 strcpy (result + rlen, is);-
956 rlen += (((is)
(is)Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
&& (is)[
(is)[0]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
0]
(is)[0]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) ? ((is)[
(is)[1]Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 514 times by 1 test
Evaluated by:
  • Self test
1]
(is)[1]Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 514 times by 1 test
Evaluated by:
  • Self test
? ((is)[
(is)[2]Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test
2]
(is)[2]Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test
? strlen(is) : 2) : 1) : 0);
0-523
957 result[rlen++] = ']';-
958 result[rlen++] = '=';-
959 if (valstr
valstrDescription
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) {
0-523
960 strcpy (result + rlen, valstr);-
961 rlen += (((
(valstr)Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
valstr)
(valstr)Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
&& (
(valstr)[0]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
valstr)[0]
(valstr)[0]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) ? ((
(valstr)[1]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
valstr)[1]
(valstr)[1]Description
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
? ((
(valstr)[2]Description
TRUEevaluated 505 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 18 times by 1 test
Evaluated by:
  • Self test
valstr)[2]
(valstr)[2]Description
TRUEevaluated 505 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 18 times by 1 test
Evaluated by:
  • Self test
? strlen(valstr) : 2) : 1) : 0);
0-523
962 }
executed 523 times by 1 test: end of block
Executed by:
  • Self test
523
963-
964 if (((
((ae)->next) != a->headDescription
TRUEevaluated 297 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 226 times by 1 test
Evaluated by:
  • Self test
ae)->next) != a->head
((ae)->next) != a->headDescription
TRUEevaluated 297 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 226 times by 1 test
Evaluated by:
  • Self test
)
226-297
965 result[rlen++] = ' ';
executed 297 times by 1 test: result[rlen++] = ' ';
Executed by:
  • Self test
297
966-
967 do { if (valstr
valstrDescription
TRUEevaluated 523 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
) sh_xfree((valstr), "array.c", 978);
executed 523 times by 1 test: sh_xfree((valstr), "array.c", 978);
Executed by:
  • Self test
} while (0);
0-523
968 }
executed 523 times by 1 test: end of block
Executed by:
  • Self test
523
969 do { if ((
(rlen) + (1) >= rsizeDescription
TRUEnever evaluated
FALSEevaluated 226 times by 1 test
Evaluated by:
  • Self test
rlen) + (1) >= rsize
(rlen) + (1) >= rsizeDescription
TRUEnever evaluated
FALSEevaluated 226 times by 1 test
Evaluated by:
  • Self test
) { while ((
(rlen) + (1) >= rsizeDescription
TRUEnever evaluated
FALSEnever evaluated
rlen) + (1) >= rsize
(rlen) + (1) >= rsizeDescription
TRUEnever evaluated
FALSEnever evaluated
) rsize += (8);
never executed: rsize += (8);
result = sh_xrealloc((result), (rsize), "array.c", 980); }
never executed: end of block
} while (0);
0-226
970 result[rlen++] = ')';-
971 result[rlen] = '\0';-
972 if (quoted
quotedDescription
TRUEnever evaluated
FALSEevaluated 226 times by 1 test
Evaluated by:
  • Self test
) {
0-226
973-
974 valstr = sh_single_quote (result);-
975 sh_xfree((result), "array.c", 986);-
976 result = valstr;-
977 }
never executed: end of block
0
978 return
executed 226 times by 1 test: return(result);
Executed by:
  • Self test
(result);
executed 226 times by 1 test: return(result);
Executed by:
  • Self test
226
979}-
980-
981char *-
982array_to_string (a, sep, quoted)-
983ARRAY *a;-
984char *sep;-
985int quoted;-
986{-
987 if (a == 0
a == 0Description
TRUEnever evaluated
FALSEevaluated 224 times by 1 test
Evaluated by:
  • Self test
)
0-224
988 return
never executed: return((char *) ((void *)0) );
((char *)
never executed: return((char *) ((void *)0) );
0
989 ((void *)0)
never executed: return((char *) ((void *)0) );
0
990 );
never executed: return((char *) ((void *)0) );
0
991 if (((
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 224 times by 1 test
Evaluated by:
  • Self test
a)->num_elements == 0)
((a)->num_elements == 0)Description
TRUEnever evaluated
FALSEevaluated 224 times by 1 test
Evaluated by:
  • Self test
)
0-224
992 return
never executed: return((char *)strcpy (sh_xmalloc((1 + strlen ("")), "array.c", 1001), ("")));
((char *)strcpy (sh_xmalloc((1 + strlen ("")), "array.c", 1001), ("")));
never executed: return((char *)strcpy (sh_xmalloc((1 + strlen ("")), "array.c", 1001), ("")));
0
993 return
executed 224 times by 1 test: return (array_to_string_internal (((a->head)->next), a->head, sep, quoted));
Executed by:
  • Self test
(array_to_string_internal (((a->head)->next), a->head, sep, quoted));
executed 224 times by 1 test: return (array_to_string_internal (((a->head)->next), a->head, sep, quoted));
Executed by:
  • Self test
224
994}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.1.2