gcc/testsuite/ChangeLog:

        * lib/target-supports.exp (check_effective_target_signal): Check
        signal supporting by checking signal.h, signal and raise is available.
---
 gcc/testsuite/lib/target-supports.exp | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/gcc/testsuite/lib/target-supports.exp 
b/gcc/testsuite/lib/target-supports.exp
index 57eed3012b94..a97e253129ad 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -575,7 +575,15 @@ proc check_effective_target_signal { } {
     if [target_info exists gcc,signal_suppress] {
       return 0
     }
-    return 1
+    return [check_no_compiler_messages signal_h_available executable {
+#include <signal.h>
+static void signal_handler(int signal) {
+}
+int main() {
+    signal(SIGINT, signal_handler);
+    raise(SIGINT);
+    return 0;
+} } ""]
 }
 
 # Return 1 if according to target_info struct and explicit target list
-- 
2.27.0

Reply via email to