A definição de sigset_t deve lhe dar uma pista, não é um int simples, é mais complexo:
Observe a matriz de palavras dentro de __val.
# define _SIGSET_NWORDS (1024 / (8 * sizeof (unsigned long int)))
typedef struct
{
unsigned long int __val[_SIGSET_NWORDS];
} __sigset_t;
Você pode tentar:
signal.__val[0];
Observe que você deve esperar lixo na impressão inicial da pilha.
É claro que você não deveria estar olhando para dentro dessa estrutura, já que é supostamente opaca. Mas é útil para depurar às vezes.