3 ########################################################################
5 # File: generate_framework_tests
6 # Author: Janis Johnson
9 # Generate tests of GCC's test framework. Each test has encoded in
10 # its name the dg commands that are used in the test and the expected
11 # result of the test, *-1.c. Each test is followed by a test ending
12 # in *-2.c that is expected to pass.
14 # This script has evolved and could be rewritten to be more compact.
17 # Copyright (c) 2004, 2005 Free Software Foundation, Inc.
19 # This file is free software; you can redistribute it and/or modify
20 # it under the terms of the GNU General Public License as published by
21 # the Free Software Foundation; either version 2 of the License, or
22 # (at your option) any later version.
24 # This program is distributed in the hope that it will be useful,
25 # but WITHOUT ANY WARRANTY; without even the implied warranty of
26 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 # GNU General Public License for more details.
29 # For a copy of the GNU General Public License, write the the
30 # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
31 # Boston, MA 02111-1307, USA.
33 ########################################################################
39 BAD0='empty-empty-empty'
42 # Programs used in the tests: good compile and run, bad compile, and
44 GOOD_PROG="int main () { return 0; }"
45 BADC_PROG="int missing_body () }"
46 BADR_PROG="extern void abort (void); int main () { abort (); }"
48 # dg-do commands with a target list.
49 DOT_S0="{ dg-do compile { target ${GOOD0} } }"
50 DOT_S1="{ dg-do compile { target ${GOOD1} } }"
51 DOT_N0="{ dg-do compile { target ${BAD0} } }"
52 DOT_N1="{ dg-do compile { target ${BAD1} } }"
54 # dg-do commands with an xfail list; the xfail list is ignored for
55 # everything but "run".
56 DOX_P0="{ dg-do run { xfail ${BAD0} } }"
57 DOX_P1="{ dg-do run { xfail ${BAD1} } }"
58 DOX_F0="{ dg-do run { xfail ${GOOD0} } }"
59 DOX_F1="{ dg-do run { xfail ${GOOD1} } }"
61 # dg-xfail-if commands.
62 XIF_P0="{ dg-xfail-if \"target not matched\" { ${BAD0} } { \"-DY1\" } { \"-DY2\" } }"
63 XIF_P1="{ dg-xfail-if \"target not matched\" { ${BAD0} } { \"-DY1\" } { \"-DN\" } }"
64 XIF_P2="{ dg-xfail-if \"target not matched\" { ${BAD0} } { \"-DN\" } { \"-DY1\" } }"
65 XIF_P3="{ dg-xfail-if \"target not matched\" { ${BAD0} } { \"-DN1\" } { \"-DN2\" } }"
66 XIF_P4="{ dg-xfail-if \"exclude option matched\" { ${GOOD0} } { \"-DY1\" } { \"-DY2\" } }"
67 XIF_P5="{ dg-xfail-if \"include option not matched\" { ${GOOD0} } { \"-DN\" } { \"-DY1\" } }"
68 XIF_P6="{ dg-xfail-if \"include option not matched\" { ${GOOD0} } { \"-DN1\" } { \"-DN2\" } }"
69 XIF_F0="{ dg-xfail-if \"all matches succeed\" { ${GOOD0} } { \"-DY1\" } { \"-DN\" } }"
70 XIF_F1="{ dg-xfail-if \"all matches succeed\" { ${GOOD0} } { \"*\" } { \"-DN\" } }"
71 XIF_F2="{ dg-xfail-if \"all matches succeed\" { ${GOOD0} } { \"-DY1\" } { \"\" } }"
72 XIF_F3="{ dg-xfail-if \"all matches succeed\" { ${GOOD0} } { \"*\" } { \"\" } }"
74 XIF_P7="{ dg-xfail-if \"target not matched\" { ${BAD1} } { \"-DY1\" } { \"-DY2\" } }"
75 XIF_P8="{ dg-xfail-if \"target not matched\" { ${BAD1} } { \"-DY1\" } { \"-DN\" } }"
76 XIF_P9="{ dg-xfail-if \"target not matched\" { ${BAD1} } { \"-DN\" } { \"-DY1\" } }"
77 XIF_P10="{ dg-xfail-if \"target not matched\" { ${BAD1} } { \"-DN1\" } { \"-DN2\" } }"
78 XIF_P11="{ dg-xfail-if \"exclude option matched\" { ${GOOD1} } { \"-DY1\" } { \"-DY2\" } }"
79 XIF_P12="{ dg-xfail-if \"include option not matched\" { ${GOOD1} } { \"-DN\" } { \"-DY1\" } }"
80 XIF_P13="{ dg-xfail-if \"include option not matched\" { ${GOOD1} } { \"-DN1\" } { \"-DN2\" } }"
81 XIF_F4="{ dg-xfail-if \"all matches succeed\" { ${GOOD1} } { \"-DY1\" } { \"-DN\" } }"
82 XIF_F5="{ dg-xfail-if \"all matches succeed\" { ${GOOD1} } { \"*\" } { \"-DN\" } }"
83 XIF_F6="{ dg-xfail-if \"all matches succeed\" { ${GOOD1} } { \"-DY1\" } { \"\" } }"
84 XIF_F7="{ dg-xfail-if \"all matches succeed\" { ${GOOD1} } { \"*\" } { \"\" } }"
87 # dg-skip-if commands.
88 SIF_S0="{ dg-skip-if \"target not matched\" { ${BAD0} } { \"-DY1\" } { \"-DY2\" } }"
89 SIF_S1="{ dg-skip-if \"target not matched\" { ${BAD0} } { \"-DY1\" } { \"-DN\" } }"
90 SIF_S2="{ dg-skip-if \"target not matched\" { ${BAD0} } { \"-DN\" } { \"-DY1\" } }"
91 SIF_S3="{ dg-skip-if \"target not matched\" { ${BAD0} } { \"-DN1\" } { \"-DN2\" } }"
92 SIF_S4="{ dg-skip-if \"exclude option matched\" { ${GOOD0} } { \"-DY1\" } { \"-DY2\" } }"
93 SIF_S5="{ dg-skip-if \"include option not matched\" { ${GOOD0} } { \"-DN\" } { \"-DY1\" } }"
94 SIF_S6="{ dg-skip-if \"include option not matched\" { ${GOOD0} } { \"-DN1\" } { \"-DN2\" } }"
95 SIF_N0="{ dg-skip-if \"all matches succeed\" { ${GOOD0} } { \"-DY1\" } { \"-DN\" } }"
96 SIF_N1="{ dg-skip-if \"all matches succeed\" { ${GOOD0} } { \"*\" } { \"-DN\" } }"
97 SIF_N2="{ dg-skip-if \"all matches succeed\" { ${GOOD0} } { \"-DY1\" } { \"\" } }"
98 SIF_N3="{ dg-skip-if \"all matches succeed\" { ${GOOD0} } { \"*\" } { \"\" } }"
99 SIF_S7="{ dg-skip-if \"target not matched\" { ${BAD1} } { \"-DY1\" } { \"-DY2\" } }"
100 SIF_S8="{ dg-skip-if \"target not matched\" { ${BAD1} } { \"-DY1\" } { \"-DN\" } }"
101 SIF_S9="{ dg-skip-if \"target not matched\" { ${BAD1} } { \"-DN\" } { \"-DY1\" } }"
102 SIF_S10="{ dg-skip-if \"target not matched\" { ${BAD1} } { \"-DN1\" } { \"-DN2\" } }"
103 SIF_S11="{ dg-skip-if \"exclude option matched\" { ${GOOD1} } { \"-DY1\" } { \"-DY2\" } }"
104 SIF_S12="{ dg-skip-if \"include option not matched\" { ${GOOD1} } { \"-DN\" } { \"-DY1\" } }"
105 SIF_S13="{ dg-skip-if \"include option not matched\" { ${GOOD1} } { \"-DN1\" } { \"-DN2\" } }"
106 SIF_N4="{ dg-skip-if \"all matches succeed\" { ${GOOD1} } { \"-DY1\" } { \"-DN\" } }"
107 SIF_N5="{ dg-skip-if \"all matches succeed\" { ${GOOD1} } { \"*\" } { \"-DN\" } }"
108 SIF_N6="{ dg-skip-if \"all matches succeed\" { ${GOOD1} } { \"-DY1\" } { \"\" } }"
109 SIF_N7="{ dg-skip-if \"all matches succeed\" { ${GOOD1} } { \"*\" } { \"\" } }"
111 # dg-require-* commands, using procedures defined for this set of tests.
112 REQ_S0="{ dg-require-true \"\" }" # do not skip the test
113 REQ_N0="{ dg-require-false \"\" }" # skip the test
115 # scan-assembler-not, which is hoped to be representative of commands
116 # used with dg-final, with a target list.
117 SAT_N0="{ dg-final { scan-assembler-not \"unexpected gargage\" { target ${BAD0} } } }"
118 SAT_N1="{ dg-final { scan-assembler-not \"unexpected gargage\" { target ${BAD1} } } }"
119 SAT_S0="{ dg-final { scan-assembler-not \"unexpected gargage\" { target ${GOOD0} } } }"
120 SAT_S1="{ dg-final { scan-assembler-not \"unexpected gargage\" { target ${GOOD1} } } }"
122 # scan-assembler-not, which is hoped to be representative of commands
123 # used with dg-final, with an xfail list.
124 SAX_P0="{ dg-final { scan-assembler-not \"unexpected gargage\" { xfail ${BAD0} } } }"
125 SAX_P1="{ dg-final { scan-assembler-not \"unexpected gargage\" { xfail ${BAD1} } } }"
126 SAX_F0="{ dg-final { scan-assembler-not \"unexpected gargage\" { xfail ${GOOD0} } } }"
127 SAX_F1="{ dg-final { scan-assembler-not \"unexpected gargage\" { xfail ${GOOD1} } } }"
131 # Expected result of the *-1.c test, encoded into the file name.
141 "dots") KIND_LIST="dots0 dots1";;
142 "dotn") KIND_LIST="dotn0 dotn1";;
143 "doxp") KIND_LIST="doxp0 doxp1";;
144 "doxf") KIND_LIST="doxf0 doxf1";;
145 "sifs") KIND_LIST="sifs0 sifs1 sifs2 sifs3 sifs4 sifs5 sifs6 sifs7 sifs8 sifs9 sifs10 sifs11 sifs12 sifs13";;
146 "sifn") KIND_LIST="sifn0 sifn1 sifn2 sifn3 sifn4 sifn5 sifn6 sifn7";;
147 "xifp") KIND_LIST="xifp0 xifp1 xifp2 xifp3 xifp4 xifp5 xifp6 xifp7 xifp8 xifp9 xifp10 xifp11 xifp12 xifp13";;
148 "xiff") KIND_LIST="xiff0 xiff1 xiff2 xiff3 xiff4 xiff5 xiff6 xiff7";;
149 "sats") KIND_LIST="sats0 sats1";;
150 "satn") KIND_LIST="satn0 satn1";;
151 "saxp") KIND_LIST="saxp0 saxp1";;
152 "saxf") KIND_LIST="saxf0 saxf1";;
153 "reqs") KIND_LIST="reqs0";;
154 "reqn") KIND_LIST="reqn0";;
155 *) echo "oops: $KIND"; exit 1;;
164 "dots") echo '/*' "${DOT_S0}" '*/' >> $FILE;;
165 "dots0") echo '/*' "${DOT_S0}" '*/' >> $FILE;;
166 "dots1") echo '/*' "${DOT_S1}" '*/' >> $FILE;;
167 "dots2") echo '/*' "${DOT_S2}" '*/' >> $FILE;;
168 "dots3") echo '/*' "${DOT_S3}" '*/' >> $FILE;;
169 "dots4") echo '/*' "${DOT_S4}" '*/' >> $FILE;;
170 "dotn") echo '/*' "${DOT_N0}" '*/' >> $FILE;;
171 "dotn0") echo '/*' "${DOT_N0}" '*/' >> $FILE;;
172 "dotn1") echo '/*' "${DOT_N1}" '*/' >> $FILE;;
173 "dotn2") echo '/*' "${DOT_N2}" '*/' >> $FILE;;
174 "dotn3") echo '/*' "${DOT_N3}" '*/' >> $FILE;;
175 "dotn4") echo '/*' "${DOT_N4}" '*/' >> $FILE;;
176 "doxp") echo '/*' "${DOX_P0}" '*/' >> $FILE;;
177 "doxp0") echo '/*' "${DOX_P0}" '*/' >> $FILE;;
178 "doxp1") echo '/*' "${DOX_P1}" '*/' >> $FILE;;
179 "doxp2") echo '/*' "${DOX_P2}" '*/' >> $FILE;;
180 "doxp3") echo '/*' "${DOX_P3}" '*/' >> $FILE;;
181 "doxp4") echo '/*' "${DOX_P4}" '*/' >> $FILE;;
182 "doxf") echo '/*' "${DOX_F0}" '*/' >> $FILE;;
183 "doxf0") echo '/*' "${DOX_F0}" '*/' >> $FILE;;
184 "doxf1") echo '/*' "${DOX_F1}" '*/' >> $FILE;;
185 "doxf2") echo '/*' "${DOX_F2}" '*/' >> $FILE;;
186 "doxf3") echo '/*' "${DOX_F3}" '*/' >> $FILE;;
187 "doxf4") echo '/*' "${DOX_F4}" '*/' >> $FILE;;
188 "sifs") echo '/*' "${SIF_S0}" '*/' >> $FILE;;
189 "sifs0") echo '/*' "${SIF_S0}" '*/' >> $FILE;;
190 "sifs1") echo '/*' "${SIF_S1}" '*/' >> $FILE;;
191 "sifs2") echo '/*' "${SIF_S2}" '*/' >> $FILE;;
192 "sifs3") echo '/*' "${SIF_S3}" '*/' >> $FILE;;
193 "sifs4") echo '/*' "${SIF_S4}" '*/' >> $FILE;;
194 "sifs5") echo '/*' "${SIF_S5}" '*/' >> $FILE;;
195 "sifs6") echo '/*' "${SIF_S6}" '*/' >> $FILE;;
196 "sifs7") echo '/*' "${SIF_S7}" '*/' >> $FILE;;
197 "sifs8") echo '/*' "${SIF_S8}" '*/' >> $FILE;;
198 "sifs9") echo '/*' "${SIF_S9}" '*/' >> $FILE;;
199 "sifs10") echo '/*' "${SIF_S10}" '*/' >> $FILE;;
200 "sifs11") echo '/*' "${SIF_S11}" '*/' >> $FILE;;
201 "sifs12") echo '/*' "${SIF_S12}" '*/' >> $FILE;;
202 "sifs13") echo '/*' "${SIF_S13}" '*/' >> $FILE;;
203 "sifn") echo '/*' "${SIF_N0}" '*/' >> $FILE;;
204 "sifn0") echo '/*' "${SIF_N0}" '*/' >> $FILE;;
205 "sifn1") echo '/*' "${SIF_N1}" '*/' >> $FILE;;
206 "sifn2") echo '/*' "${SIF_N2}" '*/' >> $FILE;;
207 "sifn3") echo '/*' "${SIF_N3}" '*/' >> $FILE;;
208 "sifn4") echo '/*' "${SIF_N4}" '*/' >> $FILE;;
209 "sifn5") echo '/*' "${SIF_N5}" '*/' >> $FILE;;
210 "sifn6") echo '/*' "${SIF_N6}" '*/' >> $FILE;;
211 "sifn7") echo '/*' "${SIF_N7}" '*/' >> $FILE;;
212 "xifp") echo '/*' "${XIF_P0}" '*/' >> $FILE;;
213 "xifp0") echo '/*' "${XIF_P0}" '*/' >> $FILE;;
214 "xifp1") echo '/*' "${XIF_P1}" '*/' >> $FILE;;
215 "xifp2") echo '/*' "${XIF_P2}" '*/' >> $FILE;;
216 "xifp3") echo '/*' "${XIF_P3}" '*/' >> $FILE;;
217 "xifp4") echo '/*' "${XIF_P4}" '*/' >> $FILE;;
218 "xifp5") echo '/*' "${XIF_P5}" '*/' >> $FILE;;
219 "xifp6") echo '/*' "${XIF_P6}" '*/' >> $FILE;;
220 "xifp7") echo '/*' "${XIF_P7}" '*/' >> $FILE;;
221 "xifp8") echo '/*' "${XIF_P8}" '*/' >> $FILE;;
222 "xifp9") echo '/*' "${XIF_P9}" '*/' >> $FILE;;
223 "xifp10") echo '/*' "${XIF_P10}" '*/' >> $FILE;;
224 "xifp11") echo '/*' "${XIF_P11}" '*/' >> $FILE;;
225 "xifp12") echo '/*' "${XIF_P12}" '*/' >> $FILE;;
226 "xifp13") echo '/*' "${XIF_P13}" '*/' >> $FILE;;
227 "xiff") echo '/*' "${XIF_F0}" '*/' >> $FILE;;
228 "xiff0") echo '/*' "${XIF_F0}" '*/' >> $FILE;;
229 "xiff1") echo '/*' "${XIF_F1}" '*/' >> $FILE;;
230 "xiff2") echo '/*' "${XIF_F2}" '*/' >> $FILE;;
231 "xiff3") echo '/*' "${XIF_F3}" '*/' >> $FILE;;
232 "xiff4") echo '/*' "${XIF_F4}" '*/' >> $FILE;;
233 "xiff5") echo '/*' "${XIF_F5}" '*/' >> $FILE;;
234 "xiff6") echo '/*' "${XIF_F6}" '*/' >> $FILE;;
235 "xiff7") echo '/*' "${XIF_F7}" '*/' >> $FILE;;
236 "satn") echo '/*' "${SAT_N0}" '*/' >> $FILE;;
237 "satn0") echo '/*' "${SAT_N0}" '*/' >> $FILE;;
238 "satn1") echo '/*' "${SAT_N1}" '*/' >> $FILE;;
239 "satn2") echo '/*' "${SAT_N2}" '*/' >> $FILE;;
240 "satn3") echo '/*' "${SAT_N3}" '*/' >> $FILE;;
241 "satn4") echo '/*' "${SAT_N4}" '*/' >> $FILE;;
242 "sats") echo '/*' "${SAT_S0}" '*/' >> $FILE;;
243 "sats0") echo '/*' "${SAT_S0}" '*/' >> $FILE;;
244 "sats1") echo '/*' "${SAT_S1}" '*/' >> $FILE;;
245 "sats2") echo '/*' "${SAT_S2}" '*/' >> $FILE;;
246 "sats3") echo '/*' "${SAT_S3}" '*/' >> $FILE;;
247 "sats4") echo '/*' "${SAT_S4}" '*/' >> $FILE;;
248 "saxp") echo '/*' "${SAX_P0}" '*/' >> $FILE;;
249 "saxp0") echo '/*' "${SAX_P0}" '*/' >> $FILE;;
250 "saxp1") echo '/*' "${SAX_P1}" '*/' >> $FILE;;
251 "saxp2") echo '/*' "${SAX_P2}" '*/' >> $FILE;;
252 "saxp3") echo '/*' "${SAX_P3}" '*/' >> $FILE;;
253 "saxp4") echo '/*' "${SAX_P4}" '*/' >> $FILE;;
254 "saxf") echo '/*' "${SAX_F0}" '*/' >> $FILE;;
255 "saxf0") echo '/*' "${SAX_F0}" '*/' >> $FILE;;
256 "saxf1") echo '/*' "${SAX_F1}" '*/' >> $FILE;;
257 "saxf2") echo '/*' "${SAX_F2}" '*/' >> $FILE;;
258 "saxf3") echo '/*' "${SAX_F3}" '*/' >> $FILE;;
259 "saxf4") echo '/*' "${SAX_F4}" '*/' >> $FILE;;
260 "reqs") echo '/*' "${REQ_S0}" '*/' >> $FILE;;
261 "reqs0") echo '/*' "${REQ_S0}" '*/' >> $FILE;;
262 "reqn") echo '/*' "${REQ_N0}" '*/' >> $FILE;;
263 "reqn0") echo '/*' "${REQ_N0}" '*/' >> $FILE;;
264 *) echo "oops: $KIND"; exit 1;;
268 # Generate a test using a single dg- command. If requested, generate a
269 # second version that will fail.
281 echo "${GOOD_PROG}" >> $FILE1
282 echo "${GOOD_PROG}" > $FILE2
284 if [ "${FAIL_VERSION}" == "yes" ]; then
285 if [ "${EXP}" == "${EXP_PASS}" ]; then
286 NAME=${KIND}-${EXP_FAIL}
288 NAME=${KIND}-${EXP_XFAIL}
297 dox*) echo "${BADR_PROG}" >> $FILE1;;
298 *) echo "${BADC_PROG}" >> $FILE1;;
300 echo "${GOOD_PROG}" > $FILE2
304 # Generate a test using two dg- commands. If requested, generate a
305 # second version that will fail.
312 NAME=${KIND1}-${KIND2}-${EXP}
320 echo "${GOOD_PROG}" >> $FILE1
321 echo "${GOOD_PROG}" > $FILE2
323 if [ "${FAIL_VERSION}" == "yes" ]; then
324 if [ "${EXP}" == "${EXP_PASS}" ]; then
325 NAME=${KIND1}-${KIND2}-${EXP_FAIL}
327 NAME=${KIND1}-${KIND2}-${EXP_XFAIL}
336 # dg-do with an xfail list is only used as the first command.
338 dox*) echo "${BADR_PROG}" >> $FILE1;;
339 *) echo "${BADC_PROG}" >> $FILE1;;
341 echo "${GOOD_PROG}" > $FILE2
345 # Generate a test using three dg- commands. If requested generate a
346 # second version that will fail.
354 NAME=${KIND1}-${KIND2}-${KIND3}-${EXP}
362 echo "${GOOD_PROG}" >> $FILE1
363 echo "${GOOD_PROG}" > $FILE2
365 if [ "${FAIL_VERSION}" == "${yes}" ]; then
366 if [ "${EXP}" == "${EXP_PASS}" ]; then
367 NAME=${KIND1}-${KIND2}-${KIND3}-${EXP_FAIL}
369 NAME=${KIND1}-${KIND2}-${KIND3}-${EXP_XFAIL}
379 # dg-do with an xfail list is only used as the first command.
381 dox*) echo "${BADR_PROG}" >> $FILE1;;
382 *) echo "${BADC_PROG}" >> $FILE1;;
384 echo "${GOOD_PROG}" > $FILE2
388 # Generate tests using one dg- command. Generate a test for each variant
396 for k in $KIND_LIST; do
397 one $k $EXP $FAIL_VERSION
401 # Generate tests using two dg- commands. For each KIND, generate
402 # a test for each of its variants.
410 KIND_LIST1="$KIND_LIST"
412 KIND_LIST2="$KIND_LIST"
413 for k1 in $KIND_LIST1; do
414 for k2 in $KIND_LIST2; do
415 two $k1 $k2 $EXP $FAIL_VERSION
420 # Generate tests using three dg- commands. For each KIND, generate
421 # a test for each of its variants.
430 KIND_LIST1="$KIND_LIST"
432 KIND_LIST2="$KIND_LIST"
434 KIND_LIST3="$KIND_LIST"
435 for k1 in $KIND_LIST1; do
436 for k2 in $KIND_LIST2; do
437 for k3 in $KIND_LIST3; do
438 three $k1 $k2 $k3 $EXP $FAIL_VERSION
444 one_all saxp $EXP_PASS no
445 one_all saxf $EXP_XPASS no
446 one_all sats $EXP_PASS no
447 one_all satn $EXP_SKIP no
448 one_all dots $EXP_PASS yes
449 one_all dotn $EXP_SKIP no
450 one_all doxp $EXP_PASS yes
451 one_all doxf $EXP_XPASS yes
452 one_all sifs $EXP_PASS yes
453 one_all sifn $EXP_SKIP no
454 one_all xifp $EXP_PASS yes
455 one_all xiff $EXP_XPASS yes
456 one_all reqs $EXP_PASS yes
457 one_all reqn $EXP_SKIP no
459 two_all dots xifp $EXP_PASS yes
460 two_all dots xiff $EXP_XPASS yes
461 two_all dots sifs $EXP_PASS yes
462 two_all dots sifn $EXP_SKIP no
463 two_all dotn xifp $EXP_SKIP no
464 two_all dotn sifs $EXP_SKIP no
465 two_all dotn sifn $EXP_SKIP no
466 two_all dotn xiff $EXP_SKIP no
467 two_all dots reqs $EXP_PASS yes
468 two_all dots reqn $EXP_SKIP no
469 two_all dotn reqs $EXP_SKIP no
470 two_all dotn reqn $EXP_SKIP no
472 two_all doxp xifp $EXP_PASS yes
473 two_all doxp xiff $EXP_PASS yes # dg-xfail-if applies to compile, not run
474 two_all doxp sifs $EXP_PASS yes
475 two_all doxp sifn $EXP_SKIP no
476 two_all doxf xifp $EXP_XPASS yes
477 two_all doxf xiff $EXP_XPASS yes
478 two_all doxf sifs $EXP_XPASS yes
479 two_all doxf sifn $EXP_SKIP no
481 two_all doxp reqs $EXP_PASS yes
482 two_all doxp reqn $EXP_SKIP no
483 two_all doxf reqs $EXP_XPASS yes
484 two_all doxf reqn $EXP_SKIP no
486 two_all reqs xifp $EXP_PASS yes
487 two_all reqs xiff $EXP_XPASS yes
488 two_all reqs sifs $EXP_PASS yes
489 two_all reqs sifn $EXP_SKIP no
490 two_all reqn xifp $EXP_SKIP no
491 two_all reqn xiff $EXP_SKIP no
492 two_all reqn sifs $EXP_SKIP no
493 two_all reqn sifn $EXP_SKIP no
495 two_all xifp reqs $EXP_PASS yes
496 two_all xiff reqs $EXP_XPASS yes
497 two_all sifs reqs $EXP_PASS yes
498 two_all sifn reqs $EXP_SKIP no
499 two_all xifp reqn $EXP_SKIP no
500 two_all xiff reqn $EXP_SKIP no
501 two_all sifs reqn $EXP_SKIP no
502 two_all sifn reqn $EXP_SKIP no
504 three_all dots reqs xifp $EXP_PASS yes
505 three_all dots reqs xiff $EXP_XPASS yes
506 three_all dots reqs sifs $EXP_PASS yes
507 three_all dots reqs sifn $EXP_SKIP no
508 three_all dots reqn xifp $EXP_SKIP no
509 three_all dots reqn xiff $EXP_SKIP no
510 three_all dots reqn sifs $EXP_SKIP no
511 three_all dots reqn sifn $EXP_SKIP no
512 three_all dotn reqs xifp $EXP_SKIP no
513 three_all dotn reqs xiff $EXP_SKIP no
514 three_all dotn reqs sifs $EXP_SKIP no
515 three_all dotn reqs sifn $EXP_SKIP no
516 three_all dotn reqn xifp $EXP_SKIP no
517 three_all dotn reqn xiff $EXP_SKIP no
518 three_all dotn reqn sifs $EXP_SKIP no
519 three_all dotn reqn sifn $EXP_SKIP no
521 three_all dots xifp reqs $EXP_PASS yes
522 three_all dots xiff reqs $EXP_XPASS yes
523 three_all dots sifs reqs $EXP_PASS yes
524 three_all dots sifn reqs $EXP_SKIP no
525 three_all dots xifp reqn $EXP_SKIP no
526 three_all dots xiff reqn $EXP_SKIP no
527 three_all dots sifs reqn $EXP_SKIP no
528 three_all dots sifn reqn $EXP_SKIP no
529 three_all dotn xifp reqs $EXP_SKIP no
530 three_all dotn xiff reqs $EXP_SKIP no
531 three_all dotn sifs reqs $EXP_SKIP no
532 three_all dotn sifn reqs $EXP_SKIP no
533 three_all dotn xifp reqn $EXP_SKIP no
534 three_all dotn xiff reqn $EXP_SKIP no
535 three_all dotn sifs reqn $EXP_SKIP no
536 three_all dotn sifn reqn $EXP_SKIP no
538 three_all doxp reqs xifp $EXP_PASS yes
539 three_all doxp reqs xiff $EXP_PASS yes # dg-xfail-if applies to compile, not run
540 three_all doxp reqs sifs $EXP_PASS yes
541 three_all doxp reqs sifn $EXP_SKIP no
542 three_all doxp reqn xifp $EXP_SKIP no
543 three_all doxp reqn xiff $EXP_SKIP no
544 three_all doxp reqn sifs $EXP_SKIP no
545 three_all doxp reqn sifn $EXP_SKIP no
546 three_all doxf reqs xifp $EXP_XPASS yes
547 three_all doxf reqs xiff $EXP_XPASS yes
548 three_all doxf reqs sifs $EXP_XPASS yes
549 three_all doxf reqs sifn $EXP_SKIP no
550 three_all doxf reqn xifp $EXP_SKIP no
551 three_all doxf reqn xiff $EXP_SKIP no
552 three_all doxf reqn sifs $EXP_SKIP no
553 three_all doxf reqn sifn $EXP_SKIP no
555 three_all doxp xifp reqs $EXP_PASS yes
556 three_all doxp xiff reqs $EXP_PASS yes # dg-xfail-if applies to compile, not run
557 three_all doxp sifs reqs $EXP_PASS yes
558 three_all doxp sifn reqs $EXP_SKIP no
559 three_all doxp xifp reqn $EXP_SKIP no
560 three_all doxp xiff reqn $EXP_SKIP no
561 three_all doxp sifs reqn $EXP_SKIP no
562 three_all doxp sifn reqn $EXP_SKIP no
563 three_all doxf xifp reqs $EXP_XPASS yes
564 three_all doxf xiff reqs $EXP_XPASS yes
565 three_all doxf sifs reqs $EXP_XPASS yes
566 three_all doxf sifn reqs $EXP_SKIP no
567 three_all doxf xifp reqn $EXP_SKIP no
568 three_all doxf xiff reqn $EXP_SKIP no
569 three_all doxf sifs reqn $EXP_SKIP no
570 three_all doxf sifn reqn $EXP_SKIP no