diff options
Diffstat (limited to 'src/cmd/tbl/t6.c')
-rw-r--r-- | src/cmd/tbl/t6.c | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/src/cmd/tbl/t6.c b/src/cmd/tbl/t6.c index a78368fc..463bfa10 100644 --- a/src/cmd/tbl/t6.c +++ b/src/cmd/tbl/t6.c @@ -9,8 +9,8 @@ void maktab(void) /* define the tab stops of the table */ { - int icol, ilin, tsep, k, ik, vforml, il, text; - char *s; + int icol, ilin, tsep, k, ik, vforml, il, s, text; + char *ss; for (icol = 0; icol < ncol; icol++) { doubled[icol] = acase[icol] = 0; @@ -34,14 +34,15 @@ maktab(void) /* define the tab stops of the table */ switch (ctype(vforml, icol)) { case 'a': acase[icol] = 1; - s = table[ilin][icol].col; - if ((int)s > 0 && (int)s < 128 && text) { + ss = table[ilin][icol].col; + s = (int)(uintptr)ss; + if (s > 0 && s < 128 && text) { if (doubled[icol] == 0) Bprint(&tabout, ".nr %d 0\n.nr %d 0\n", S1, S2); doubled[icol] = 1; Bprint(&tabout, ".if \\n(%c->\\n(%d .nr %d \\n(%c-\n", - (int)s, S2, S2, (int)s); + s, S2, S2, s); } case 'n': if (table[ilin][icol].rcol != 0) { @@ -49,18 +50,19 @@ maktab(void) /* define the tab stops of the table */ Bprint(&tabout, ".nr %d 0\n.nr %d 0\n", S1, S2); doubled[icol] = 1; - if (real(s = table[ilin][icol].col) && !vspen(s)) { - if (tx((int)s) != text) + if (real(ss = table[ilin][icol].col) && !vspen(ss)) { + s = (int)(uintptr)ss; + if (tx(s) != text) continue; Bprint(&tabout, ".nr %d ", TMP); - wide(s, FN(vforml, icol), SZ(vforml, icol)); + wide(ss, FN(vforml, icol), SZ(vforml, icol)); Bprint(&tabout, "\n"); Bprint(&tabout, ".if \\n(%d<\\n(%d .nr %d \\n(%d\n", S1, TMP, S1, TMP); } - if (text == 0 && real(s = table[ilin][icol].rcol) && !vspen(s) && !barent(s)) { + if (text == 0 && real(ss = table[ilin][icol].rcol) && !vspen(ss) && !barent(ss)) { Bprint(&tabout, ".nr %d \\w%c%s%c\n", - TMP, F1, s, F1); + TMP, F1, ss, F1); Bprint(&tabout, ".if \\n(%d<\\n(%d .nr %d \\n(%d\n", S2, TMP, S2, TMP); } @@ -69,11 +71,12 @@ maktab(void) /* define the tab stops of the table */ case 'r': case 'c': case 'l': - if (real(s = table[ilin][icol].col) && !vspen(s)) { - if (tx((int)s) != text) + if (real(ss = table[ilin][icol].col) && !vspen(ss)) { + s = (int)(uintptr)ss; + if (tx(s) != text) continue; Bprint(&tabout, ".nr %d ", TMP); - wide(s, FN(vforml, icol), SZ(vforml, icol)); + wide(ss, FN(vforml, icol), SZ(vforml, icol)); Bprint(&tabout, "\n"); Bprint(&tabout, ".if \\n(%2s<\\n(%d .nr %2s \\n(%d\n", reg(icol, CRIGHT), TMP, reg(icol, CRIGHT), TMP); @@ -100,8 +103,8 @@ maktab(void) /* define the tab stops of the table */ } for (ilin = 0; ilin < nlin; ilin++) if (k = lspan(ilin, icol)) { - s = table[ilin][icol-k].col; - if (!real(s) || barent(s) || vspen(s) ) + ss = table[ilin][icol-k].col; + if (!real(ss) || barent(ss) || vspen(ss) ) continue; Bprint(&tabout, ".nr %d ", TMP); wide(table[ilin][icol-k].col, FN(ilin, icol - k), SZ(ilin, icol - k)); @@ -210,7 +213,7 @@ wide(char *s, char *fn, char *size) putsize("0"); Bprint(&tabout, "%c", F1); } else - Bprint(&tabout, "\\n(%c-", (int)s); + Bprint(&tabout, "\\n(%c-", (int)(uintptr)s); } |