Home | History | Annotate | Line # | Download | only in gdb.reverse
sigall-reverse.c revision 1.1.1.1
      1 /* This testcase is part of GDB, the GNU debugger.
      2 
      3    Copyright 2009-2014 Free Software Foundation, Inc.
      4 
      5    This program is free software; you can redistribute it and/or modify
      6    it under the terms of the GNU General Public License as published by
      7    the Free Software Foundation; either version 3 of the License, or
      8    (at your option) any later version.
      9 
     10    This program is distributed in the hope that it will be useful,
     11    but WITHOUT ANY WARRANTY; without even the implied warranty of
     12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     13    GNU General Public License for more details.
     14 
     15    You should have received a copy of the GNU General Public License
     16    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
     17 
     18 #include <signal.h>
     19 #include <unistd.h>
     20 
     21 
     22 /* Signal handlers, we set breakpoints in them to make sure that the
     23    signals really get delivered.  */
     24 
     25 void
     26 handle_ABRT (int sig)
     27 {
     28 }
     29 
     30 void
     31 handle_HUP (int sig)
     32 {
     33 }
     34 
     35 void
     36 handle_QUIT (int sig)
     37 {
     38 }
     39 
     40 void
     41 handle_ILL (int sig)
     42 {
     43 }
     44 
     45 void
     46 handle_EMT (int sig)
     47 {
     48 }
     49 
     50 void
     51 handle_FPE (int sig)
     52 {
     53 }
     54 
     55 void
     56 handle_BUS (int sig)
     57 {
     58 }
     59 
     60 void
     61 handle_SEGV (int sig)
     62 {
     63 }
     64 
     65 void
     66 handle_SYS (int sig)
     67 {
     68 }
     69 
     70 void
     71 handle_PIPE (int sig)
     72 {
     73 }
     74 
     75 void
     76 handle_ALRM (int sig)
     77 {
     78 }
     79 
     80 void
     81 handle_URG (int sig)
     82 {
     83 }
     84 
     85 void
     86 handle_TSTP (int sig)
     87 {
     88 }
     89 
     90 void
     91 handle_CONT (int sig)
     92 {
     93 }
     94 
     95 void
     96 handle_CHLD (int sig)
     97 {
     98 }
     99 
    100 void
    101 handle_TTIN (int sig)
    102 {
    103 }
    104 
    105 void
    106 handle_TTOU (int sig)
    107 {
    108 }
    109 
    110 void
    111 handle_IO (int sig)
    112 {
    113 }
    114 
    115 void
    116 handle_XCPU (int sig)
    117 {
    118 }
    119 
    120 void
    121 handle_XFSZ (int sig)
    122 {
    123 }
    124 
    125 void
    126 handle_VTALRM (int sig)
    127 {
    128 }
    129 
    130 void
    131 handle_PROF (int sig)
    132 {
    133 }
    134 
    135 void
    136 handle_WINCH (int sig)
    137 {
    138 }
    139 
    140 void
    141 handle_LOST (int sig)
    142 {
    143 }
    144 
    145 void
    146 handle_USR1 (int sig)
    147 {
    148 }
    149 
    150 void
    151 handle_USR2 (int sig)
    152 {
    153 }
    154 
    155 void
    156 handle_PWR (int sig)
    157 {
    158 }
    159 
    160 void
    161 handle_POLL (int sig)
    162 {
    163 }
    164 
    165 void
    166 handle_WIND (int sig)
    167 {
    168 }
    169 
    170 void
    171 handle_PHONE (int sig)
    172 {
    173 }
    174 
    175 void
    176 handle_WAITING (int sig)
    177 {
    178 }
    179 
    180 void
    181 handle_LWP (int sig)
    182 {
    183 }
    184 
    185 void
    186 handle_DANGER (int sig)
    187 {
    188 }
    189 
    190 void
    191 handle_GRANT (int sig)
    192 {
    193 }
    194 
    195 void
    196 handle_RETRACT (int sig)
    197 {
    198 }
    199 
    200 void
    201 handle_MSG (int sig)
    202 {
    203 }
    204 
    205 void
    206 handle_SOUND (int sig)
    207 {
    208 }
    209 
    210 void
    211 handle_SAK (int sig)
    212 {
    213 }
    214 
    215 void
    216 handle_PRIO (int sig)
    217 {
    218 }
    219 
    220 void
    221 handle_33 (int sig)
    222 {
    223 }
    224 
    225 void
    226 handle_34 (int sig)
    227 {
    228 }
    229 
    230 void
    231 handle_35 (int sig)
    232 {
    233 }
    234 
    235 void
    236 handle_36 (int sig)
    237 {
    238 }
    239 
    240 void
    241 handle_37 (int sig)
    242 {
    243 }
    244 
    245 void
    246 handle_38 (int sig)
    247 {
    248 }
    249 
    250 void
    251 handle_39 (int sig)
    252 {
    253 }
    254 
    255 void
    256 handle_40 (int sig)
    257 {
    258 }
    259 
    260 void
    261 handle_41 (int sig)
    262 {
    263 }
    264 
    265 void
    266 handle_42 (int sig)
    267 {
    268 }
    269 
    270 void
    271 handle_43 (int sig)
    272 {
    273 }
    274 
    275 void
    276 handle_44 (int sig)
    277 {
    278 }
    279 
    280 void
    281 handle_45 (int sig)
    282 {
    283 }
    284 
    285 void
    286 handle_46 (int sig)
    287 {
    288 }
    289 
    290 void
    291 handle_47 (int sig)
    292 {
    293 }
    294 
    295 void
    296 handle_48 (int sig)
    297 {
    298 }
    299 
    300 void
    301 handle_49 (int sig)
    302 {
    303 }
    304 
    305 void
    306 handle_50 (int sig)
    307 {
    308 }
    309 
    310 void
    311 handle_51 (int sig)
    312 {
    313 }
    314 
    315 void
    316 handle_52 (int sig)
    317 {
    318 }
    319 
    320 void
    321 handle_53 (int sig)
    322 {
    323 }
    324 
    325 void
    326 handle_54 (int sig)
    327 {
    328 }
    329 
    330 void
    331 handle_55 (int sig)
    332 {
    333 }
    334 
    335 void
    336 handle_56 (int sig)
    337 {
    338 }
    339 
    340 void
    341 handle_57 (int sig)
    342 {
    343 }
    344 
    345 void
    346 handle_58 (int sig)
    347 {
    348 }
    349 
    350 void
    351 handle_59 (int sig)
    352 {
    353 }
    354 
    355 void
    356 handle_60 (int sig)
    357 {
    358 }
    359 
    360 void
    361 handle_61 (int sig)
    362 {
    363 }
    364 
    365 void
    366 handle_62 (int sig)
    367 {
    368 }
    369 
    370 void
    371 handle_63 (int sig)
    372 {
    373 }
    374 
    375 void
    376 handle_TERM (int sig)
    377 {
    378 }
    379 
    380 /* Functions to send signals.  These also serve as markers.  */
    382 int
    383 gen_ABRT (void)
    384 {
    385   kill (getpid (), SIGABRT);
    386   return 0;
    387 }
    388 
    389 int
    390 gen_HUP (void)
    391 {
    392 #ifdef SIGHUP
    393   kill (getpid (), SIGHUP);
    394 #else
    395   handle_HUP (0);
    396 #endif
    397 return 0;
    398 }
    399 
    400 int
    401 gen_QUIT (void)
    402 {
    403 #ifdef SIGQUIT
    404   kill (getpid (), SIGQUIT);
    405 #else
    406   handle_QUIT (0);
    407 #endif
    408 return 0;
    409 }
    410 
    411 int
    412 gen_ILL (void)
    413 {
    414 #ifdef SIGILL
    415   kill (getpid (), SIGILL);
    416 #else
    417   handle_ILL (0);
    418 #endif
    419 return 0;
    420 }
    421 
    422 int
    423 gen_EMT (void)
    424 {
    425 #ifdef SIGEMT
    426   kill (getpid (), SIGEMT);
    427 #else
    428   handle_EMT (0);
    429 #endif
    430 return 0;
    431 }
    432 
    433 int x;
    434 
    435 int
    436 gen_FPE (void)
    437 {
    438   /* The intent behind generating SIGFPE this way is to check the mapping
    439      from the CPU exception itself to the signals.  It would be nice to
    440      do the same for SIGBUS, SIGSEGV, etc., but I suspect that even this
    441      test might turn out to be insufficiently portable.  */
    442 
    443 #if 0
    444   /* Loses on the PA because after the signal handler executes we try to
    445      re-execute the failing instruction again.  Perhaps we could siglongjmp
    446      out of the signal handler?  */
    447   /* The expect script looks for the word "kill"; don't delete it.  */
    448   return 5 / x; /* and we both started jumping up and down yelling kill */
    449 #else
    450   kill (getpid (), SIGFPE);
    451 #endif
    452 return 0;
    453 }
    454 
    455 int
    456 gen_BUS (void)
    457 {
    458 #ifdef SIGBUS
    459   kill (getpid (), SIGBUS);
    460 #else
    461   handle_BUS (0);
    462 #endif
    463 return 0;
    464 }
    465 
    466 int
    467 gen_SEGV (void)
    468 {
    469 #ifdef SIGSEGV
    470   kill (getpid (), SIGSEGV);
    471 #else
    472   handle_SEGV (0);
    473 #endif
    474 return 0;
    475 }
    476 
    477 int
    478 gen_SYS (void)
    479 {
    480 #ifdef SIGSYS
    481   kill (getpid (), SIGSYS);
    482 #else
    483   handle_SYS (0);
    484 #endif
    485 return 0;
    486 }
    487 
    488 int
    489 gen_PIPE (void)
    490 {
    491 #ifdef SIGPIPE
    492   kill (getpid (), SIGPIPE);
    493 #else
    494   handle_PIPE (0);
    495 #endif
    496 return 0;
    497 }
    498 
    499 int
    500 gen_ALRM (void)
    501 {
    502 #ifdef SIGALRM
    503   kill (getpid (), SIGALRM);
    504 #else
    505   handle_ALRM (0);
    506 #endif
    507 return 0;
    508 }
    509 
    510 int
    511 gen_URG (void)
    512 {
    513 #ifdef SIGURG
    514   kill (getpid (), SIGURG);
    515 #else
    516   handle_URG (0);
    517 #endif
    518 return 0;
    519 }
    520 
    521 int
    522 gen_TSTP (void)
    523 {
    524 #ifdef SIGTSTP
    525   kill (getpid (), SIGTSTP);
    526 #else
    527   handle_TSTP (0);
    528 #endif
    529 return 0;
    530 }
    531 
    532 int
    533 gen_CONT (void)
    534 {
    535 #ifdef SIGCONT
    536   kill (getpid (), SIGCONT);
    537 #else
    538   handle_CONT (0);
    539 #endif
    540 return 0;
    541 }
    542 
    543 int
    544 gen_CHLD (void)
    545 {
    546 #ifdef SIGCHLD
    547   kill (getpid (), SIGCHLD);
    548 #else
    549   handle_CHLD (0);
    550 #endif
    551 return 0;
    552 }
    553 
    554 int
    555 gen_TTIN (void)
    556 {
    557 #ifdef SIGTTIN
    558   kill (getpid (), SIGTTIN);
    559 #else
    560   handle_TTIN (0);
    561 #endif
    562 return 0;
    563 }
    564 
    565 int
    566 gen_TTOU (void)
    567 {
    568 #ifdef SIGTTOU
    569   kill (getpid (), SIGTTOU);
    570 #else
    571   handle_TTOU (0);
    572 #endif
    573 return 0;
    574 }
    575 
    576 int
    577 gen_IO (void)
    578 {
    579 #ifdef SIGIO
    580   kill (getpid (), SIGIO);
    581 #else
    582   handle_IO (0);
    583 #endif
    584 return 0;
    585 }
    586 
    587 int
    588 gen_XCPU (void)
    589 {
    590 #ifdef SIGXCPU
    591   kill (getpid (), SIGXCPU);
    592 #else
    593   handle_XCPU (0);
    594 #endif
    595 return 0;
    596 }
    597 
    598 int
    599 gen_XFSZ (void)
    600 {
    601 #ifdef SIGXFSZ
    602   kill (getpid (), SIGXFSZ);
    603 #else
    604   handle_XFSZ (0);
    605 #endif
    606 return 0;
    607 }
    608 
    609 int
    610 gen_VTALRM (void)
    611 {
    612 #ifdef SIGVTALRM
    613   kill (getpid (), SIGVTALRM);
    614 #else
    615   handle_VTALRM (0);
    616 #endif
    617 return 0;
    618 }
    619 
    620 int
    621 gen_PROF (void)
    622 {
    623 #ifdef SIGPROF
    624   kill (getpid (), SIGPROF);
    625 #else
    626   handle_PROF (0);
    627 #endif
    628 return 0;
    629 }
    630 
    631 int
    632 gen_WINCH (void)
    633 {
    634 #ifdef SIGWINCH
    635   kill (getpid (), SIGWINCH);
    636 #else
    637   handle_WINCH (0);
    638 #endif
    639 return 0;
    640 }
    641 
    642 int
    643 gen_LOST (void)
    644 {
    645 #if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
    646   kill (getpid (), SIGLOST);
    647 #else
    648   handle_LOST (0);
    649 #endif
    650 return 0;
    651 }
    652 
    653 int
    654 gen_USR1 (void)
    655 {
    656 #ifdef SIGUSR1
    657   kill (getpid (), SIGUSR1);
    658 #else
    659   handle_USR1 (0);
    660 #endif
    661 return 0;
    662 }
    663 
    664 int
    665 gen_USR2 (void)
    666 {
    667 #ifdef SIGUSR2
    668   kill (getpid (), SIGUSR2);
    669 #else
    670   handle_USR2 (0);
    671 #endif
    672 return 0;
    673 }
    674 
    675 int
    676 gen_PWR (void)
    677 {
    678 #ifdef SIGPWR
    679   kill (getpid (), SIGPWR);
    680 #else
    681   handle_PWR (0);
    682 #endif
    683 return 0;
    684 }
    685 
    686 int
    687 gen_POLL (void)
    688 {
    689 #if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
    690   kill (getpid (), SIGPOLL);
    691 #else
    692   handle_POLL (0);
    693 #endif
    694 return 0;
    695 }
    696 
    697 int
    698 gen_WIND (void)
    699 {
    700 #ifdef SIGWIND
    701   kill (getpid (), SIGWIND);
    702 #else
    703   handle_WIND (0);
    704 #endif
    705 return 0;
    706 }
    707 
    708 int
    709 gen_PHONE (void)
    710 {
    711 #ifdef SIGPHONE
    712   kill (getpid (), SIGPHONE);
    713 #else
    714   handle_PHONE (0);
    715 #endif
    716 return 0;
    717 }
    718 
    719 int
    720 gen_WAITING (void)
    721 {
    722 #ifdef SIGWAITING
    723   kill (getpid (), SIGWAITING);
    724 #else
    725   handle_WAITING (0);
    726 #endif
    727 return 0;
    728 }
    729 
    730 int
    731 gen_LWP (void)
    732 {
    733 #ifdef SIGLWP
    734   kill (getpid (), SIGLWP);
    735 #else
    736   handle_LWP (0);
    737 #endif
    738 return 0;
    739 }
    740 
    741 int
    742 gen_DANGER (void)
    743 {
    744 #ifdef SIGDANGER
    745   kill (getpid (), SIGDANGER);
    746 #else
    747   handle_DANGER (0);
    748 #endif
    749 return 0;
    750 }
    751 
    752 int
    753 gen_GRANT (void)
    754 {
    755 #ifdef SIGGRANT
    756   kill (getpid (), SIGGRANT);
    757 #else
    758   handle_GRANT (0);
    759 #endif
    760 return 0;
    761 }
    762 
    763 int
    764 gen_RETRACT (void)
    765 {
    766 #ifdef SIGRETRACT
    767   kill (getpid (), SIGRETRACT);
    768 #else
    769   handle_RETRACT (0);
    770 #endif
    771 return 0;
    772 }
    773 
    774 int
    775 gen_MSG (void)
    776 {
    777 #ifdef SIGMSG
    778   kill (getpid (), SIGMSG);
    779 #else
    780   handle_MSG (0);
    781 #endif
    782 return 0;
    783 }
    784 
    785 int
    786 gen_SOUND (void)
    787 {
    788 #ifdef SIGSOUND
    789   kill (getpid (), SIGSOUND);
    790 #else
    791   handle_SOUND (0);
    792 #endif
    793 return 0;
    794 }
    795 
    796 int
    797 gen_SAK (void)
    798 {
    799 #ifdef SIGSAK
    800   kill (getpid (), SIGSAK);
    801 #else
    802   handle_SAK (0);
    803 #endif
    804 return 0;
    805 }
    806 
    807 int
    808 gen_PRIO (void)
    809 {
    810 #ifdef SIGPRIO
    811   kill (getpid (), SIGPRIO);
    812 #else
    813   handle_PRIO (0);
    814 #endif
    815 return 0;
    816 }
    817 
    818 int
    819 gen_33 (void)
    820 {
    821 #ifdef SIG33
    822   kill (getpid (), 33);
    823 #else
    824   handle_33 (0);
    825 #endif
    826 return 0;
    827 }
    828 
    829 int
    830 gen_34 (void)
    831 {
    832 #ifdef SIG34
    833   kill (getpid (), 34);
    834 #else
    835   handle_34 (0);
    836 #endif
    837 return 0;
    838 }
    839 
    840 int
    841 gen_35 (void)
    842 {
    843 #ifdef SIG35
    844   kill (getpid (), 35);
    845 #else
    846   handle_35 (0);
    847 #endif
    848 return 0;
    849 }
    850 
    851 int
    852 gen_36 (void)
    853 {
    854 #ifdef SIG36
    855   kill (getpid (), 36);
    856 #else
    857   handle_36 (0);
    858 #endif
    859 return 0;
    860 }
    861 
    862 int
    863 gen_37 (void)
    864 {
    865 #ifdef SIG37
    866   kill (getpid (), 37);
    867 #else
    868   handle_37 (0);
    869 #endif
    870 return 0;
    871 }
    872 
    873 int
    874 gen_38 (void)
    875 {
    876 #ifdef SIG38
    877   kill (getpid (), 38);
    878 #else
    879   handle_38 (0);
    880 #endif
    881 return 0;
    882 }
    883 
    884 int
    885 gen_39 (void)
    886 {
    887 #ifdef SIG39
    888   kill (getpid (), 39);
    889 #else
    890   handle_39 (0);
    891 #endif
    892 return 0;
    893 }
    894 
    895 int
    896 gen_40 (void)
    897 {
    898 #ifdef SIG40
    899   kill (getpid (), 40);
    900 #else
    901   handle_40 (0);
    902 #endif
    903 return 0;
    904 }
    905 
    906 int
    907 gen_41 (void)
    908 {
    909 #ifdef SIG41
    910   kill (getpid (), 41);
    911 #else
    912   handle_41 (0);
    913 #endif
    914 return 0;
    915 }
    916 
    917 int
    918 gen_42 (void)
    919 {
    920 #ifdef SIG42
    921   kill (getpid (), 42);
    922 #else
    923   handle_42 (0);
    924 #endif
    925 return 0;
    926 }
    927 
    928 int
    929 gen_43 (void)
    930 {
    931 #ifdef SIG43
    932   kill (getpid (), 43);
    933 #else
    934   handle_43 (0);
    935 #endif
    936 return 0;
    937 }
    938 
    939 int
    940 gen_44 (void)
    941 {
    942 #ifdef SIG44
    943   kill (getpid (), 44);
    944 #else
    945   handle_44 (0);
    946 #endif
    947 return 0;
    948 }
    949 
    950 int
    951 gen_45 (void)
    952 {
    953 #ifdef SIG45
    954   kill (getpid (), 45);
    955 #else
    956   handle_45 (0);
    957 #endif
    958 return 0;
    959 }
    960 
    961 int
    962 gen_46 (void)
    963 {
    964 #ifdef SIG46
    965   kill (getpid (), 46);
    966 #else
    967   handle_46 (0);
    968 #endif
    969 return 0;
    970 }
    971 
    972 int
    973 gen_47 (void)
    974 {
    975 #ifdef SIG47
    976   kill (getpid (), 47);
    977 #else
    978   handle_47 (0);
    979 #endif
    980 return 0;
    981 }
    982 
    983 int
    984 gen_48 (void)
    985 {
    986 #ifdef SIG48
    987   kill (getpid (), 48);
    988 #else
    989   handle_48 (0);
    990 #endif
    991 return 0;
    992 }
    993 
    994 int
    995 gen_49 (void)
    996 {
    997 #ifdef SIG49
    998   kill (getpid (), 49);
    999 #else
   1000   handle_49 (0);
   1001 #endif
   1002 return 0;
   1003 }
   1004 
   1005 int
   1006 gen_50 (void)
   1007 {
   1008 #ifdef SIG50
   1009   kill (getpid (), 50);
   1010 #else
   1011   handle_50 (0);
   1012 #endif
   1013 return 0;
   1014 }
   1015 
   1016 int
   1017 gen_51 (void)
   1018 {
   1019 #ifdef SIG51
   1020   kill (getpid (), 51);
   1021 #else
   1022   handle_51 (0);
   1023 #endif
   1024 return 0;
   1025 }
   1026 
   1027 int
   1028 gen_52 (void)
   1029 {
   1030 #ifdef SIG52
   1031   kill (getpid (), 52);
   1032 #else
   1033   handle_52 (0);
   1034 #endif
   1035 return 0;
   1036 }
   1037 
   1038 int
   1039 gen_53 (void)
   1040 {
   1041 #ifdef SIG53
   1042   kill (getpid (), 53);
   1043 #else
   1044   handle_53 (0);
   1045 #endif
   1046 return 0;
   1047 }
   1048 
   1049 int
   1050 gen_54 (void)
   1051 {
   1052 #ifdef SIG54
   1053   kill (getpid (), 54);
   1054 #else
   1055   handle_54 (0);
   1056 #endif
   1057 return 0;
   1058 }
   1059 
   1060 int
   1061 gen_55 (void)
   1062 {
   1063 #ifdef SIG55
   1064   kill (getpid (), 55);
   1065 #else
   1066   handle_55 (0);
   1067 #endif
   1068 return 0;
   1069 }
   1070 
   1071 int
   1072 gen_56 (void)
   1073 {
   1074 #ifdef SIG56
   1075   kill (getpid (), 56);
   1076 #else
   1077   handle_56 (0);
   1078 #endif
   1079 return 0;
   1080 }
   1081 
   1082 int
   1083 gen_57 (void)
   1084 {
   1085 #ifdef SIG57
   1086   kill (getpid (), 57);
   1087 #else
   1088   handle_57 (0);
   1089 #endif
   1090 return 0;
   1091 }
   1092 
   1093 int
   1094 gen_58 (void)
   1095 {
   1096 #ifdef SIG58
   1097   kill (getpid (), 58);
   1098 #else
   1099   handle_58 (0);
   1100 #endif
   1101 return 0;
   1102 }
   1103 
   1104 int
   1105 gen_59 (void)
   1106 {
   1107 #ifdef SIG59
   1108   kill (getpid (), 59);
   1109 #else
   1110   handle_59 (0);
   1111 #endif
   1112 return 0;
   1113 }
   1114 
   1115 int
   1116 gen_60 (void)
   1117 {
   1118 #ifdef SIG60
   1119   kill (getpid (), 60);
   1120 #else
   1121   handle_60 (0);
   1122 #endif
   1123 return 0;
   1124 }
   1125 
   1126 int
   1127 gen_61 (void)
   1128 {
   1129 #ifdef SIG61
   1130   kill (getpid (), 61);
   1131 #else
   1132   handle_61 (0);
   1133 #endif
   1134 return 0;
   1135 }
   1136 
   1137 int
   1138 gen_62 (void)
   1139 {
   1140 #ifdef SIG62
   1141   kill (getpid (), 62);
   1142 #else
   1143   handle_62 (0);
   1144 #endif
   1145 return 0;
   1146 }
   1147 
   1148 int
   1149 gen_63 (void)
   1150 {
   1151 #ifdef SIG63
   1152   kill (getpid (), 63);
   1153 #else
   1154   handle_63 (0);
   1155 #endif
   1156 return 0;
   1157 }
   1158 
   1159 int
   1160 gen_TERM (void)
   1161 {
   1162   kill (getpid (), SIGTERM);
   1163 return 0;
   1164 }
   1165 
   1166 int
   1168 main ()
   1169 {
   1170 #ifdef SIG_SETMASK
   1171   /* Ensure all the signals aren't blocked.
   1172      The environment in which the testsuite is run may have blocked some
   1173      for whatever reason.  */
   1174   {
   1175     sigset_t newset;
   1176     sigemptyset (&newset);
   1177     sigprocmask (SIG_SETMASK, &newset, NULL);
   1178   }
   1179 #endif
   1180 
   1181   signal (SIGABRT, handle_ABRT);
   1182 #ifdef SIGHUP
   1183   signal (SIGHUP, handle_HUP);
   1184 #endif
   1185 #ifdef SIGQUIT
   1186   signal (SIGQUIT, handle_QUIT);
   1187 #endif
   1188 #ifdef SIGILL
   1189   signal (SIGILL, handle_ILL);
   1190 #endif
   1191 #ifdef SIGEMT
   1192   signal (SIGEMT, handle_EMT);
   1193 #endif
   1194 #ifdef SIGFPE
   1195   signal (SIGFPE, handle_FPE);
   1196 #endif
   1197 #ifdef SIGBUS
   1198   signal (SIGBUS, handle_BUS);
   1199 #endif
   1200 #ifdef SIGSEGV
   1201   signal (SIGSEGV, handle_SEGV);
   1202 #endif
   1203 #ifdef SIGSYS
   1204   signal (SIGSYS, handle_SYS);
   1205 #endif
   1206 #ifdef SIGPIPE
   1207   signal (SIGPIPE, handle_PIPE);
   1208 #endif
   1209 #ifdef SIGALRM
   1210   signal (SIGALRM, handle_ALRM);
   1211 #endif
   1212 #ifdef SIGURG
   1213   signal (SIGURG, handle_URG);
   1214 #endif
   1215 #ifdef SIGTSTP
   1216   signal (SIGTSTP, handle_TSTP);
   1217 #endif
   1218 #ifdef SIGCONT
   1219   signal (SIGCONT, handle_CONT);
   1220 #endif
   1221 #ifdef SIGCHLD
   1222   signal (SIGCHLD, handle_CHLD);
   1223 #endif
   1224 #ifdef SIGTTIN
   1225   signal (SIGTTIN, handle_TTIN);
   1226 #endif
   1227 #ifdef SIGTTOU
   1228   signal (SIGTTOU, handle_TTOU);
   1229 #endif
   1230 #ifdef SIGIO
   1231   signal (SIGIO, handle_IO);
   1232 #endif
   1233 #ifdef SIGXCPU
   1234   signal (SIGXCPU, handle_XCPU);
   1235 #endif
   1236 #ifdef SIGXFSZ
   1237   signal (SIGXFSZ, handle_XFSZ);
   1238 #endif
   1239 #ifdef SIGVTALRM
   1240   signal (SIGVTALRM, handle_VTALRM);
   1241 #endif
   1242 #ifdef SIGPROF
   1243   signal (SIGPROF, handle_PROF);
   1244 #endif
   1245 #ifdef SIGWINCH
   1246   signal (SIGWINCH, handle_WINCH);
   1247 #endif
   1248 #if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
   1249   signal (SIGLOST, handle_LOST);
   1250 #endif
   1251 #ifdef SIGUSR1
   1252   signal (SIGUSR1, handle_USR1);
   1253 #endif
   1254 #ifdef SIGUSR2
   1255   signal (SIGUSR2, handle_USR2);
   1256 #endif
   1257 #ifdef SIGPWR
   1258   signal (SIGPWR, handle_PWR);
   1259 #endif
   1260 #if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
   1261   signal (SIGPOLL, handle_POLL);
   1262 #endif
   1263 #ifdef SIGWIND
   1264   signal (SIGWIND, handle_WIND);
   1265 #endif
   1266 #ifdef SIGPHONE
   1267   signal (SIGPHONE, handle_PHONE);
   1268 #endif
   1269 #ifdef SIGWAITING
   1270   signal (SIGWAITING, handle_WAITING);
   1271 #endif
   1272 #ifdef SIGLWP
   1273   signal (SIGLWP, handle_LWP);
   1274 #endif
   1275 #ifdef SIGDANGER
   1276   signal (SIGDANGER, handle_DANGER);
   1277 #endif
   1278 #ifdef SIGGRANT
   1279   signal (SIGGRANT, handle_GRANT);
   1280 #endif
   1281 #ifdef SIGRETRACT
   1282   signal (SIGRETRACT, handle_RETRACT);
   1283 #endif
   1284 #ifdef SIGMSG
   1285   signal (SIGMSG, handle_MSG);
   1286 #endif
   1287 #ifdef SIGSOUND
   1288   signal (SIGSOUND, handle_SOUND);
   1289 #endif
   1290 #ifdef SIGSAK
   1291   signal (SIGSAK, handle_SAK);
   1292 #endif
   1293 #ifdef SIGPRIO
   1294   signal (SIGPRIO, handle_PRIO);
   1295 #endif
   1296 #ifdef __Lynx__
   1297   /* Lynx doesn't seem to have anything in signal.h for this.  */
   1298   signal (33, handle_33);
   1299   signal (34, handle_34);
   1300   signal (35, handle_35);
   1301   signal (36, handle_36);
   1302   signal (37, handle_37);
   1303   signal (38, handle_38);
   1304   signal (39, handle_39);
   1305   signal (40, handle_40);
   1306   signal (41, handle_41);
   1307   signal (42, handle_42);
   1308   signal (43, handle_43);
   1309   signal (44, handle_44);
   1310   signal (45, handle_45);
   1311   signal (46, handle_46);
   1312   signal (47, handle_47);
   1313   signal (48, handle_48);
   1314   signal (49, handle_49);
   1315   signal (50, handle_50);
   1316   signal (51, handle_51);
   1317   signal (52, handle_52);
   1318   signal (53, handle_53);
   1319   signal (54, handle_54);
   1320   signal (55, handle_55);
   1321   signal (56, handle_56);
   1322   signal (57, handle_57);
   1323   signal (58, handle_58);
   1324   signal (59, handle_59);
   1325   signal (60, handle_60);
   1326   signal (61, handle_61);
   1327   signal (62, handle_62);
   1328   signal (63, handle_63);
   1329 #endif /* lynx */
   1330   signal (SIGTERM, handle_TERM);
   1331 
   1332   x = 0;
   1333 
   1334   gen_ABRT ();
   1335   gen_HUP ();
   1336   gen_QUIT ();
   1337   gen_ILL ();
   1338   gen_EMT ();
   1339   gen_FPE ();
   1340   gen_BUS ();
   1341   gen_SEGV ();
   1342   gen_SYS ();
   1343   gen_PIPE ();
   1344   gen_ALRM ();
   1345   gen_URG ();
   1346   gen_TSTP ();
   1347   gen_CONT ();
   1348   gen_CHLD ();
   1349   gen_TTIN ();
   1350   gen_TTOU ();
   1351   gen_IO ();
   1352   gen_XCPU ();
   1353   gen_XFSZ ();
   1354   gen_VTALRM ();
   1355   gen_PROF ();
   1356   gen_WINCH ();
   1357   gen_LOST ();
   1358   gen_USR1 ();
   1359   gen_USR2 ();
   1360   gen_PWR ();
   1361   gen_POLL ();
   1362   gen_WIND ();
   1363   gen_PHONE ();
   1364   gen_WAITING ();
   1365   gen_LWP ();
   1366   gen_DANGER ();
   1367   gen_GRANT ();
   1368   gen_RETRACT ();
   1369   gen_MSG ();
   1370   gen_SOUND ();
   1371   gen_SAK ();
   1372   gen_PRIO ();
   1373   gen_33 ();
   1374   gen_34 ();
   1375   gen_35 ();
   1376   gen_36 ();
   1377   gen_37 ();
   1378   gen_38 ();
   1379   gen_39 ();
   1380   gen_40 ();
   1381   gen_41 ();
   1382   gen_42 ();
   1383   gen_43 ();
   1384   gen_44 ();
   1385   gen_45 ();
   1386   gen_46 ();
   1387   gen_47 ();
   1388   gen_48 ();
   1389   gen_49 ();
   1390   gen_50 ();
   1391   gen_51 ();
   1392   gen_52 ();
   1393   gen_53 ();
   1394   gen_54 ();
   1395   gen_55 ();
   1396   gen_56 ();
   1397   gen_57 ();
   1398   gen_58 ();
   1399   gen_59 ();
   1400   gen_60 ();
   1401   gen_61 ();
   1402   gen_62 ();
   1403   gen_63 ();
   1404   gen_TERM ();
   1405 
   1406   return 0;	/* end of main */
   1407 }
   1408