* gdb.c++/classes.exp, gdb.c++/cplusfuncs.exp,
authorJim Kingdon <jkingdon@engr.sgi.com>
Fri, 20 Jan 1995 22:26:33 +0000 (22:26 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Fri, 20 Jan 1995 22:26:33 +0000 (22:26 +0000)
gdb.c++/inherit.exp, gdb.c++/templates.exp, gdb.c++/virtfunc.exp,
gdb.fortran/exprs.exp, gdb.fortran/types.exp, gdb.chill/chexp.exp,
gdb.base/printcmds.exp: Remove passcount, failcount, etc., stuff;
it makes the tests harder to understand and confuses test-o-matic.
The preferred style is that each test provides a PASS or a FAIL,
and has a unique message (e.g. "continue #54" not just "continue")
which is the same for the pass and the fail.
* gdb.fortran/exprs.exp, gdb.fortran/types.exp,
gdb.chill/chexp.exp: Move test_print_accept and test_print_reject
to lib/gdb.exp.
* gdb.base/printcmds.exp: Use test_print_accept.  Remove
prt_accept which was basically the same thing.  Likewise for
test_print_reject and prt_reject.
* lib/gdb.exp (test_print_reject): Add some more error message
patterns to match from the former printcmds.exp (prt_reject).
* gdb.c++/classes.exp, gdb.base/scope.exp: Remove spurious xfails.
One defect of the passcount stuff is that some of it failed to
report XPASS where appropriate.
* gdb.c++/cplusfuncs.exp (print_addr_of): No longer accept extra
stuff before and after arg in expected pattern.
(test_paddr_operator_functions): Re-do test without print_addr_of;
this is the only test which seems to want extra stuff there.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/printcmds.exp
gdb/testsuite/gdb.chill/chexp.exp
gdb/testsuite/gdb.fortran/exprs.exp
gdb/testsuite/lib/gdb.exp

index 91c36d3ad38b2d9306613bbbf2bb81efe5290223..5dfa0c6139209d1b55c663f2fdb5b0c4b31c98ac 100644 (file)
@@ -1,5 +1,34 @@
+Fri Jan 20 12:14:23 1995  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * gdb.c++/classes.exp, gdb.c++/cplusfuncs.exp,
+       gdb.c++/inherit.exp, gdb.c++/templates.exp, gdb.c++/virtfunc.exp,
+       gdb.fortran/exprs.exp, gdb.fortran/types.exp, gdb.chill/chexp.exp,
+       gdb.base/printcmds.exp: Remove passcount, failcount, etc., stuff;
+       it makes the tests harder to understand and confuses test-o-matic.
+       The preferred style is that each test provides a PASS or a FAIL,
+       and has a unique message (e.g. "continue #54" not just "continue")
+       which is the same for the pass and the fail.
+       * gdb.fortran/exprs.exp, gdb.fortran/types.exp,
+       gdb.chill/chexp.exp: Move test_print_accept and test_print_reject
+       to lib/gdb.exp.
+       * gdb.base/printcmds.exp: Use test_print_accept.  Remove
+       prt_accept which was basically the same thing.  Likewise for
+       test_print_reject and prt_reject.
+       * lib/gdb.exp (test_print_reject): Add some more error message
+       patterns to match from the former printcmds.exp (prt_reject).
+       * gdb.c++/classes.exp, gdb.base/scope.exp: Remove spurious xfails.
+       One defect of the passcount stuff is that some of it failed to
+       report XPASS where appropriate.
+       * gdb.c++/cplusfuncs.exp (print_addr_of): No longer accept extra
+       stuff before and after arg in expected pattern.
+       (test_paddr_operator_functions): Re-do test without print_addr_of;
+       this is the only test which seems to want extra stuff there.
+
 Tue Jan 17 10:47:53 1995  Jim Kingdon  <kingdon@lioth.cygnus.com>
 
+       * gdb.base/nodebug.exp: Update new tests to reflect improved
+       wording of gdb output.
+
        * gdb.base/nodebug.exp: Add tests to check that "print", "whatis"
        and "ptype" work on variables in files compiled without -g.
        Replaces commented out "maint print msymbol" tests.
index 999388828df279b4586de2529b81bbd352649fe7..6b50540385ede82ba5b3eaeeecbec4c9393b2ca4 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 1992 Free Software Foundation, Inc.
+# Copyright (C) 1992, 1994 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -63,161 +63,63 @@ proc set_lang_c {} {
     }
 }
 
