pass GDB should allow your program to see this signal; your program can handle the signal, or else it may terminate if the signal is fatal and not handled.
nopass GDB should not allow your program to see this signal.
When a signal stops your program, the signal is not visible to the program until you continue. Your program sees the signal then, if pass is in effect for the signal in question at that time. In other words, after GDB reports a signal, you can use the handle command with pass or nopass to control whether your program sees that signal when you continue.
You can also use the signal command to prevent your program from seeing a signal, or cause it to see a signal it normally would not see, or to give it any signal at any time. For example, if your program stopped due to some sort of memory reference error, you might store correct values into the erroneous variables and continue, hoping to see more execution; but your program would probably terminate immediately as a result of the fatal signal once it saw the signal. To prevent this, you can continue with 'signal 0'. See “Giving your program a signal” (page 121).
5.4 Stopping and starting multi-thread programs
When your program has multiple threads (see “Debugging programs with multiple threads” (page 46)), you can choose whether to set breakpoints on all threads, or on a particular thread.
break linespec thread | linespec specifies source lines; there are several |
threadno, break linespec | ways of writing them, but the effect is always to |
thread threadno if ... | specify some source line. |
| Use the qualifier 'thread threadno' with a |
| breakpoint command to specify that you only |
| want GDB to stop the program when a particular |
| thread reaches this breakpoint. threadno is one |
| of the numeric thread identifiers assigned by |
| GDB, shown in the first column of the 'info |
| threads' display. |
| If you do not specify 'thread threadno' when |
| you set a breakpoint, the breakpoint applies to |
| all threads of your program. |
| You can use the thread qualifier on conditional |
| breakpoints as well; in this case, place 'thread |
| threadno' before the breakpoint condition, like |
| this: |
| ((gdb)) break frik.c:13 thread 28 if |
| bartab > lim |
5.4 Stopping and starting | 69 |