diff options
| -rw-r--r-- | CHANGES | 2 | ||||
| -rw-r--r-- | appl/cmd/limbo/gen.b | 3 | ||||
| -rw-r--r-- | dis/limbo.dis | bin | 343171 -> 343192 bytes | |||
| -rw-r--r-- | include/version.h | 2 | ||||
| -rw-r--r-- | limbo/gen.c | 7 |
5 files changed, 9 insertions, 5 deletions
@@ -1,3 +1,5 @@ +20080201 + change foldbranch in limbo/gen.c to prevent loss of `no return value' diagnostics 20080131 update emu/Nt/^(os.c ie-os.c ie-win.c ie emu), but properly this time [issue 81] remove _USE_32BIT_TIME_T from Nt/386/include/lib9.h, and time() def'n from emu/Nt/*.c [issue 81] diff --git a/appl/cmd/limbo/gen.b b/appl/cmd/limbo/gen.b index 062980fb..10988f48 100644 --- a/appl/cmd/limbo/gen.b +++ b/appl/cmd/limbo/gen.b @@ -562,7 +562,8 @@ foldbranch(in: ref Inst) next := in.next; *in = *b; in.next = next; - # b.reach = byte 1; + if(b.op == IRET) + b.reach = byte 1; # might be default return (TO DO) continue; } foldbranch(in.branch); diff --git a/dis/limbo.dis b/dis/limbo.dis Binary files differindex 5fbee7d1..445c1d3a 100644 --- a/dis/limbo.dis +++ b/dis/limbo.dis diff --git a/include/version.h b/include/version.h index 792e85d0..4928d5f7 100644 --- a/include/version.h +++ b/include/version.h @@ -1 +1 @@ -#define VERSION "Fourth Edition (20080131)" +#define VERSION "Fourth Edition (20080201)" diff --git a/limbo/gen.c b/limbo/gen.c index feb87d64..64dce6e5 100644 --- a/limbo/gen.c +++ b/limbo/gen.c @@ -590,10 +590,11 @@ foldbranch(Inst *in) next = in->next; *in = *b; in->next = next; - /* b->reach = 1; */ /* why ? */ + if(b->op == IRET) + b->reach = 1; /* might be default return (TO DO) */ continue; } - foldbranch(in->branch); + foldbranch(b); return; default: if(in->branch != nil) @@ -976,7 +977,7 @@ instconv(Fmt *f) in = va_arg(f->args, Inst*); op = nil; - if(in->op >= 0 && in->op < MAXDIS) + if(in->op < MAXDIS) op = instname[in->op]; if(op == nil) op = "??"; |
