$ swipl --no-signals
Welcome to SWI-Prolog (threaded, 64 bits, version 8.2.2)
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software.
Please run ?- license. for legal details.
For online help and background, visit https://www.swi-prolog.org
For built-in help, use ?- help(Topic). or ?- apropos(Word).
?- on_signal(int, O, O).
O = default.
?- current_prolog_flag(os_argv, X).
X = [swipl, '--no-signals'].
I reproduce that; it’s only in binaries in which I’m embedding the Prolog engine that I’m finding it difficult to disable signals.
edit: and in that case, printing all solutions to
a(signal(X)) :- on_signal(int, X, X).
a(os_argv(X)) :- current_prolog_flag(os_argv, X).