+++ Colin Watson [2014-04-01 17:00 +0100]:
> On Tue, Apr 01, 2014 at 04:36:14PM +0100, Wookey wrote:
>
> Simplifying and expanding out the groff pipeline, that should yield:
>
> <man/es/man1/man.1 preconv -e UTF-8 | tbl | troff -mtty-char -mandoc -wmac
> -Tutf8 | grotty
>
> And the thing you want to gdb there is troff, so if this reproduces the
> same problem, then:
>
> <man/es/man1/man.1 preconv -e UTF-8 | tbl >man.x
> gdb --args /usr/bin/troff -mtty-char -mandoc -wmac -Tutf8 man.x
Thanks for that - saved me hours.
So it turns out that simply rebuilding troff (with or without nostrip)
makes this error go away. So I guess there is a latent bug here about
the build environment which is only noticed in a bootstrap situation.
Given the code in question I'd guess it was something to with getting confused
about int sizes:
in: src/roff/troff/number.cpp
case '*':
if (v2 < 0) {
if (*v > 0) {
if ((unsigned)*v > -(unsigned)INT_MIN / -(unsigned)v2)
overflow = 1;
}
else if (-(unsigned)*v > INT_MAX / -(unsigned)v2)
overflow = 1;
}
else if (v2 > 0) {
if (*v > 0) {
if (*v > INT_MAX / v2)
overflow = 1;
}
else if (-(unsigned)*v > -(unsigned)INT_MIN / v2)
overflow = 1;
}
if (overflow) {
error("multiplication overflow");
return 0;
}
I'm not sufficiently interested to follow this any further right now as
a binNMU has unbunged debhelper and thus several thousand source packages in
the buildd :-)
Comparing the build logs:
http://buildd.debian-ports.org/status/fetch.php?pkg=groff&arch=arm64&ver=1.22.2-5&stamp=1396359138
http://buildd.debian-ports.org/status/fetch.php?pkg=groff&arch=arm64&ver=1.22.2-5%2Bb1&stamp=1396456563
the builds themselves are identical apart from 3 date instances, but some
packages had changed:
Broken:
tzdata (2014a-1)
libtasn1-3:arm64 (2.14-3)
libk5crypto3:arm64 (1.11.3+dfsg-3)
libkrb5support0:arm64 (1.11.3+dfsg-3)
groff-base (1.22.2-4)
libcups2:arm64 (1.7.0-1profile1)
libcupsimage2:arm64 (1.7.0-1profile1)
libcupsfilters1:arm64 (1.0.43-1)
x11-common (1:7.7+6)
Working:
tzdata (2014b-1)
no libtasn1-3
libk5crypto3:arm64 (1.12.1+dfsg-1)
libkrb5support0:arm64 (1.12.1+dfsg-1)
groff-base (1.22.2-5)
libcups2:arm64 (1.7.1-12)
libcupsimage2:arm64 (1.7.1-12)
libcupsfilters1:arm64 (1.0.50-1)
x11-common (1:7.7+7)
I'm guessing that the mismatched groff-base might be the issue, or
presence/absence of libtasn1-3?
I'll leave it up to you whether to simply close this as not interesting or
easily reproducible.
Wookey
--
Principal hats: Linaro, Emdebian, Wookware, Balloonboard, ARM
http://wookware.org/
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]