diff --git a/include/signal.h b/include/signal.h
index e78318f..ab3c98d 100644
--- a/include/signal.h
+++ b/include/signal.h
@@ -16,7 +16,7 @@
 
 /* glibc seems to use sig_atomic_t as "int" pretty much on all architectures.
    Do the same, but allow the architecture to override. */
-#ifdef _KLIBC_HAS_ARCH_SIG_ATOMIC_T
+#ifndef _KLIBC_HAS_ARCH_SIG_ATOMIC_T
 typedef int sig_atomic_t;
 #endif
 
diff --git a/klibc/tests/sigint.c b/klibc/tests/sigint.c
new file mode 100644
index 0000000..9899383
--- /dev/null
+++ b/klibc/tests/sigint.c
@@ -0,0 +1,49 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <signal.h>
+
+static sig_atomic_t counter = 0;
+
+static void sig_handler(int signum)
+{
+  static char msg[] = "Signal handler\n";
+
+  (void)signum;
+
+  write(1, msg, sizeof msg - 1);
+  counter++;
+}
+
+int main(int argc, char *argv[])
+{
+  struct sigaction act;
+  pid_t f;
+  
+  memset(&act, 0x00, sizeof(struct sigaction));
+  act.sa_handler = sig_handler;
+  sigemptyset(&act.sa_mask);
+  act.sa_flags = SA_RESTART;
+  sigaction(SIGINT, &act, NULL);
+  sigaction(SIGTERM, &act, NULL);
+  
+  (void)argc;
+
+  f = fork();
+
+  if ( f < 0 ) {
+    perror(argv[0]);
+    exit(255);
+  } else if ( f > 0 ) {
+    sleep(5);
+    if ( !counter ) {
+      fprintf(stderr, "No signal received!\n");
+      exit(1);
+    }
+    exit(0);
+  } else {
+    sleep(1);
+    kill(getppid(), SIGINT);
+    exit(0);
+  }
+}
