Unified · Split
| @@ -1,3 +1,5 @@ | ||
| 1 | +20080201 | |
| 2 | + change foldbranch in limbo/gen.c to prevent loss of `no return value' diagnostics | |
| 1 | 3 | 20080131 |
| 2 | 4 | update emu/Nt/^(os.c ie-os.c ie-win.c ie emu), but properly this time [issue 81] |
| 3 | 5 | remove _USE_32BIT_TIME_T from Nt/386/include/lib9.h, and time() def'n from emu/Nt/*.c [issue 81] |
| @@ -562,7 +562,8 @@ foldbranch(in: ref Inst) · 561 unmodified lines | ||
| 562 | 562 | next := in.next; |
| 563 | 563 | *in = *b; |
| 564 | 564 | in.next = next; |
| 565 | − # b.reach = byte 1; | |
| 565 | + if(b.op == IRET) | |
| 566 | + b.reach = byte 1; # might be default return (TO DO) | |
| 566 | 567 | continue; |
| 567 | 568 | } |
| 568 | 569 | foldbranch(in.branch); |
Binary file not shown.
| @@ -1 +1 @@ | ||
| 1 | −#define VERSION "Fourth Edition (20080131)" | |
| 1 | +#define VERSION "Fourth Edition (20080201)" | |
| @@ -590,10 +590,11 @@ foldbranch(Inst *in) · 589 unmodified lines | ||
| 590 | 590 | next = in->next; |
| 591 | 591 | *in = *b; |
| 592 | 592 | in->next = next; |
| 593 | − /* b->reach = 1; */ /* why ? */ | |
| 593 | + if(b->op == IRET) | |
| 594 | + b->reach = 1; /* might be default return (TO DO) */ | |
| 594 | 595 | continue; |
| 595 | 596 | } |
| 596 | − foldbranch(in->branch); | |
| 597 | + foldbranch(b); | |
| 597 | 598 | return; |
| 598 | 599 | default: |
| 599 | 600 | if(in->branch != nil) |
| @@ -976,7 +977,7 @@ instconv(Fmt *f) · 376 unmodified lines | ||
| 976 | 977 | |
| 977 | 978 | in = va_arg(f->args, Inst*); |
| 978 | 979 | op = nil; |
| 979 | − if(in->op >= 0 && in->op < MAXDIS) | |
| 980 | + if(in->op < MAXDIS) | |
| 980 | 981 | op = instname[in->op]; |
| 981 | 982 | if(op == nil) |
| 982 | 983 | op = "??"; |