summaryrefslogtreecommitdiffstats
path: root/signal.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2015-01-12 07:36:07 -0800
committerKaz Kylheku <kaz@kylheku.com>2015-01-12 07:36:07 -0800
commit3e313905ec6f7680c1408b12051cb81d46150083 (patch)
tree6178899d5f68330355e0fac293353ede2d2b1a88 /signal.h
parentf46b90032f7bdfee52b699726c42e2687b699a94 (diff)
downloadtxr-3e313905ec6f7680c1408b12051cb81d46150083.tar.gz
txr-3e313905ec6f7680c1408b12051cb81d46150083.tar.bz2
txr-3e313905ec6f7680c1408b12051cb81d46150083.zip
* signal.h (sig_save_enable, sig_save_disable):
Use do;while(0) trick instead of local typedef to cause terminating semicolon to be required. (sig_restore_enable, sig_restore_disable): Remove superfluous do { } while (0). Closing a brace is good enough.
Diffstat (limited to 'signal.h')
-rw-r--r--signal.h14
1 files changed, 6 insertions, 8 deletions
diff --git a/signal.h b/signal.h
index 25a2765a..d01ac429 100644
--- a/signal.h
+++ b/signal.h
@@ -34,10 +34,9 @@
sig_check(); \
async_sig_enabled = 1; \
{ \
- typedef void v_o_i_d
+ do ; while (0)
#define sig_restore_enable \
- do { } while (0); \
} \
async_sig_enabled = sig_save; \
} while(0)
@@ -47,10 +46,9 @@
int sig_save = async_sig_enabled; \
async_sig_enabled = 1; \
{ \
- typedef void v_o_i_d
+ do ; while (0)
#define sig_restore_disable \
- do { } while (0); \
} \
async_sig_enabled = sig_save; \
if (sig_save) \
@@ -90,11 +88,11 @@ extern volatile sig_atomic_t async_sig_enabled;
#else
-#define sig_save_enable do {
-#define sig_save_disable do {
+#define sig_save_enable do { do ; while (0)
+#define sig_save_disable do { do ; while (0)
-#define sig_restore_enable do { } while (0); } while (0)
-#define sig_restore_disable do { } while (0); } while (0)
+#define sig_restore_enable } while (0)
+#define sig_restore_disable } while (0)
typedef struct {
jmp_buf jb;