summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/genemit.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9522ee6e681..8e008031ead 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+Mon Mar 30 00:21:03 1998 Jeffrey A Law (law@cygnus.com)
+
+ * genemit.c (DONE): Rework so that it works in the true arm if
+ an if-else conditional.
+ (FAIL): Likewise.
+
Sun Mar 29 12:45:23 1998 Jeffrey A Law (law@cygnus.com)
* rs6000.c: Do not include stdioh or ctype.h anymore.
diff --git a/gcc/genemit.c b/gcc/genemit.c
index cb2ec7e21d0..4c61282be4b 100644
--- a/gcc/genemit.c
+++ b/gcc/genemit.c
@@ -749,8 +749,8 @@ from the machine description file `md'. */\n\n");
printf ("extern char *insn_operand_constraint[][MAX_RECOG_OPERANDS];\n\n");
printf ("extern rtx recog_operand[];\n");
printf ("#define operands emit_operand\n\n");
- printf ("#define FAIL {end_sequence (); return _val;}\n");
- printf ("#define DONE {_val = gen_sequence (); end_sequence (); return _val;}\n");
+ printf ("#define FAIL do {end_sequence (); return _val;} while (0)\n");
+ printf ("#define DONE do {_val = gen_sequence (); end_sequence (); return _val;} while (0)\n");
/* Read the machine description. */