 
                            ...
The C99 standard dictates the use of volatile sig_atomic_t. The type of sig_atomic_t is implementation-defined, although there are bounding constraints. Only assign integer values from 0 through 127 to a variable of type sig_atomic_t to be fully portable.
...