-# Testing printing of a specific value.  Increment passcount for
-# success or issue fail message for failure.  In both cases, return
-# a 1 to indicate that more tests can proceed.  However a timeout
-# is a serious error, generates a special fail message, and causes
-# a 0 to be returned to indicate that more tests are likely to fail
-# as well.
-
-proc prt_accept { sendthis expectthis } {
-    global prompt
-    global passcount
-    global xfail_flag
-
-    send "$sendthis\n"
-    expect {
-       -re ".* = $expectthis\r\n$prompt $" {
-           if $xfail_flag then { pass "$sendthis" }
-           incr passcount
-           return 1
-       }
-       -re ".*$prompt $" {
-           fail "$sendthis"
-           return 1
-       }
-       timeout {
-           fail "$sendthis (timeout)"
-           return 0
-       }
-    }
-}
-
 proc test_integer_literals_accepted {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test various decimal values.
 
-    prt_accept "p 123" "123"
-    prt_accept "p -123" "-123"
-    prt_accept "p/d 123" "123"
+    test_print_accept "p 123" "123"
+    test_print_accept "p -123" "-123"
+    test_print_accept "p/d 123" "123"
 
     # Test various octal values.
 
-    prt_accept "p 0123" "83"
-    prt_accept "p 00123" "83"
-    prt_accept "p -0123" "-83"
-    prt_accept "p/o 0123" "0123"
+    test_print_accept "p 0123" "83"
+    test_print_accept "p 00123" "83"
+    test_print_accept "p -0123" "-83"
+    test_print_accept "p/o 0123" "0123"
 
     # Test various hexadecimal values.
 
-    prt_accept "p 0x123" "291"
-    prt_accept "p -0x123" "-291"
-    prt_accept "p 0x0123" "291"
-    prt_accept "p -0x0123" "-291"
-    prt_accept "p 0xABCDEF" "11259375"
-    prt_accept "p 0xabcdef" "11259375"
-    prt_accept "p 0xAbCdEf" "11259375"
-    prt_accept "p/x 0x123" "0x123"
-
-    if $passcount then {
-       pass "$passcount correct integer literals printed"
-    }
+    test_print_accept "p 0x123" "291"
+    test_print_accept "p -0x123" "-291"
+    test_print_accept "p 0x0123" "291"
+    test_print_accept "p -0x0123" "-291"
+    test_print_accept "p 0xABCDEF" "11259375"
+    test_print_accept "p 0xabcdef" "11259375"
+    test_print_accept "p 0xAbCdEf" "11259375"
+    test_print_accept "p/x 0x123" "0x123"
 }
 
 proc test_character_literals_accepted {} {
     global prompt
-    global passcount
 
-    set passcount 0
-
-    prt_accept "p 'a'" "97 'a'"
-    prt_accept "p/c 'a'" "97 'a'"
-    prt_accept "p/x 'a'" "0x61"
-    prt_accept "p/d 'a'" "97"
-    prt_accept "p/t 'a'" "1100001"
-    prt_accept "p '\\141'" "97 'a'"
-    prt_accept "p/x '\\377'" "0xff"
+    test_print_accept "p 'a'" "97 'a'"
+    test_print_accept "p/c 'a'" "97 'a'"
+    test_print_accept "p/x 'a'" "0x61"
+    test_print_accept "p/d 'a'" "97"
+    test_print_accept "p/t 'a'" "1100001"
+    test_print_accept "p '\\141'" "97 'a'"
+    test_print_accept "p/x '\\377'" "0xff"
     # Note "p '\''" => "= 39 '\''"
-    prt_accept "p '''" "39 '\[\\'\]+'"
+    test_print_accept "p '''" "39 '\[\\'\]+'"
     # Note "p '\\'" => "= 92 '\\'"
-    prt_accept "p '\\\\'" "92 '\\\\\\\\'"
-
-    if $passcount then {
-       pass "$passcount correct character literals printed"
-    }
-}
-
-# Testing printing of a specific value.  Increment passcount for
-# success or issue fail message for failure.  In both cases, return
-# a 1 to indicate that more tests can proceed.  However a timeout
-# is a serious error, generates a special fail message, and causes
-# a 0 to be returned to indicate that more tests are likely to fail
-# as well.
-#
-# Note we aren't too selective about what sort of error is printed,
-# just that *some* error is printed.
-
-proc prt_reject { sendthis } {
-    global prompt
-    global passcount
-
-    send "$sendthis\n"
-    expect {
-       -re ".*Invalid syntax in expression.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*Junk after end of expression.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*Invalid number.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*Invalid character constant.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*No symbol table is loaded.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*No symbol .* in current context.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*$prompt $" {
-           fail "$sendthis not properly rejected"
-           return 1
-       }
-       timeout {
-           fail "$sendthis (timeout)"
-           return 0
-       }
-    }
+    test_print_accept "p '\\\\'" "92 '\\\\\\\\'"
 }
 
 proc test_integer_literals_rejected {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
-    prt_reject "p 0x" 
-    prt_reject "p ''" 
-    prt_reject "p '\'"
+    test_print_reject "p 0x" 
+    test_print_reject "p ''" 
+    test_print_reject "p '\'"
 
     # Note that this turns into "p '\\\'" at gdb's input.
-    prt_reject "p '\\\\\\'"
+    test_print_reject "p '\\\\\\'"
 
     # Test various decimal values.
 
-    prt_reject "p DEADBEEF"
+    test_print_reject "p DEADBEEF"
 
     # Gdb currently fails this test for all configurations.  The C
     # lexer thinks that 123DEADBEEF is a floating point number, but
@@ -225,289 +127,278 @@ proc test_integer_literals_rejected {} {
     # FIXME:  This should be put into PRMS.
 
     setup_xfail "*-*-*"
-    prt_reject "p 123DEADBEEF"
+    test_print_reject "p 123DEADBEEF"
 
     # Test various octal values.
 
-    prt_reject "p 09" 
-    prt_reject "p 079" 
+    test_print_reject "p 09" 
+    test_print_reject "p 079" 
 
     # Test various hexadecimal values.
 
-    prt_reject "p 0xG" 
-    prt_reject "p 0xAG" 
-
-    if $passcount then {
-       pass "$passcount incorrect integer literals rejected"
-    }
+    test_print_reject "p 0xG" 
+    test_print_reject "p 0xAG" 
 }
 
 proc test_print_all_chars {} {
     global prompt
-    global passcount
-
-    set passcount 0
-
-    prt_accept "p ctable1\[0\]"   "0 '\\\\000'"
-    prt_accept "p ctable1\[1\]"   "1 '\\\\001'"
-    prt_accept "p ctable1\[2\]"   "2 '\\\\002'"
-    prt_accept "p ctable1\[3\]"   "3 '\\\\003'"
-    prt_accept "p ctable1\[4\]"   "4 '\\\\004'"
-    prt_accept "p ctable1\[5\]"   "5 '\\\\005'"
-    prt_accept "p ctable1\[6\]"   "6 '\\\\006'"
-    prt_accept "p ctable1\[7\]"   "7 '\\\\a'"
-    prt_accept "p ctable1\[8\]"   "8 '\\\\b'"
-    prt_accept "p ctable1\[9\]"   "9 '\\\\t'"
-    prt_accept "p ctable1\[10\]"  "10 '\\\\n'"
-    prt_accept "p ctable1\[11\]"  "11 '\\\\013'"
-    prt_accept "p ctable1\[12\]"  "12 '\\\\f'"
-    prt_accept "p ctable1\[13\]"  "13 '\\\\r'"
-    prt_accept "p ctable1\[14\]"  "14 '\\\\016'"
-    prt_accept "p ctable1\[15\]"  "15 '\\\\017'"
-    prt_accept "p ctable1\[16\]"  "16 '\\\\020'"
-    prt_accept "p ctable1\[17\]"  "17 '\\\\021'"
-    prt_accept "p ctable1\[18\]"  "18 '\\\\022'"
-    prt_accept "p ctable1\[19\]"  "19 '\\\\023'"
-    prt_accept "p ctable1\[20\]"  "20 '\\\\024'"
-    prt_accept "p ctable1\[21\]"  "21 '\\\\025'"
-    prt_accept "p ctable1\[22\]"  "22 '\\\\026'"
-    prt_accept "p ctable1\[23\]"  "23 '\\\\027'"
-    prt_accept "p ctable1\[24\]"  "24 '\\\\030'"
-    prt_accept "p ctable1\[25\]"  "25 '\\\\031'"
-    prt_accept "p ctable1\[26\]"  "26 '\\\\032'"
-    prt_accept "p ctable1\[27\]"  "27 '\\\\e'"
-    prt_accept "p ctable1\[28\]"  "28 '\\\\034'"
-    prt_accept "p ctable1\[29\]"  "29 '\\\\035'"
-    prt_accept "p ctable1\[30\]"  "30 '\\\\036'"
-    prt_accept "p ctable1\[31\]"  "31 '\\\\037'"
-    prt_accept "p ctable1\[32\]"  "32 ' '"
-    prt_accept "p ctable1\[33\]"  "33 '!'"
-    prt_accept "p ctable1\[34\]"  "34 '\"'"
-    prt_accept "p ctable1\[35\]"  "35 '#'"
-    prt_accept "p ctable1\[36\]"  "36 '\\\$'"
-    prt_accept "p ctable1\[37\]"  "37 '%'"
-    prt_accept "p ctable1\[38\]"  "38 '&'"
-    prt_accept "p ctable1\[39\]"  "39 '\\\\''"
-    prt_accept "p ctable1\[40\]"  "40 '\[(\]+'"
-    prt_accept "p ctable1\[41\]"  "41 '\[)\]+'"
-    prt_accept "p ctable1\[42\]"  "42 '\[*\]+'"
-    prt_accept "p ctable1\[43\]"  "43 '\[+\]+'"
-    prt_accept "p ctable1\[44\]"  "44 ','"
-    prt_accept "p ctable1\[45\]"  "45 '-'"
-    prt_accept "p ctable1\[46\]"  "46 '.'"
-    prt_accept "p ctable1\[47\]"  "47 '/'"
-    prt_accept "p ctable1\[48\]"  "48 '0'"
-    prt_accept "p ctable1\[49\]"  "49 '1'"
-    prt_accept "p ctable1\[50\]"  "50 '2'"
-    prt_accept "p ctable1\[51\]"  "51 '3'"
-    prt_accept "p ctable1\[52\]"  "52 '4'"
-    prt_accept "p ctable1\[53\]"  "53 '5'"
-    prt_accept "p ctable1\[54\]"  "54 '6'"
-    prt_accept "p ctable1\[55\]"  "55 '7'"
-    prt_accept "p ctable1\[56\]"  "56 '8'"
-    prt_accept "p ctable1\[57\]"  "57 '9'"
-    prt_accept "p ctable1\[58\]"  "58 ':'"
-    prt_accept "p ctable1\[59\]"  "59 ';'"
-    prt_accept "p ctable1\[60\]"  "60 '<'"
-    prt_accept "p ctable1\[61\]"  "61 '='"
-    prt_accept "p ctable1\[62\]"  "62 '>'"
-    prt_accept "p ctable1\[63\]"  "63 '\\?'"
-    prt_accept "p ctable1\[64\]"  "64 '@'"
-    prt_accept "p ctable1\[65\]"  "65 'A'"
-    prt_accept "p ctable1\[66\]"  "66 'B'"
-    prt_accept "p ctable1\[67\]"  "67 'C'"
-    prt_accept "p ctable1\[68\]"  "68 'D'"
-    prt_accept "p ctable1\[69\]"  "69 'E'"
-    prt_accept "p ctable1\[70\]"  "70 'F'"
-    prt_accept "p ctable1\[71\]"  "71 'G'"
-    prt_accept "p ctable1\[72\]"  "72 'H'"
-    prt_accept "p ctable1\[73\]"  "73 'I'"
-    prt_accept "p ctable1\[74\]"  "74 'J'"
-    prt_accept "p ctable1\[75\]"  "75 'K'"
-    prt_accept "p ctable1\[76\]"  "76 'L'"
-    prt_accept "p ctable1\[77\]"  "77 'M'"
-    prt_accept "p ctable1\[78\]"  "78 'N'"
-    prt_accept "p ctable1\[79\]"  "79 'O'"
-    prt_accept "p ctable1\[80\]"  "80 'P'"
-    prt_accept "p ctable1\[81\]"  "81 'Q'"
-    prt_accept "p ctable1\[82\]"  "82 'R'"
-    prt_accept "p ctable1\[83\]"  "83 'S'"
-    prt_accept "p ctable1\[84\]"  "84 'T'"
-    prt_accept "p ctable1\[85\]"  "85 'U'"
-    prt_accept "p ctable1\[86\]"  "86 'V'"
-    prt_accept "p ctable1\[87\]"  "87 'W'"
-    prt_accept "p ctable1\[88\]"  "88 'X'"
-    prt_accept "p ctable1\[89\]"  "89 'Y'"
-    prt_accept "p ctable1\[90\]"  "90 'Z'"
-    prt_accept "p ctable1\[91\]"  "91 '\\\['"
-    prt_accept "p ctable1\[92\]"  "92 '\\\\\\\\'"
-    prt_accept "p ctable1\[93\]"  "93 '\\\]'"
-    prt_accept "p ctable1\[94\]"  "94 '\\^'"
-    prt_accept "p ctable1\[95\]"  "95 '_'"
-    prt_accept "p ctable1\[96\]"  "96 '`'"
-    prt_accept "p ctable1\[97\]"  "97 'a'"
-    prt_accept "p ctable1\[98\]"  "98 'b'"
-    prt_accept "p ctable1\[99\]"  "99 'c'"
-    prt_accept "p ctable1\[100\]" "100 'd'"
-    prt_accept "p ctable1\[101\]" "101 'e'"
-    prt_accept "p ctable1\[102\]" "102 'f'"
-    prt_accept "p ctable1\[103\]" "103 'g'"
-    prt_accept "p ctable1\[104\]" "104 'h'"
-    prt_accept "p ctable1\[105\]" "105 'i'"
-    prt_accept "p ctable1\[106\]" "106 'j'"
-    prt_accept "p ctable1\[107\]" "107 'k'"
-    prt_accept "p ctable1\[108\]" "108 'l'"
-    prt_accept "p ctable1\[109\]" "109 'm'"
-    prt_accept "p ctable1\[110\]" "110 'n'"
-    prt_accept "p ctable1\[111\]" "111 'o'"
-    prt_accept "p ctable1\[112\]" "112 'p'"
-    prt_accept "p ctable1\[113\]" "113 'q'"
-    prt_accept "p ctable1\[114\]" "114 'r'"
-    prt_accept "p ctable1\[115\]" "115 's'"
-    prt_accept "p ctable1\[116\]" "116 't'"
-    prt_accept "p ctable1\[117\]" "117 'u'"
-    prt_accept "p ctable1\[118\]" "118 'v'"
-    prt_accept "p ctable1\[119\]" "119 'w'"
-    prt_accept "p ctable1\[120\]" "120 'x'"
-    prt_accept "p ctable1\[121\]" "121 'y'"
-    prt_accept "p ctable1\[122\]" "122 'z'"
-    prt_accept "p ctable1\[123\]" "123 '\[{\]+'"
-    prt_accept "p ctable1\[124\]" "124 '\[|\]+'"
-    prt_accept "p ctable1\[125\]" "125 '\[}\]+'"
-    prt_accept "p ctable1\[126\]" "126 '\[~\]'"
-    prt_accept "p ctable1\[127\]" "127 '\\\\177'"
-    prt_accept "p ctable1\[128\]" "128 '\\\\200'"
-    prt_accept "p ctable1\[129\]" "129 '\\\\201'"
-    prt_accept "p ctable1\[130\]" "130 '\\\\202'"
-    prt_accept "p ctable1\[131\]" "131 '\\\\203'"
-    prt_accept "p ctable1\[132\]" "132 '\\\\204'"
-    prt_accept "p ctable1\[133\]" "133 '\\\\205'"
-    prt_accept "p ctable1\[134\]" "134 '\\\\206'"
-    prt_accept "p ctable1\[135\]" "135 '\\\\207'"
-    prt_accept "p ctable1\[136\]" "136 '\\\\210'"
-    prt_accept "p ctable1\[137\]" "137 '\\\\211'"
-    prt_accept "p ctable1\[138\]" "138 '\\\\212'"
-    prt_accept "p ctable1\[139\]" "139 '\\\\213'"
-    prt_accept "p ctable1\[140\]" "140 '\\\\214'"
-    prt_accept "p ctable1\[141\]" "141 '\\\\215'"
-    prt_accept "p ctable1\[142\]" "142 '\\\\216'"
-    prt_accept "p ctable1\[143\]" "143 '\\\\217'"
-    prt_accept "p ctable1\[144\]" "144 '\\\\220'"
-    prt_accept "p ctable1\[145\]" "145 '\\\\221'"
-    prt_accept "p ctable1\[146\]" "146 '\\\\222'"
-    prt_accept "p ctable1\[147\]" "147 '\\\\223'"
-    prt_accept "p ctable1\[148\]" "148 '\\\\224'"
-    prt_accept "p ctable1\[149\]" "149 '\\\\225'"
-    prt_accept "p ctable1\[150\]" "150 '\\\\226'"
-    prt_accept "p ctable1\[151\]" "151 '\\\\227'"
-    prt_accept "p ctable1\[152\]" "152 '\\\\230'"
-    prt_accept "p ctable1\[153\]" "153 '\\\\231'"
-    prt_accept "p ctable1\[154\]" "154 '\\\\232'"
-    prt_accept "p ctable1\[155\]" "155 '\\\\233'"
-    prt_accept "p ctable1\[156\]" "156 '\\\\234'"
-    prt_accept "p ctable1\[157\]" "157 '\\\\235'"
-    prt_accept "p ctable1\[158\]" "158 '\\\\236'"
-    prt_accept "p ctable1\[159\]" "159 '\\\\237'"
-    prt_accept "p ctable1\[160\]" "160 '\\\\240'"
-    prt_accept "p ctable1\[161\]" "161 '\\\\241'"
-    prt_accept "p ctable1\[162\]" "162 '\\\\242'"
-    prt_accept "p ctable1\[163\]" "163 '\\\\243'"
-    prt_accept "p ctable1\[164\]" "164 '\\\\244'"
-    prt_accept "p ctable1\[165\]" "165 '\\\\245'"
-    prt_accept "p ctable1\[166\]" "166 '\\\\246'"
-    prt_accept "p ctable1\[167\]" "167 '\\\\247'"
-    prt_accept "p ctable1\[168\]" "168 '\\\\250'"
-    prt_accept "p ctable1\[169\]" "169 '\\\\251'"
-    prt_accept "p ctable1\[170\]" "170 '\\\\252'"
-    prt_accept "p ctable1\[171\]" "171 '\\\\253'"
-    prt_accept "p ctable1\[172\]" "172 '\\\\254'"
-    prt_accept "p ctable1\[173\]" "173 '\\\\255'"
-    prt_accept "p ctable1\[174\]" "174 '\\\\256'"
-    prt_accept "p ctable1\[175\]" "175 '\\\\257'"
-    prt_accept "p ctable1\[176\]" "176 '\\\\260'"
-    prt_accept "p ctable1\[177\]" "177 '\\\\261'"
-    prt_accept "p ctable1\[178\]" "178 '\\\\262'"
-    prt_accept "p ctable1\[179\]" "179 '\\\\263'"
-    prt_accept "p ctable1\[180\]" "180 '\\\\264'"
-    prt_accept "p ctable1\[181\]" "181 '\\\\265'"
-    prt_accept "p ctable1\[182\]" "182 '\\\\266'"
-    prt_accept "p ctable1\[183\]" "183 '\\\\267'"
-    prt_accept "p ctable1\[184\]" "184 '\\\\270'"
-    prt_accept "p ctable1\[185\]" "185 '\\\\271'"
-    prt_accept "p ctable1\[186\]" "186 '\\\\272'"
-    prt_accept "p ctable1\[187\]" "187 '\\\\273'"
-    prt_accept "p ctable1\[188\]" "188 '\\\\274'"
-    prt_accept "p ctable1\[189\]" "189 '\\\\275'"
-    prt_accept "p ctable1\[190\]" "190 '\\\\276'"
-    prt_accept "p ctable1\[191\]" "191 '\\\\277'"
-    prt_accept "p ctable1\[192\]" "192 '\\\\300'"
-    prt_accept "p ctable1\[193\]" "193 '\\\\301'"
-    prt_accept "p ctable1\[194\]" "194 '\\\\302'"
-    prt_accept "p ctable1\[195\]" "195 '\\\\303'"
-    prt_accept "p ctable1\[196\]" "196 '\\\\304'"
-    prt_accept "p ctable1\[197\]" "197 '\\\\305'"
-    prt_accept "p ctable1\[198\]" "198 '\\\\306'"
-    prt_accept "p ctable1\[199\]" "199 '\\\\307'"
-    prt_accept "p ctable1\[200\]" "200 '\\\\310'"
-    prt_accept "p ctable1\[201\]" "201 '\\\\311'"
-    prt_accept "p ctable1\[202\]" "202 '\\\\312'"
-    prt_accept "p ctable1\[203\]" "203 '\\\\313'"
-    prt_accept "p ctable1\[204\]" "204 '\\\\314'"
-    prt_accept "p ctable1\[205\]" "205 '\\\\315'"
-    prt_accept "p ctable1\[206\]" "206 '\\\\316'"
-    prt_accept "p ctable1\[207\]" "207 '\\\\317'"
-    prt_accept "p ctable1\[208\]" "208 '\\\\320'"
-    prt_accept "p ctable1\[209\]" "209 '\\\\321'"
-    prt_accept "p ctable1\[210\]" "210 '\\\\322'"
-    prt_accept "p ctable1\[211\]" "211 '\\\\323'"
-    prt_accept "p ctable1\[212\]" "212 '\\\\324'"
-    prt_accept "p ctable1\[213\]" "213 '\\\\325'"
-    prt_accept "p ctable1\[214\]" "214 '\\\\326'"
-    prt_accept "p ctable1\[215\]" "215 '\\\\327'"
-    prt_accept "p ctable1\[216\]" "216 '\\\\330'"
-    prt_accept "p ctable1\[217\]" "217 '\\\\331'"
-    prt_accept "p ctable1\[218\]" "218 '\\\\332'"
-    prt_accept "p ctable1\[219\]" "219 '\\\\333'"
-    prt_accept "p ctable1\[220\]" "220 '\\\\334'"
-    prt_accept "p ctable1\[221\]" "221 '\\\\335'"
-    prt_accept "p ctable1\[222\]" "222 '\\\\336'"
-    prt_accept "p ctable1\[223\]" "223 '\\\\337'"
-    prt_accept "p ctable1\[224\]" "224 '\\\\340'"
-    prt_accept "p ctable1\[225\]" "225 '\\\\341'"
-    prt_accept "p ctable1\[226\]" "226 '\\\\342'"
-    prt_accept "p ctable1\[227\]" "227 '\\\\343'"
-    prt_accept "p ctable1\[228\]" "228 '\\\\344'"
-    prt_accept "p ctable1\[229\]" "229 '\\\\345'"
-    prt_accept "p ctable1\[230\]" "230 '\\\\346'"
-    prt_accept "p ctable1\[231\]" "231 '\\\\347'"
-    prt_accept "p ctable1\[232\]" "232 '\\\\350'"
-    prt_accept "p ctable1\[233\]" "233 '\\\\351'"
-    prt_accept "p ctable1\[234\]" "234 '\\\\352'"
-    prt_accept "p ctable1\[235\]" "235 '\\\\353'"
-    prt_accept "p ctable1\[236\]" "236 '\\\\354'"
-    prt_accept "p ctable1\[237\]" "237 '\\\\355'"
-    prt_accept "p ctable1\[238\]" "238 '\\\\356'"
-    prt_accept "p ctable1\[239\]" "239 '\\\\357'"
-    prt_accept "p ctable1\[240\]" "240 '\\\\360'"
-    prt_accept "p ctable1\[241\]" "241 '\\\\361'"
-    prt_accept "p ctable1\[242\]" "242 '\\\\362'"
-    prt_accept "p ctable1\[243\]" "243 '\\\\363'"
-    prt_accept "p ctable1\[244\]" "244 '\\\\364'"
-    prt_accept "p ctable1\[245\]" "245 '\\\\365'"
-    prt_accept "p ctable1\[246\]" "246 '\\\\366'"
-    prt_accept "p ctable1\[247\]" "247 '\\\\367'"
-    prt_accept "p ctable1\[248\]" "248 '\\\\370'"
-    prt_accept "p ctable1\[249\]" "249 '\\\\371'"
-    prt_accept "p ctable1\[250\]" "250 '\\\\372'"
-    prt_accept "p ctable1\[251\]" "251 '\\\\373'"
-    prt_accept "p ctable1\[252\]" "252 '\\\\374'"
-    prt_accept "p ctable1\[253\]" "253 '\\\\375'"
-    prt_accept "p ctable1\[254\]" "254 '\\\\376'"
-    prt_accept "p ctable1\[255\]" "255 '\\\\377'"
-
-    if $passcount then {
-       pass "$passcount of 256 characters printed from ASCII table"
-    }
+
+    test_print_accept "p ctable1\[0\]"   "0 '\\\\000'"
+    test_print_accept "p ctable1\[1\]"   "1 '\\\\001'"
+    test_print_accept "p ctable1\[2\]"   "2 '\\\\002'"
+    test_print_accept "p ctable1\[3\]"   "3 '\\\\003'"
+    test_print_accept "p ctable1\[4\]"   "4 '\\\\004'"
+    test_print_accept "p ctable1\[5\]"   "5 '\\\\005'"
+    test_print_accept "p ctable1\[6\]"   "6 '\\\\006'"
+    test_print_accept "p ctable1\[7\]"   "7 '\\\\a'"
+    test_print_accept "p ctable1\[8\]"   "8 '\\\\b'"
+    test_print_accept "p ctable1\[9\]"   "9 '\\\\t'"
+    test_print_accept "p ctable1\[10\]"  "10 '\\\\n'"
+    test_print_accept "p ctable1\[11\]"  "11 '\\\\013'"
+    test_print_accept "p ctable1\[12\]"  "12 '\\\\f'"
+    test_print_accept "p ctable1\[13\]"  "13 '\\\\r'"
+    test_print_accept "p ctable1\[14\]"  "14 '\\\\016'"
+    test_print_accept "p ctable1\[15\]"  "15 '\\\\017'"
+    test_print_accept "p ctable1\[16\]"  "16 '\\\\020'"
+    test_print_accept "p ctable1\[17\]"  "17 '\\\\021'"
+    test_print_accept "p ctable1\[18\]"  "18 '\\\\022'"
+    test_print_accept "p ctable1\[19\]"  "19 '\\\\023'"
+    test_print_accept "p ctable1\[20\]"  "20 '\\\\024'"
+    test_print_accept "p ctable1\[21\]"  "21 '\\\\025'"
+    test_print_accept "p ctable1\[22\]"  "22 '\\\\026'"
+    test_print_accept "p ctable1\[23\]"  "23 '\\\\027'"
+    test_print_accept "p ctable1\[24\]"  "24 '\\\\030'"
+    test_print_accept "p ctable1\[25\]"  "25 '\\\\031'"
+    test_print_accept "p ctable1\[26\]"  "26 '\\\\032'"
+    test_print_accept "p ctable1\[27\]"  "27 '\\\\e'"
+    test_print_accept "p ctable1\[28\]"  "28 '\\\\034'"
+    test_print_accept "p ctable1\[29\]"  "29 '\\\\035'"
+    test_print_accept "p ctable1\[30\]"  "30 '\\\\036'"
+    test_print_accept "p ctable1\[31\]"  "31 '\\\\037'"
+    test_print_accept "p ctable1\[32\]"  "32 ' '"
+    test_print_accept "p ctable1\[33\]"  "33 '!'"
+    test_print_accept "p ctable1\[34\]"  "34 '\"'"
+    test_print_accept "p ctable1\[35\]"  "35 '#'"
+    test_print_accept "p ctable1\[36\]"  "36 '\\\$'"
+    test_print_accept "p ctable1\[37\]"  "37 '%'"
+    test_print_accept "p ctable1\[38\]"  "38 '&'"
+    test_print_accept "p ctable1\[39\]"  "39 '\\\\''"
+    test_print_accept "p ctable1\[40\]"  "40 '\[(\]+'"
+    test_print_accept "p ctable1\[41\]"  "41 '\[)\]+'"
+    test_print_accept "p ctable1\[42\]"  "42 '\[*\]+'"
+    test_print_accept "p ctable1\[43\]"  "43 '\[+\]+'"
+    test_print_accept "p ctable1\[44\]"  "44 ','"
+    test_print_accept "p ctable1\[45\]"  "45 '-'"
+    test_print_accept "p ctable1\[46\]"  "46 '.'"
+    test_print_accept "p ctable1\[47\]"  "47 '/'"
+    test_print_accept "p ctable1\[48\]"  "48 '0'"
+    test_print_accept "p ctable1\[49\]"  "49 '1'"
+    test_print_accept "p ctable1\[50\]"  "50 '2'"
+    test_print_accept "p ctable1\[51\]"  "51 '3'"
+    test_print_accept "p ctable1\[52\]"  "52 '4'"
+    test_print_accept "p ctable1\[53\]"  "53 '5'"
+    test_print_accept "p ctable1\[54\]"  "54 '6'"
+    test_print_accept "p ctable1\[55\]"  "55 '7'"
+    test_print_accept "p ctable1\[56\]"  "56 '8'"
+    test_print_accept "p ctable1\[57\]"  "57 '9'"
+    test_print_accept "p ctable1\[58\]"  "58 ':'"
+    test_print_accept "p ctable1\[59\]"  "59 ';'"
+    test_print_accept "p ctable1\[60\]"  "60 '<'"
+    test_print_accept "p ctable1\[61\]"  "61 '='"
+    test_print_accept "p ctable1\[62\]"  "62 '>'"
+    test_print_accept "p ctable1\[63\]"  "63 '\\?'"
+    test_print_accept "p ctable1\[64\]"  "64 '@'"
+    test_print_accept "p ctable1\[65\]"  "65 'A'"
+    test_print_accept "p ctable1\[66\]"  "66 'B'"
+    test_print_accept "p ctable1\[67\]"  "67 'C'"
+    test_print_accept "p ctable1\[68\]"  "68 'D'"
+    test_print_accept "p ctable1\[69\]"  "69 'E'"
+    test_print_accept "p ctable1\[70\]"  "70 'F'"
+    test_print_accept "p ctable1\[71\]"  "71 'G'"
+    test_print_accept "p ctable1\[72\]"  "72 'H'"
+    test_print_accept "p ctable1\[73\]"  "73 'I'"
+    test_print_accept "p ctable1\[74\]"  "74 'J'"
+    test_print_accept "p ctable1\[75\]"  "75 'K'"
+    test_print_accept "p ctable1\[76\]"  "76 'L'"
+    test_print_accept "p ctable1\[77\]"  "77 'M'"
+    test_print_accept "p ctable1\[78\]"  "78 'N'"
+    test_print_accept "p ctable1\[79\]"  "79 'O'"
+    test_print_accept "p ctable1\[80\]"  "80 'P'"
+    test_print_accept "p ctable1\[81\]"  "81 'Q'"
+    test_print_accept "p ctable1\[82\]"  "82 'R'"
+    test_print_accept "p ctable1\[83\]"  "83 'S'"
+    test_print_accept "p ctable1\[84\]"  "84 'T'"
+    test_print_accept "p ctable1\[85\]"  "85 'U'"
+    test_print_accept "p ctable1\[86\]"  "86 'V'"
+    test_print_accept "p ctable1\[87\]"  "87 'W'"
+    test_print_accept "p ctable1\[88\]"  "88 'X'"
+    test_print_accept "p ctable1\[89\]"  "89 'Y'"
+    test_print_accept "p ctable1\[90\]"  "90 'Z'"
+    test_print_accept "p ctable1\[91\]"  "91 '\\\['"
+    test_print_accept "p ctable1\[92\]"  "92 '\\\\\\\\'"
+    test_print_accept "p ctable1\[93\]"  "93 '\\\]'"
+    test_print_accept "p ctable1\[94\]"  "94 '\\^'"
+    test_print_accept "p ctable1\[95\]"  "95 '_'"
+    test_print_accept "p ctable1\[96\]"  "96 '`'"
+    test_print_accept "p ctable1\[97\]"  "97 'a'"
+    test_print_accept "p ctable1\[98\]"  "98 'b'"
+    test_print_accept "p ctable1\[99\]"  "99 'c'"
+    test_print_accept "p ctable1\[100\]" "100 'd'"
+    test_print_accept "p ctable1\[101\]" "101 'e'"
+    test_print_accept "p ctable1\[102\]" "102 'f'"
+    test_print_accept "p ctable1\[103\]" "103 'g'"
+    test_print_accept "p ctable1\[104\]" "104 'h'"
+    test_print_accept "p ctable1\[105\]" "105 'i'"
+    test_print_accept "p ctable1\[106\]" "106 'j'"
+    test_print_accept "p ctable1\[107\]" "107 'k'"
+    test_print_accept "p ctable1\[108\]" "108 'l'"
+    test_print_accept "p ctable1\[109\]" "109 'm'"
+    test_print_accept "p ctable1\[110\]" "110 'n'"
+    test_print_accept "p ctable1\[111\]" "111 'o'"
+    test_print_accept "p ctable1\[112\]" "112 'p'"
+    test_print_accept "p ctable1\[113\]" "113 'q'"
+    test_print_accept "p ctable1\[114\]" "114 'r'"
+    test_print_accept "p ctable1\[115\]" "115 's'"
+    test_print_accept "p ctable1\[116\]" "116 't'"
+    test_print_accept "p ctable1\[117\]" "117 'u'"
+    test_print_accept "p ctable1\[118\]" "118 'v'"
+    test_print_accept "p ctable1\[119\]" "119 'w'"
+    test_print_accept "p ctable1\[120\]" "120 'x'"
+    test_print_accept "p ctable1\[121\]" "121 'y'"
+    test_print_accept "p ctable1\[122\]" "122 'z'"
+    test_print_accept "p ctable1\[123\]" "123 '\[{\]+'"
+    test_print_accept "p ctable1\[124\]" "124 '\[|\]+'"
+    test_print_accept "p ctable1\[125\]" "125 '\[}\]+'"
+    test_print_accept "p ctable1\[126\]" "126 '\[~\]'"
+    test_print_accept "p ctable1\[127\]" "127 '\\\\177'"
+    test_print_accept "p ctable1\[128\]" "128 '\\\\200'"
+    test_print_accept "p ctable1\[129\]" "129 '\\\\201'"
+    test_print_accept "p ctable1\[130\]" "130 '\\\\202'"
+    test_print_accept "p ctable1\[131\]" "131 '\\\\203'"
+    test_print_accept "p ctable1\[132\]" "132 '\\\\204'"
+    test_print_accept "p ctable1\[133\]" "133 '\\\\205'"
+    test_print_accept "p ctable1\[134\]" "134 '\\\\206'"
+    test_print_accept "p ctable1\[135\]" "135 '\\\\207'"
+    test_print_accept "p ctable1\[136\]" "136 '\\\\210'"
+    test_print_accept "p ctable1\[137\]" "137 '\\\\211'"
+    test_print_accept "p ctable1\[138\]" "138 '\\\\212'"
+    test_print_accept "p ctable1\[139\]" "139 '\\\\213'"
+    test_print_accept "p ctable1\[140\]" "140 '\\\\214'"
+    test_print_accept "p ctable1\[141\]" "141 '\\\\215'"
+    test_print_accept "p ctable1\[142\]" "142 '\\\\216'"
+    test_print_accept "p ctable1\[143\]" "143 '\\\\217'"
+    test_print_accept "p ctable1\[144\]" "144 '\\\\220'"
+    test_print_accept "p ctable1\[145\]" "145 '\\\\221'"
+    test_print_accept "p ctable1\[146\]" "146 '\\\\222'"
+    test_print_accept "p ctable1\[147\]" "147 '\\\\223'"
+    test_print_accept "p ctable1\[148\]" "148 '\\\\224'"
+    test_print_accept "p ctable1\[149\]" "149 '\\\\225'"
+    test_print_accept "p ctable1\[150\]" "150 '\\\\226'"
+    test_print_accept "p ctable1\[151\]" "151 '\\\\227'"
+    test_print_accept "p ctable1\[152\]" "152 '\\\\230'"
+    test_print_accept "p ctable1\[153\]" "153 '\\\\231'"
+    test_print_accept "p ctable1\[154\]" "154 '\\\\232'"
+    test_print_accept "p ctable1\[155\]" "155 '\\\\233'"
+    test_print_accept "p ctable1\[156\]" "156 '\\\\234'"
+    test_print_accept "p ctable1\[157\]" "157 '\\\\235'"
+    test_print_accept "p ctable1\[158\]" "158 '\\\\236'"
+    test_print_accept "p ctable1\[159\]" "159 '\\\\237'"
+    test_print_accept "p ctable1\[160\]" "160 '\\\\240'"
+    test_print_accept "p ctable1\[161\]" "161 '\\\\241'"
+    test_print_accept "p ctable1\[162\]" "162 '\\\\242'"
+    test_print_accept "p ctable1\[163\]" "163 '\\\\243'"
+    test_print_accept "p ctable1\[164\]" "164 '\\\\244'"
+    test_print_accept "p ctable1\[165\]" "165 '\\\\245'"
+    test_print_accept "p ctable1\[166\]" "166 '\\\\246'"
+    test_print_accept "p ctable1\[167\]" "167 '\\\\247'"
+    test_print_accept "p ctable1\[168\]" "168 '\\\\250'"
+    test_print_accept "p ctable1\[169\]" "169 '\\\\251'"
+    test_print_accept "p ctable1\[170\]" "170 '\\\\252'"
+    test_print_accept "p ctable1\[171\]" "171 '\\\\253'"
+    test_print_accept "p ctable1\[172\]" "172 '\\\\254'"
+    test_print_accept "p ctable1\[173\]" "173 '\\\\255'"
+    test_print_accept "p ctable1\[174\]" "174 '\\\\256'"
+    test_print_accept "p ctable1\[175\]" "175 '\\\\257'"
+    test_print_accept "p ctable1\[176\]" "176 '\\\\260'"
+    test_print_accept "p ctable1\[177\]" "177 '\\\\261'"
+    test_print_accept "p ctable1\[178\]" "178 '\\\\262'"
+    test_print_accept "p ctable1\[179\]" "179 '\\\\263'"
+    test_print_accept "p ctable1\[180\]" "180 '\\\\264'"
+    test_print_accept "p ctable1\[181\]" "181 '\\\\265'"
+    test_print_accept "p ctable1\[182\]" "182 '\\\\266'"
+    test_print_accept "p ctable1\[183\]" "183 '\\\\267'"
+    test_print_accept "p ctable1\[184\]" "184 '\\\\270'"
+    test_print_accept "p ctable1\[185\]" "185 '\\\\271'"
+    test_print_accept "p ctable1\[186\]" "186 '\\\\272'"
+    test_print_accept "p ctable1\[187\]" "187 '\\\\273'"
+    test_print_accept "p ctable1\[188\]" "188 '\\\\274'"
+    test_print_accept "p ctable1\[189\]" "189 '\\\\275'"
+    test_print_accept "p ctable1\[190\]" "190 '\\\\276'"
+    test_print_accept "p ctable1\[191\]" "191 '\\\\277'"
+    test_print_accept "p ctable1\[192\]" "192 '\\\\300'"
+    test_print_accept "p ctable1\[193\]" "193 '\\\\301'"
+    test_print_accept "p ctable1\[194\]" "194 '\\\\302'"
+    test_print_accept "p ctable1\[195\]" "195 '\\\\303'"
+    test_print_accept "p ctable1\[196\]" "196 '\\\\304'"
+    test_print_accept "p ctable1\[197\]" "197 '\\\\305'"
+    test_print_accept "p ctable1\[198\]" "198 '\\\\306'"
+    test_print_accept "p ctable1\[199\]" "199 '\\\\307'"
+    test_print_accept "p ctable1\[200\]" "200 '\\\\310'"
+    test_print_accept "p ctable1\[201\]" "201 '\\\\311'"
+    test_print_accept "p ctable1\[202\]" "202 '\\\\312'"
+    test_print_accept "p ctable1\[203\]" "203 '\\\\313'"
+    test_print_accept "p ctable1\[204\]" "204 '\\\\314'"
+    test_print_accept "p ctable1\[205\]" "205 '\\\\315'"
+    test_print_accept "p ctable1\[206\]" "206 '\\\\316'"
+    test_print_accept "p ctable1\[207\]" "207 '\\\\317'"
+    test_print_accept "p ctable1\[208\]" "208 '\\\\320'"
+    test_print_accept "p ctable1\[209\]" "209 '\\\\321'"
+    test_print_accept "p ctable1\[210\]" "210 '\\\\322'"
+    test_print_accept "p ctable1\[211\]" "211 '\\\\323'"
+    test_print_accept "p ctable1\[212\]" "212 '\\\\324'"
+    test_print_accept "p ctable1\[213\]" "213 '\\\\325'"
+    test_print_accept "p ctable1\[214\]" "214 '\\\\326'"
+    test_print_accept "p ctable1\[215\]" "215 '\\\\327'"
+    test_print_accept "p ctable1\[216\]" "216 '\\\\330'"
+    test_print_accept "p ctable1\[217\]" "217 '\\\\331'"
+    test_print_accept "p ctable1\[218\]" "218 '\\\\332'"
+    test_print_accept "p ctable1\[219\]" "219 '\\\\333'"
+    test_print_accept "p ctable1\[220\]" "220 '\\\\334'"
+    test_print_accept "p ctable1\[221\]" "221 '\\\\335'"
+    test_print_accept "p ctable1\[222\]" "222 '\\\\336'"
+    test_print_accept "p ctable1\[223\]" "223 '\\\\337'"
+    test_print_accept "p ctable1\[224\]" "224 '\\\\340'"
+    test_print_accept "p ctable1\[225\]" "225 '\\\\341'"
+    test_print_accept "p ctable1\[226\]" "226 '\\\\342'"
+    test_print_accept "p ctable1\[227\]" "227 '\\\\343'"
+    test_print_accept "p ctable1\[228\]" "228 '\\\\344'"
+    test_print_accept "p ctable1\[229\]" "229 '\\\\345'"
+    test_print_accept "p ctable1\[230\]" "230 '\\\\346'"
+    test_print_accept "p ctable1\[231\]" "231 '\\\\347'"
+    test_print_accept "p ctable1\[232\]" "232 '\\\\350'"
+    test_print_accept "p ctable1\[233\]" "233 '\\\\351'"
+    test_print_accept "p ctable1\[234\]" "234 '\\\\352'"
+    test_print_accept "p ctable1\[235\]" "235 '\\\\353'"
+    test_print_accept "p ctable1\[236\]" "236 '\\\\354'"
+    test_print_accept "p ctable1\[237\]" "237 '\\\\355'"
+    test_print_accept "p ctable1\[238\]" "238 '\\\\356'"
+    test_print_accept "p ctable1\[239\]" "239 '\\\\357'"
+    test_print_accept "p ctable1\[240\]" "240 '\\\\360'"
+    test_print_accept "p ctable1\[241\]" "241 '\\\\361'"
+    test_print_accept "p ctable1\[242\]" "242 '\\\\362'"
+    test_print_accept "p ctable1\[243\]" "243 '\\\\363'"
+    test_print_accept "p ctable1\[244\]" "244 '\\\\364'"
+    test_print_accept "p ctable1\[245\]" "245 '\\\\365'"
+    test_print_accept "p ctable1\[246\]" "246 '\\\\366'"
+    test_print_accept "p ctable1\[247\]" "247 '\\\\367'"
+    test_print_accept "p ctable1\[248\]" "248 '\\\\370'"
+    test_print_accept "p ctable1\[249\]" "249 '\\\\371'"
+    test_print_accept "p ctable1\[250\]" "250 '\\\\372'"
+    test_print_accept "p ctable1\[251\]" "251 '\\\\373'"
+    test_print_accept "p ctable1\[252\]" "252 '\\\\374'"
+    test_print_accept "p ctable1\[253\]" "253 '\\\\375'"
+    test_print_accept "p ctable1\[254\]" "254 '\\\\376'"
+    test_print_accept "p ctable1\[255\]" "255 '\\\\377'"
 }
 
 # Test interaction of the number of print elements to print and the
@@ -515,716 +406,394 @@ proc test_print_all_chars {} {
 
 proc test_print_repeats_10 {} {
     global prompt
-    global passcount
 
-    set passcount 0
     send "set print elements 1\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 1 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"a\"..."
 
-    set passcount 0
     send "set print elements 2\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 2 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aX\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\"..."
 
-    set passcount 0
     send "set print elements 3\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 3 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXX\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaX\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\"..."
 
-    set passcount 0
     send "set print elements 4\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 4 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXX\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXX\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaX\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\"..."
 
-    set passcount 0
     send "set print elements 5\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 5 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXX\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXX\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXX\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaX\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\"..."
 
-    set passcount 0
     send "set print elements 6\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 6 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXX\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXX\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXX\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXX\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaX\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaa\"..."
 
-    set passcount 0
     send "set print elements 7\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 7 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXXX\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXX\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXX\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXX\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXX\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaX\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaa\"..."
 
-    set passcount 0
     send "set print elements 8\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 8 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXXXX\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXXX\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXXX\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXX\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXX\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXX\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaX\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaa\"..."
 
-    set passcount 0
     send "set print elements 9\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 9 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXXXXX\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXXXX\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXXXX\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXXX\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXXX\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXX\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXX\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaX\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaa\"..."
 
-    set passcount 0
     send "set print elements 10\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
-    if $passcount then {
-       pass "$passcount tests with elements = 10 and repeat count = 10"
-    }
+    test_print_accept "p &ctable2\[0*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXXXXXX\"..."
+    test_print_accept "p &ctable2\[1*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXXXXX\"..."
+    test_print_accept "p &ctable2\[2*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXXXXX\"..."
+    test_print_accept "p &ctable2\[3*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXXXX\"..."
+    test_print_accept "p &ctable2\[4*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXXXX\"..."
+    test_print_accept "p &ctable2\[5*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXXX\"..."
+    test_print_accept "p &ctable2\[6*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXXX\"..."
+    test_print_accept "p &ctable2\[7*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaXX\"..."
+    test_print_accept "p &ctable2\[8*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaX\"..."
+    test_print_accept "p &ctable2\[9*16\]"  "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[10*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[11*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[12*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[13*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[14*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
+    test_print_accept "p &ctable2\[15*16\]" "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaa\"..."
 
-    set passcount 0
     send "set print elements 11\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]" \
+    test_print_accept "p &ctable2\[0*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aXXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]" \
+    test_print_accept "p &ctable2\[1*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]" \
+    test_print_accept "p &ctable2\[2*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]" \
+    test_print_accept "p &ctable2\[3*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]" \
+    test_print_accept "p &ctable2\[4*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]" \
+    test_print_accept "p &ctable2\[5*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]" \
+    test_print_accept "p &ctable2\[6*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]" \
+    test_print_accept "p &ctable2\[7*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]" \
+    test_print_accept "p &ctable2\[8*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]" \
+    test_print_accept "p &ctable2\[9*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaaX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" \
+    test_print_accept "p &ctable2\[10*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" \
+    test_print_accept "p &ctable2\[11*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" \
+    test_print_accept "p &ctable2\[12*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" \
+    test_print_accept "p &ctable2\[13*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" \
+    test_print_accept "p &ctable2\[14*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" \
+    test_print_accept "p &ctable2\[15*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>..."
-    if $passcount then {
-       pass "$passcount tests with elements = 11 and repeat count = 10"
-    }
 
-    set passcount 0
     send "set print elements 12\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]" \
+    test_print_accept "p &ctable2\[0*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"a\", 'X' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]" \
+    test_print_accept "p &ctable2\[1*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaXXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]" \
+    test_print_accept "p &ctable2\[2*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]" \
+    test_print_accept "p &ctable2\[3*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]" \
+    test_print_accept "p &ctable2\[4*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]" \
+    test_print_accept "p &ctable2\[5*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]" \
+    test_print_accept "p &ctable2\[6*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]" \
+    test_print_accept "p &ctable2\[7*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]" \
+    test_print_accept "p &ctable2\[8*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]" \
+    test_print_accept "p &ctable2\[9*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaaXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" \
+    test_print_accept "p &ctable2\[10*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>, \"X\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" \
+    test_print_accept "p &ctable2\[11*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 12 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" \
+    test_print_accept "p &ctable2\[12*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 12 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" \
+    test_print_accept "p &ctable2\[13*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 12 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" \
+    test_print_accept "p &ctable2\[14*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 12 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" \
+    test_print_accept "p &ctable2\[15*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 12 times>..."
-    if $passcount then {
-       pass "$passcount tests with elements = 12 and repeat count = 10"
-    }
 
-    set passcount 0
     send "set print elements 13\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]" \
+    test_print_accept "p &ctable2\[0*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"a\", 'X' <repeats 12 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]" \
+    test_print_accept "p &ctable2\[1*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\", 'X' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]" \
+    test_print_accept "p &ctable2\[2*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaXXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]" \
+    test_print_accept "p &ctable2\[3*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]" \
+    test_print_accept "p &ctable2\[4*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]" \
+    test_print_accept "p &ctable2\[5*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]" \
+    test_print_accept "p &ctable2\[6*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]" \
+    test_print_accept "p &ctable2\[7*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]" \
+    test_print_accept "p &ctable2\[8*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]" \
+    test_print_accept "p &ctable2\[9*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaaXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" \
+    test_print_accept "p &ctable2\[10*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>, \"XX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" \
+    test_print_accept "p &ctable2\[11*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 12 times>, \"X\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" \
+    test_print_accept "p &ctable2\[12*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 13 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" \
+    test_print_accept "p &ctable2\[13*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 13 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" \
+    test_print_accept "p &ctable2\[14*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 13 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" \
+    test_print_accept "p &ctable2\[15*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 13 times>..."
-    if $passcount then {
-       pass "$passcount tests with elements = 13 and repeat count = 10"
-    }
 
-    set passcount 0
     send "set print elements 14\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]" \
+    test_print_accept "p &ctable2\[0*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"a\", 'X' <repeats 13 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]" \
+    test_print_accept "p &ctable2\[1*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\", 'X' <repeats 12 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]" \
+    test_print_accept "p &ctable2\[2*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\", 'X' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]" \
+    test_print_accept "p &ctable2\[3*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaXXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]" \
+    test_print_accept "p &ctable2\[4*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]" \
+    test_print_accept "p &ctable2\[5*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]" \
+    test_print_accept "p &ctable2\[6*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]" \
+    test_print_accept "p &ctable2\[7*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]" \
+    test_print_accept "p &ctable2\[8*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]" \
+    test_print_accept "p &ctable2\[9*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaaXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" \
+    test_print_accept "p &ctable2\[10*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>, \"XXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" \
+    test_print_accept "p &ctable2\[11*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 12 times>, \"XX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" \
+    test_print_accept "p &ctable2\[12*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 13 times>, \"X\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" \
+    test_print_accept "p &ctable2\[13*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 14 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" \
+    test_print_accept "p &ctable2\[14*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 14 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" \
+    test_print_accept "p &ctable2\[15*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 14 times>..."
-    if $passcount then {
-       pass "$passcount tests with elements = 14 and repeat count = 10"
-    }
 
-    set passcount 0
     send "set print elements 15\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]" \
+    test_print_accept "p &ctable2\[0*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"a\", 'X' <repeats 14 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]" \
+    test_print_accept "p &ctable2\[1*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\", 'X' <repeats 13 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]" \
+    test_print_accept "p &ctable2\[2*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\", 'X' <repeats 12 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]" \
+    test_print_accept "p &ctable2\[3*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\", 'X' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]" \
+    test_print_accept "p &ctable2\[4*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaXXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]" \
+    test_print_accept "p &ctable2\[5*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]" \
+    test_print_accept "p &ctable2\[6*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]" \
+    test_print_accept "p &ctable2\[7*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]" \
+    test_print_accept "p &ctable2\[8*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]" \
+    test_print_accept "p &ctable2\[9*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaaXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" \
+    test_print_accept "p &ctable2\[10*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>, \"XXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" \
+    test_print_accept "p &ctable2\[11*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 12 times>, \"XXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" \
+    test_print_accept "p &ctable2\[12*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 13 times>, \"XX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" \
+    test_print_accept "p &ctable2\[13*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 14 times>, \"X\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" \
+    test_print_accept "p &ctable2\[14*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 15 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" \
+    test_print_accept "p &ctable2\[15*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 15 times>..."
-    if $passcount then {
-       pass "$passcount tests with elements = 15 and repeat count = 10"
-    }
 
-    set passcount 0
     send "set print elements 16\n" ; expect -re "$prompt $"
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[0*16\]" \
+    test_print_accept "p &ctable2\[0*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"a\", 'X' <repeats 15 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[1*16\]" \
+    test_print_accept "p &ctable2\[1*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aa\", 'X' <repeats 14 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[2*16\]" \
+    test_print_accept "p &ctable2\[2*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaa\", 'X' <repeats 13 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[3*16\]" \
+    test_print_accept "p &ctable2\[3*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaa\", 'X' <repeats 12 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[4*16\]" \
+    test_print_accept "p &ctable2\[4*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaa\", 'X' <repeats 11 times>..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[5*16\]" \
+    test_print_accept "p &ctable2\[5*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaXXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[6*16\]" \
+    test_print_accept "p &ctable2\[6*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaXXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[7*16\]" \
+    test_print_accept "p &ctable2\[7*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaXXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[8*16\]" \
+    test_print_accept "p &ctable2\[8*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaXXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[9*16\]" \
+    test_print_accept "p &ctable2\[9*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"aaaaaaaaaaXXXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[10*16\]" \
+    test_print_accept "p &ctable2\[10*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 11 times>, \"XXXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[11*16\]" \
+    test_print_accept "p &ctable2\[11*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 12 times>, \"XXXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[12*16\]" \
+    test_print_accept "p &ctable2\[12*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 13 times>, \"XXX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[13*16\]" \
+    test_print_accept "p &ctable2\[13*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 14 times>, \"XX\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[14*16\]" \
+    test_print_accept "p &ctable2\[14*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 15 times>, \"X\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable2\[15*16\]" \
+    test_print_accept "p &ctable2\[15*16\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ 'a' <repeats 16 times>"
-    if $passcount then {
-       pass "$passcount tests with elements = 16 and repeat count = 10"
-    }
 }
 
 proc test_print_strings {} {
     global prompt
-    global passcount
 
     # We accept "(unsigned char *) " before the string.  char vs. unsigned char
     # is already tested elsewhere.
@@ -1247,203 +816,147 @@ proc test_print_strings {} {
     gdb_test "p teststring" \
        " = (.unsigned char .. )?\"teststring contents\"\r\n"
 
-    set passcount 0
     send "set print elements 8\n" ; expect -re "$prompt $"
 
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[0\]" \
+    test_print_accept "p &ctable1\[0\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\""
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[1\]" \
+    test_print_accept "p &ctable1\[1\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\001\\\\002\\\\003\\\\004\\\\005\\\\006\\\\a\\\\b\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[1*8\]" \
+    test_print_accept "p &ctable1\[1*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\b\\\\t\\\\n\\\\013\\\\f\\\\r\\\\016\\\\017\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[2*8\]" \
+    test_print_accept "p &ctable1\[2*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\020\\\\021\\\\022\\\\023\\\\024\\\\025\\\\026\\\\027\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[3*8\]" \
+    test_print_accept "p &ctable1\[3*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\030\\\\031\\\\032\\\\e\\\\034\\\\035\\\\036\\\\037\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[4*8\]" \
+    test_print_accept "p &ctable1\[4*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \" !\\\\\"#\\\$%&'\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[5*8\]" \
+    test_print_accept "p &ctable1\[5*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\[(\]+\[)\]+\[*\]+\\+,-./\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[6*8\]" \
+    test_print_accept "p &ctable1\[6*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"01234567\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[7*8\]" \
+    test_print_accept "p &ctable1\[7*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"89:;<=>\\?\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[8*8\]" \
+    test_print_accept "p &ctable1\[8*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"@ABCDEFG\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[9*8\]" \
+    test_print_accept "p &ctable1\[9*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"HIJKLMNO\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[10*8\]" \
+    test_print_accept "p &ctable1\[10*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"PQRSTUVW\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[11*8\]" \
+    test_print_accept "p &ctable1\[11*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"XYZ\\\[\\\\\\\\\\\]\\^_\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[12*8\]" \
+    test_print_accept "p &ctable1\[12*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"`abcdefg\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[13*8\]" \
+    test_print_accept "p &ctable1\[13*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"hijklmno\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[14*8\]" \
+    test_print_accept "p &ctable1\[14*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"pqrstuvw\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[15*8\]" \
+    test_print_accept "p &ctable1\[15*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"xyz\[{|}\]+\\~\\\\177\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[16*8\]" \
+    test_print_accept "p &ctable1\[16*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\200\\\\201\\\\202\\\\203\\\\204\\\\205\\\\206\\\\207\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[17*8\]" \
+    test_print_accept "p &ctable1\[17*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\210\\\\211\\\\212\\\\213\\\\214\\\\215\\\\216\\\\217\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[18*8\]" \
+    test_print_accept "p &ctable1\[18*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\220\\\\221\\\\222\\\\223\\\\224\\\\225\\\\226\\\\227\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[19*8\]" \
+    test_print_accept "p &ctable1\[19*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\230\\\\231\\\\232\\\\233\\\\234\\\\235\\\\236\\\\237\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[20*8\]" \
+    test_print_accept "p &ctable1\[20*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\240\\\\241\\\\242\\\\243\\\\244\\\\245\\\\246\\\\247\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[21*8\]" \
+    test_print_accept "p &ctable1\[21*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\250\\\\251\\\\252\\\\253\\\\254\\\\255\\\\256\\\\257\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[22*8\]" \
+    test_print_accept "p &ctable1\[22*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\260\\\\261\\\\262\\\\263\\\\264\\\\265\\\\266\\\\267\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[23*8\]" \
+    test_print_accept "p &ctable1\[23*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\270\\\\271\\\\272\\\\273\\\\274\\\\275\\\\276\\\\277\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[24*8\]" \
+    test_print_accept "p &ctable1\[24*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\300\\\\301\\\\302\\\\303\\\\304\\\\305\\\\306\\\\307\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[25*8\]" \
+    test_print_accept "p &ctable1\[25*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\310\\\\311\\\\312\\\\313\\\\314\\\\315\\\\316\\\\317\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[26*8\]" \
+    test_print_accept "p &ctable1\[26*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\320\\\\321\\\\322\\\\323\\\\324\\\\325\\\\326\\\\327\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[27*8\]" \
+    test_print_accept "p &ctable1\[27*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\330\\\\331\\\\332\\\\333\\\\334\\\\335\\\\336\\\\337\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[28*8\]" \
+    test_print_accept "p &ctable1\[28*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\340\\\\341\\\\342\\\\343\\\\344\\\\345\\\\346\\\\347\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[29*8\]" \
+    test_print_accept "p &ctable1\[29*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\350\\\\351\\\\352\\\\353\\\\354\\\\355\\\\356\\\\357\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[30*8\]" \
+    test_print_accept "p &ctable1\[30*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\360\\\\361\\\\362\\\\363\\\\364\\\\365\\\\366\\\\367\"..."
-    setup_xfail "a29k-*-udi" 2417
-    prt_accept "p &ctable1\[31*8\]" \
+    test_print_accept "p &ctable1\[31*8\]" \
        "\[(\]+unsigned char \[*\]+\[)\]+ \"\\\\370\\\\371\\\\372\\\\373\\\\374\\\\375\\\\376\\\\377\"..."
-
-    if $passcount then {
-       pass "$passcount tests printing substrings from ASCII table"
-    }
 }
 
 proc test_print_int_arrays {} {
     global prompt
-    global passcount
 
-    set passcount 0
     send "set print elements 24\n" ; expect -re "$prompt $"
 
-    prt_accept "p int1dim" \
+    test_print_accept "p int1dim" \
        "{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}"
-    prt_accept "p int2dim" \
+    test_print_accept "p int2dim" \
        "{{0, 1, 2, 3}, {4, 5, 6, 7}, {8, 9, 10, 11}}"
-    prt_accept "p int3dim" \
+    test_print_accept "p int3dim" \
        "{{{0, 1}, {2, 3}, {4, 5}}, {{6, 7}, {8, 9}, {10, 11}}}"
-    prt_accept "p int4dim" \
+    test_print_accept "p int4dim" \
        "{{{{0, 1}, {2, 3}, {4, 5}}, {{6, 7}, {8, 9}, {10, 11}}}}"
-
-    if $passcount then {
-       pass "$passcount tests printing multidimensional arrays"
-    }
 }
 
 proc test_print_char_arrays {} {
     global prompt
-    global passcount
     global hex
 
-    set passcount 0
     send "set print elements 24\n" ; expect -re "$prompt $"
     send "set print address on\n" ; expect -re "$prompt $"
 
-    prt_accept "p arrays" \
+    test_print_accept "p arrays" \
        "{array1 = \"abc\", array2 = \"d\", array3 = \"e\", array4 = \"fg\", array5 = \"hij\"}"
 
-    prt_accept "p parrays"             "\[(\]+struct some_arrays \[*\]+\[)\]+ $hex"
-    prt_accept "p parrays->array1"     "\"abc\""
-    prt_accept "p &parrays->array1"    "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"abc\""
-    prt_accept "p parrays->array2"     "\"d\""
-    prt_accept "p &parrays->array2"    "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"defghij\""
-    prt_accept "p parrays->array3"     "\"e\""
-    prt_accept "p &parrays->array3"    "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"efghij\""
-    prt_accept "p parrays->array4"     "\"fg\""
-    prt_accept "p &parrays->array4"    "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"fghij\""
-    prt_accept "p parrays->array5"     "\"hij\""
-    prt_accept "p &parrays->array5"    "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"hij\""
+    test_print_accept "p parrays"              "\[(\]+struct some_arrays \[*\]+\[)\]+ $hex"
+    test_print_accept "p parrays->array1"      "\"abc\""
+    test_print_accept "p &parrays->array1"     "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"abc\""
+    test_print_accept "p parrays->array2"      "\"d\""
+    test_print_accept "p &parrays->array2"     "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"defghij\""
+    test_print_accept "p parrays->array3"      "\"e\""
+    test_print_accept "p &parrays->array3"     "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"efghij\""
+    test_print_accept "p parrays->array4"      "\"fg\""
+    test_print_accept "p &parrays->array4"     "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"fghij\""
+    test_print_accept "p parrays->array5"      "\"hij\""
+    test_print_accept "p &parrays->array5"     "\[(\]+unsigned char \[*\]+\[)\]+ $hex \"hij\""
 
     send "set print address off\n" ; expect -re "$prompt $"
-    if $passcount then {
-       pass "$passcount tests printing character arrays"
-    }
 }
 
 proc test_print_string_constants {} {
     global prompt
-    global passcount
     global timeout
 
     set otimeout $timeout
     set timeout 120
 
-    set passcount 0
-
     send "set print elements 50\n" ; expect -re "$prompt $"
 
     setup_xfail "a29k-*-udi" 2416
-    prt_accept "p \"a string\""                "\"a string\""
+    test_print_accept "p \"a string\""         "\"a string\""
     setup_xfail "a29k-*-udi" 2416
-    prt_accept "p \"embedded \\000 null\"" "\"embedded \\\\000 null\""
+    test_print_accept "p \"embedded \\000 null\"" "\"embedded \\\\000 null\""
     setup_xfail "a29k-*-udi" 2416
-    prt_accept "p \"abcd\"\[2\]"       "99 'c'"
+    test_print_accept "p \"abcd\"\[2\]"        "99 'c'"
     setup_xfail "a29k-*-udi" 2416
-    prt_accept "p sizeof (\"abcdef\")" "7"
+    test_print_accept "p sizeof (\"abcdef\")"  "7"
     setup_xfail "a29k-*-udi" 2416
-    prt_accept "ptype \"foo\""         "char \\\[4\\\]"
+    test_print_accept "ptype \"foo\""          "char \\\[4\\\]"
     setup_xfail "a29k-*-udi" 2416
-    prt_accept "p *\"foo\""            "102 'f'"
+    test_print_accept "p *\"foo\""             "102 'f'"
     setup_xfail "a29k-*-udi" 2416
-    prt_accept "ptype *\"foo\""                "char"
+    test_print_accept "ptype *\"foo\""         "char"
     setup_xfail "a29k-*-udi" 2416
-    prt_accept "p &*\"foo\""           "\"foo\""
+    test_print_accept "p &*\"foo\""            "\"foo\""
     setup_xfail "*-*-*"
-    prt_accept "ptype &*\"foo\""       "char \[*\]+"
+    test_print_accept "ptype &*\"foo\""        "char \[*\]+"
     setup_xfail "a29k-*-udi" 2416
-    prt_accept "p (char *)\"foo\""     "\"foo\""
+    test_print_accept "p (char *)\"foo\""      "\"foo\""
 
     set timeout $otimeout
-
-    if $passcount then {
-       pass "$passcount tests printing string constants"
-    }
 }
 
 proc test_print_array_constants {} {
@@ -1487,6 +1000,11 @@ proc test_printf {} {
 gdb_exit
 gdb_start
 gdb_reinitialize_dir $srcdir/$subdir
+
+gdb_test "print \\\$pc" "No registers"
+# FIXME: should also test "print $pc" when there is an execfile but no
+# remote debugging target, process or corefile.
+
 gdb_load $objdir/$subdir/$binfile
 
 send "set print sevenbit-strings\n" ; expect -re "$prompt $"
@@ -1513,10 +1031,6 @@ if [set_lang_c] then {
        test_print_string_constants
        test_print_array_constants
        test_printf
-       if [istarget "a29k-*-udi"] then {
-           # FIXME: If PR 2415 is fixed, this is not needed.
-           gdb_target_udi
-       }
     }
 } else {
     fail "C print command tests suppressed"
index 0d8e4952169b50da7d6868f5134ba7c78b72546a..e838eb9482813d486b9c81ab968139ff2b495c66 100644 (file)
@@ -55,62 +55,8 @@ proc set_lang_chill {} {
     }
 }
 
-# Testing printing of a specific value.  Increment passcount for
-# success or issue fail message for failure.  In both cases, return
-# a 1 to indicate that more tests can proceed.  However a timeout
-# is a serious error, generates a special fail message, and causes
-# a 0 to be returned to indicate that more tests are likely to fail
-# as well.
-#
-# Args are:
-#
-#      First one is string to send to gdb
-#      Second one is string to match gdb result to
-#      Third one is an optional message to be printed
-
-proc test_print_accept { args } {
-    global prompt
-    global passcount
-    global verbose
-
-    if [llength $args]==3 then {
-       set message [lindex $args 2]
-    } else {
-       set message [lindex $args 0]
-    }
-    set sendthis [lindex $args 0]
-    set expectthis [lindex $args 1]
-    if $verbose>2 then {
-       send_user "Sending \"$sendthis\" to gdb\n"
-       send_user "Looking to match \"$expectthis\"\n"
-       send_user "Message is \"$message\"\n"
-    }
-    send "$sendthis\n"
-    expect {
-       -re ".* = $expectthis\r\n$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*$prompt $" {
-           if ![string match "" $message] then {
-               fail "$sendthis ($message)"
-           } else {
-               fail "$sendthis"
-           }
-           return 1
-       }
-       timeout {
-           fail "$sendthis (timeout)"
-           return 0
-       }
-    }
-}
-
 proc test_integer_literals_accepted {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test various decimal values.
 
@@ -166,17 +112,10 @@ proc test_integer_literals_accepted {} {
     test_print_accept "p H'AbCdEf" "11259375"
     test_print_accept "p H'_A_b_C_d_E_f_" "11259375"
     test_print_accept "p/x H'123" "H'123"
-
-    if $passcount then {
-       pass "$passcount correct integer literals printed"
-    }
 }
 
 proc test_character_literals_accepted {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test various decimal values.
 
@@ -190,68 +129,10 @@ proc test_character_literals_accepted {} {
     test_print_accept "p/x C'FF'" "H'ff"
     # test_print_accept "p/x '^(H'FF)'" "H'ff" (not in GNU Chill)
     # test_print_accept "p/x '^(D'255)'" "H'ff"        (not in GNU Chill)
-
-    if $passcount then {
-       pass "$passcount correct character literals printed"
-    }
-}
-
-# Testing printing of a specific value.  Increment passcount for
-# success or issue fail message for failure.  In both cases, return
-# a 1 to indicate that more tests can proceed.  However a timeout
-# is a serious error, generates a special fail message, and causes
-# a 0 to be returned to indicate that more tests are likely to fail
-# as well.
-
-proc test_print_reject { args } {
-    global prompt
-    global passcount
-    global verbose
-
-    if [llength $args]==2 then {
-       set expectthis [lindex $args 1]
-    } else {
-       set expectthis "should never match this bogus string"
-    }
-    set sendthis [lindex $args 0]
-    if $verbose>2 then {
-       send_user "Sending \"$sendthis\" to gdb\n"
-       send_user "Looking to match \"$expectthis\"\n"
-    }
-    send "$sendthis\n"
-    expect {
-       -re ".*A .* in expression.*\\.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*Junk after end of expression.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*No symbol table is loaded.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*$expectthis.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*$prompt $" {
-           fail "$sendthis not properly rejected"
-           return 1
-       }
-       timeout {
-           fail "$sendthis (timeout)"
-           return 0
-       }
-    }
 }
 
 proc test_integer_literals_rejected {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # These are valid integer literals in Z.200, but not GNU-Chill.
 
@@ -293,33 +174,19 @@ proc test_integer_literals_rejected {} {
 
     test_print_reject "p H'G" 
     test_print_reject "p H'AG" 
-
-    if $passcount then {
-       pass "$passcount incorrect integer literals rejected"
-    }
 }
 
 proc test_boolean_literals_accepted {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test the only possible values for a boolean, TRUE and FALSE.
 
     test_print_accept "p TRUE" "TRUE"
     test_print_accept "p FALSE" "FALSE"
-
-    if $passcount then {
-       pass "$passcount correct boolean literals printed"
-    }
 }
 
 proc test_float_literals_accepted {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test various floating point formats
 
@@ -376,10 +243,6 @@ proc test_float_literals_accepted {} {
     test_print_accept "p _.1e+10 > _.1e+11" "0"
     test_print_accept "p __.1e-12 < __.1e-11" "1"
     test_print_accept "p __.1e-12 > __.1e-11" "0"
-
-    if $passcount then {
-       pass "$passcount correct float literal comparisons"
-    }
 }
 
 proc test_convenience_variables {} {
@@ -463,9 +326,6 @@ proc test_value_history {} {
 
 proc test_arithmetic_expressions {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test unary minus with various operands
 
@@ -564,10 +424,6 @@ proc test_arithmetic_expressions {} {
        "Integer-only operation on floating point number.*"
     test_print_reject "p 6.0 REM 3.0" \
        "Integer-only operation on floating point number.*"
-
-    if $passcount then {
-       pass "$passcount correct arithmetic expressions"
-    }
 }
 
 # Start with a fresh gdb.
index 51bf88bb8713a090dfc7ed5b5a78935a33a134d9..8c16bcf07b745c992ddc5102b772cd135f589bd1 100644 (file)
@@ -55,173 +55,40 @@ proc set_lang_fortran {} {
     }
 }
 
-# Testing printing of a specific value.  Increment passcount for
-# success or issue fail message for failure.  In both cases, return
-# a 1 to indicate that more tests can proceed.  However a timeout
-# is a serious error, generates a special fail message, and causes
-# a 0 to be returned to indicate that more tests are likely to fail
-# as well.
-#
-# Args are:
-#
-#      First one is string to send to gdb
-#      Second one is string to match gdb result to
-#      Third one is an optional message to be printed
-
-proc test_print_accept { args } {
-    global prompt
-    global passcount
-    global verbose
-
-    if [llength $args]==3 then {
-       set message [lindex $args 2]
-    } else {
-       set message [lindex $args 0]
-    }
-    set sendthis [lindex $args 0]
-    set expectthis [lindex $args 1]
-    if $verbose>2 then {
-       send_user "Sending \"$sendthis\" to gdb\n"
-       send_user "Looking to match \"$expectthis\"\n"
-       send_user "Message is \"$message\"\n"
-    }
-    send "$sendthis\n"
-    expect {
-       -re ".* = $expectthis\r\n$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*$prompt $" {
-           if ![string match "" $message] then {
-               fail "$sendthis ($message)"
-           } else {
-               fail "$sendthis"
-           }
-           return 1
-       }
-       timeout {
-           fail "$sendthis (timeout)"
-           return 0
-       }
-    }
-}
-
 proc test_integer_literals_accepted {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test various decimal values.
 
     test_print_accept "p 123" "123"
     test_print_accept "p -123" "-123"
-
-    if $passcount then {
-       pass "$passcount correct integer literals printed"
-    }
 }
 
 proc test_character_literals_accepted {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test various character values.
 
     test_print_accept "p 'a'" "'a'"
-
-    if $passcount then {
-       pass "$passcount correct character literals printed"
-    }
-}
-
-# Testing printing of a specific value.  Increment passcount for
-# success or issue fail message for failure.  In both cases, return
-# a 1 to indicate that more tests can proceed.  However a timeout
-# is a serious error, generates a special fail message, and causes
-# a 0 to be returned to indicate that more tests are likely to fail
-# as well.
-
-proc test_print_reject { args } {
-    global prompt
-    global passcount
-    global verbose
-
-    if [llength $args]==2 then {
-       set expectthis [lindex $args 1]
-    } else {
-       set expectthis "should never match this bogus string"
-    }
-    set sendthis [lindex $args 0]
-    if $verbose>2 then {
-       send_user "Sending \"$sendthis\" to gdb\n"
-       send_user "Looking to match \"$expectthis\"\n"
-    }
-    send "$sendthis\n"
-    expect {
-       -re ".*A .* in expression.*\\.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*Junk after end of expression.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*No symbol table is loaded.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*$expectthis.*$prompt $" {
-           incr passcount
-           return 1
-       }
-       -re ".*$prompt $" {
-           fail "$sendthis not properly rejected"
-           return 1
-       }
-       timeout {
-           fail "$sendthis (timeout)"
-           return 0
-       }
-    }
 }
 
 proc test_integer_literals_rejected {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     test_print_reject "p _"
-
-    if $passcount then {
-       pass "$passcount incorrect integer literals rejected"
-    }
 }
 
 proc test_logical_literals_accepted {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test the only possible values for a logical, TRUE and FALSE.
 
     test_print_accept "p .TRUE." ".TRUE."
     test_print_accept "p .FALSE." ".FALSE."
-
-    if $passcount then {
-       pass "$passcount correct logical literals printed"
-    }
 }
 
 proc test_float_literals_accepted {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test various floating point formats
 
@@ -273,10 +140,6 @@ proc test_float_literals_accepted {} {
     test_print_accept "p 10.0E-11 .GT. 10.0E-10" "0"
     test_print_accept "p 10.0e-11 .LT. 10.0e-10" "1"
     test_print_accept "p 10.0e-11 .GT. 10.0e-10" "0"
-
-    if $passcount then {
-       pass "$passcount correct float literal comparisons"
-    }
 }
 
 proc test_convenience_variables {} {
@@ -306,7 +169,7 @@ proc test_convenience_variables {} {
     gdb_test "print (\\\$foo = 32) + 4"        " = 36" \
        "Use convenience variable assignment in arithmetic expression"
 
-    gdb_test "print \\\$bar"           " = void" \
+    gdb_test "print \\\$bar"           " = VOID" \
        "Print contents of uninitialized convenience variable"
 }
 
@@ -360,9 +223,6 @@ proc test_value_history {} {
 
 proc test_arithmetic_expressions {} {
     global prompt
-    global passcount
-
-    set passcount 0
 
     # Test unary minus with various operands
 
@@ -401,9 +261,6 @@ proc test_arithmetic_expressions {} {
 
     # Test modulo with various operands
 
-    if $passcount then {
-       pass "$passcount correct arithmetic expressions"
-    }
 }
 
 # Start with a fresh gdb.
index cb54c954bb84eefdf144ba7587bb70df9f1cb8a7..a3e0fac75d1c36bb189d5ce3b1c6151c83818ab6 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 1992, 1994 Free Software Foundation, Inc.
+# Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -40,15 +40,15 @@ if ![info exists prompt] then {
 }
 
 #
-# gdb_version -- extract and print the version number of gcc
+# gdb_version -- extract and print the version number of GDB
 #
 proc default_gdb_version {} {
     global GDB
     global GDBFLAGS
     if {[which $GDB] != 0} then {
-       set tmp [exec echo "q" | $GDB]
+       set tmp [exec echo "q" | $GDB -nw]
        regexp " \[0-9\.\]+" $tmp version
-       clone_output "[which $GDB] version$version $GDBFLAGS\n"
+       clone_output "[which $GDB] version$version -nw $GDBFLAGS \n"
     } else {
        warning "$GDB does not exist"
     }
@@ -157,9 +157,9 @@ proc runto { function } {
     send "break $function\n"
     # The first two regexps are what we get with -g, the third is without -g.
     expect {
-       -re "Breakpoint \[0-9\]* at 0x\[0-9a-f\]*: file .*, line $decimal.\r\n$prompt $" {}
+       -re "Breakpoint \[0-9\]* at .*: file .*, line $decimal.\r\n$prompt $" {}
        -re "Breakpoint \[0-9\]*: file .*, line $decimal.\r\n$prompt $" {}
-       -re "Breakpoint \[0-9\]* at 0x\[0-9a-f\]*.*$prompt $" {}
+       -re "Breakpoint \[0-9\]* at .*$prompt $" {}
        -re "$prompt $" { fail "setting breakpoint at $function" ; return 0 }
        timeout { fail "setting breakpoint at $function (timeout)" ; return 0 }
     }
@@ -285,7 +285,131 @@ proc gdb_test { args } {
     }
     return $result
 }
+\f
+# Testing printing of a specific value.  For passes and fails, return
+# a 1 to indicate that more tests can proceed.  However a timeout
+# is a serious error, generates a special fail message, and causes
+# a 0 to be returned to indicate that more tests are likely to fail
+# as well.
+#
+# Args are:
+#
+#      First one is string to send to gdb
+#      Second one is string to match gdb result to
+#      Third one is an optional message to be printed
+#
+# This differs from gdb_test in a few ways: (1) no catch on the send (there is
+# no reason for this to be different from gdb_test but I think the lack of 
+# catch is correct), (2) it tests for the " =" (that could easily be moved
+# to the callers, (3) the pattern must be followed by \r\n and the prompt,
+# not other garbage as in gdb_test (this feature seems kind of worthwhile).
 
+proc test_print_accept { args } {
+    global prompt
+    global verbose
+
+    if [llength $args]==3 then {
+       set message [lindex $args 2]
+    } else {
+       set message [lindex $args 0]
+    }
+    set sendthis [lindex $args 0]
+    set expectthis [lindex $args 1]
+    if $verbose>2 then {
+       send_user "Sending \"$sendthis\" to gdb\n"
+       send_user "Looking to match \"$expectthis\"\n"
+       send_user "Message is \"$message\"\n"
+    }
+    send "$sendthis\n"
+    expect {
+       -re ".* = $expectthis\r\n$prompt $" {
+           if ![string match "" $message] then {
+               pass "$sendthis ($message)"
+           } else {
+               pass "$sendthis"
+           }
+           return 1
+       }
+       -re ".*$prompt $" {
+           if ![string match "" $message] then {
+               fail "$sendthis ($message)"
+           } else {
+               fail "$sendthis"
+           }
+           return 1
+       }
+       timeout {
+           fail "$sendthis (timeout)"
+           return 0
+       }
+    }
+}
+
+# Testing printing of a specific value.  For pass or fail, return
+# a 1 to indicate that more tests can proceed.  However a timeout
+# is a serious error, generates a special fail message, and causes
+# a 0 to be returned to indicate that more tests are likely to fail
+# as well.
+
+proc test_print_reject { args } {
+    global prompt
+    global verbose
+
+    if [llength $args]==2 then {
+       set expectthis [lindex $args 1]
+    } else {
+       set expectthis "should never match this bogus string"
+    }
+    set sendthis [lindex $args 0]
+    if $verbose>2 then {
+       send_user "Sending \"$sendthis\" to gdb\n"
+       send_user "Looking to match \"$expectthis\"\n"
+    }
+    send "$sendthis\n"
+    expect {
+       -re ".*A .* in expression.*\\.*$prompt $" {
+           pass "reject $sendthis"
+           return 1
+       }
+       -re ".*Invalid syntax in expression.*$prompt $" {
+           pass "reject $sendthis"
+           return 1
+       }
+       -re ".*Junk after end of expression.*$prompt $" {
+           pass "reject $sendthis"
+           return 1
+       }
+       -re ".*Invalid number.*$prompt $" {
+           pass "reject $sendthis"
+           return 1
+       }
+       -re ".*Invalid character constant.*$prompt $" {
+           pass "reject $sendthis"
+           return 1
+       }
+       -re ".*No symbol table is loaded.*$prompt $" {
+           pass "reject $sendthis"
+           return 1
+       }
+       -re ".*No symbol .* in current context.*$prompt $" {
+           pass "reject $sendthis"
+           return 1
+       }
+       -re ".*$expectthis.*$prompt $" {
+           pass "reject $sendthis"
+           return 1
+       }
+       -re ".*$prompt $" {
+           fail "reject $sendthis"
+           return 1
+       }
+       default {
+           fail "reject $sendthis (eof or timeout)"
+           return 0
+       }
+    }
+}
+\f
 # Given an input string, adds backslashes as needed to create a
 # regexp that will match the string.
 
@@ -308,7 +432,7 @@ proc gdb_test_exact { args } {
     }
     return [gdb_test $command $pattern $message]
 }
-
+\f
 proc gdb_reinitialize_dir { subdir } {
     global prompt
 
@@ -434,7 +558,7 @@ proc default_gdb_start { } {
     global prompt
     global spawn_id
     global timeout
-    verbose "Spawning $GDB $GDBFLAGS"
+    verbose "Spawning $GDB -nw $GDBFLAGS"
 
     if { [which $GDB] == 0 } then {
        perror "$GDB does not exist."
@@ -443,11 +567,7 @@ proc default_gdb_start { } {
     
     set oldtimeout $timeout
     set timeout [expr "$timeout + 60"]
-    if [ llength $GDBFLAGS ] then {
-           spawn $GDB $GDBFLAGS
-    } else {
-           spawn $GDB
-    }
+    eval "spawn $GDB -nw $GDBFLAGS"
     expect {
        -re ".*\r\n$prompt $" {
            verbose "GDB initialized."