I applied your patches, reverted the old
change to z36.c, and recompiled. Install
went smoothly, and now there are none
of the obvious errors as before, regarding
sscanf. However, there is a new issue -
the program sys-traps as it's about to
produce output. Here's the basic acid trace:
term% lout all >slides.ps
lout 1982: suicide: sys: trap: fault read addr=0x94000000 pc=0x000e4aa9
term% acid 1982
/proc/1982/text:386 plan 9 executable
/sys/lib/acid/port
/sys/lib/acid/386
acid: lstk()
ocvt_s(precision=0xffffffff,f=0xf51e0,args=0xdfffc928,flags=0x0,width=0x0)+0x1d2
/sys/src/ape/lib/ap/stdio/vfprintf.c:233
n=0x0
s=0x94000000
i=0x6480c0
vfprintf(f=0xf51e0,s=0xf8d92,args=0xdfffc94e)+0x17d
/sys/src/ape/lib/ap/stdio/vfprintf.c:199
fprintf(fmt=0xf8d8c,f=0xf51e0)+0x1f /sys/src/ape/lib/ap/stdio/fprintf.c:11
SetBaseLineMarkAndFont(blm=0x0,f=0x2)+0xe6
/usr/akumar/alt/devel/ports/lout/z49.c:121
PS_DefineGraphicNames(x=0x646ca8)+0x71
/usr/akumar/alt/devel/ports/lout/z49.c:1697
PS_SaveTranslateDefineSave(x=0x646ca8,xdist=0x0,ydist=0x0)+0x49
/usr/akumar/alt/devel/ports/lout/z49.c:1736
FixAndPrintObject(x=0x646ca8,actual_back=0xdfffcb0c,xb=0x0,actual_fwd=0xdfffcb08,xf=0x41c7,dim=0x1,count=0x1,xmk=0x0,pg=0x41c7,suppress=0x0)+0x7bac
/usr/akumar/alt/devel/ports/lout/z23.c:665
y=0x647a40
prev=0x0
res=0x646ca8
z=0x664740
thr=0x63b500
yf=0x63cdc8
aback=0x0
afwd=0x2e7b
face=0x627714
f=0x0
ymk=0x236a
yb=0x0
scale_factor=0x0
colc=0x0
rowc=0xdfffcac0
yc=0x1
tmp=0x64d5a4
pre=0x63f914
post=0x0
link=0x637d51
jn=0x236a
g=0x648bd8
frame_size=0x236a
back_edge=0x0
inc=0xdfffcac0
mk=0x236a
start_group=0x63f914
dble_found=0x0
dlen=0x64e214
b=0x236a
m=0x0
zlink=0x63f914
adjust_sofar=0x0
gaps_sofar=0xdfffd318
underline_xstart=0xdfffd318
underline_font=0xd3180000
underline_colour=0x0
underline_texture=0xdfff
last_bad_gap=0x6ef2d
adjustable_gaps=0x704ef
actual_size=0x0
c=0x312c
prnt=0x0
adjust_indent=0x0
will_adjust=0x63f914
adjust_inc=0x64e214
underlining=0x1
adjusting=0x63f914
urec=0x64d638
uplink=0x236a
i=0x0
Promote(hd=0x622d88,stop_link=0x6768a0,dest_index=0x6044ac,join_after=0x1)+0x879
/usr/akumar/alt/devel/ports/lout/z22.c:942
dest=0x622cf4
y=0x646ca8
last=0x7fffff
link=0x622d88
tmp=0x236a
prnt=0x7fffff
extra_null=0x236a
extra_gap=0x236a
z=0x655f10
t=0x0
dim=0x0
c=0x236a
why=0x64cf54
b=0x0
f=0x236a
aback=0x0
afwd=0x2e7b
label_string=0x637d50
pnval=0x7fffff
buff=0x674910
tmp1=0xdfffd38c
tmp2=0xdfffd34c
top_y=0xdfffd350
xxstart=0x7fffff
xxstop=0x236a
xxdest=0x236a
FlushGalley(hd=0x622d88)+0x25ab /usr/akumar/alt/devel/ports/lout/z20.c:888
dest_encl=0x0
need_adjust=0x0
dest_back=0x0
dest_fwd=0x0
frame_size=0x0
stop_back=0x0
stop_fwd=0x0
stop_perp_back=0x0
stop_perp_fwd=0x0
perp_back=0x0
perp_fwd=0x0
prnt_flush=0x0
dim=0x1
dest_index=0x6044ac
inners=0x0
y=0x671fc4
attach_status=0xd2a
stop_link=0x66cb14
remove_target=0xdfffd7ac
prnt=0x1758
dest=0x622cf4
target_is_internal=0x0
headers_seen=0x0
link=0x668968
prec_gap=0x66f9e0
tmp=0xc12
zlink=0x0
z=0x0
prec_def=0xdfffd85c
succ_gap=0x0
succ_def=0x704ef
dest_side=0x1
dest_par_constr=0x0
why=0xdfffd7bc
dest_perp_constr=0x645378
f=0x0
pb=0x0
pf=0x0
tgp=0x0
promotable=0x0
top_z=0x6ed
i=0x0
headers_count=0x0
eg=0xb13
val=0x0
index2=0x6ed
hd2=0x702aa
tag=0x1200
seq=0xb13
found=0x1758
newseq=0x0
gall=0x236a
newsym=0x68b1c8
newtag=0x0
cnt=0x68b1c8
sym=0x0
cr=0x0
ins=0x6ed
tfnum=0xdcb00000
tfpos=0x682c30
tlnum=0xdfffd6fc
tcont=0x0
ParentFlush(prnt_flush=0x1,dest_index=0x66c488,kill=0x1)+0x2e4
/usr/akumar/alt/devel/ports/lout/z20.c:92
prnt=0x622d88
FlushGalley(hd=0x670a98)+0x72c /usr/akumar/alt/devel/ports/lout/z20.c:799
dest_encl=0x64cd84
need_adjust=0x1
dest_back=0x0
dest_fwd=0x4d6
frame_size=0x2f15
stop_back=0x0
stop_fwd=0x4d6
stop_perp_back=0x0
stop_perp_fwd=0xc12
perp_back=0x0
perp_fwd=0xc12
prnt_flush=0x1
dim=0x1
dest_index=0x66c488
inners=0x0
y=0x671d44
attach_status=0x5
stop_link=0x66ffd4
remove_target=0x66c600
prnt=0x622d88
dest=0x685d08
target_is_internal=0x1
headers_seen=0x0
link=0x670a98
prec_gap=0x670858
tmp=0x0
zlink=0x2f15
z=0xebd
prec_def=0x684434
succ_gap=0x0
succ_def=0x2f15
dest_side=0xa2
dest_par_constr=0x2f15
why=0x67e408
dest_perp_constr=0x1758
f=0x4d6
pb=0x0
pf=0xc12
tgp=0x2f15
promotable=0xebd
top_z=0x2f15
i=0xebd
headers_count=0x2f15
eg=0x47ff88
val=0x2f15
index2=0x2f15
hd2=0xebd
tag=0x2f15
seq=0x47ff88
found=0xdfffdcf4
newseq=0x0
gall=0xdfffdcb4
newsym=0x0
newtag=0x64ea78
cnt=0x0
sym=0xebd
cr=0x2f15
ins=0x2f15
tfnum=0xf1b60064
tfpos=0x653cec
tlnum=0x63a530
tcont=0x236a
FlushInners(hd=0x6446c4,inners=0x656410)+0x395
/usr/akumar/alt/devel/ports/lout/z22.c:147
dest_index=0x647940
y=0x64cd84
z=0x670a98
tmp=0x63dbd8
FlushGalley(hd=0x6446c4)+0xf37 /usr/akumar/alt/devel/ports/lout/z20.c:142
dest_encl=0x624f38
need_adjust=0x0
dest_back=0x0
dest_fwd=0x2058
frame_size=0x2f15
stop_back=0x0
stop_fwd=0x0
stop_perp_back=0x0
stop_perp_fwd=0x0
perp_back=0x0
perp_fwd=0x1e9a
prnt_flush=0x1
dim=0x1
dest_index=0x647940
inners=0x656410
y=0x627a04
attach_status=0x0
stop_link=0x0
remove_target=0x0
prnt=0x0
dest=0x66bf20
target_is_internal=0x1
headers_seen=0x0
link=0x66c7bc
prec_gap=0x641f90
tmp=0x312c
zlink=0x63dbd8
z=0x1
prec_def=0x644af8
succ_gap=0x0
succ_def=0x0
dest_side=0xa2
dest_par_constr=0xebd
why=0x668c98
dest_perp_constr=0x4d0
f=0x5e5918
pb=0x6245b0
pf=0x1
tgp=0x63dbd8
promotable=0x1
top_z=0x0
i=0x1
headers_count=0x63dbd8
eg=0x2
val=0x63dbd8
index2=0x0
hd2=0x1
tag=0x645378
seq=0x2
found=0x7d64b
newseq=0x236a
gall=0x0
newsym=0x66cf94
newtag=0x64c6d8
cnt=0x66cf94
sym=0x1
cr=0x63dbd8
ins=0x0
tfnum=0xe0d80064
tfpos=0x6ef2d
tlnum=0x0
tcont=0x651ab0
ParentFlush(prnt_flush=0x1,dest_index=0x637988,kill=0x0)+0x2e4
/usr/akumar/alt/devel/ports/lout/z20.c:92
prnt=0x6446c4
FlushGalley(hd=0x6245b0)+0x270f /usr/akumar/alt/devel/ports/lout/z20.c:1054
dest_encl=0x0
need_adjust=0x0
dest_back=0x0
dest_fwd=0x0
frame_size=0x0
stop_back=0x0
stop_fwd=0x0
stop_perp_back=0x0
stop_perp_fwd=0x0
perp_back=0x0
perp_fwd=0x0
prnt_flush=0x1
dim=0x1
dest_index=0x637988
inners=0x0
y=0x651818
attach_status=0x5
stop_link=0x66b074
remove_target=0x142cb8
prnt=0x6446c4
dest=0x6378f4
target_is_internal=0x0
headers_seen=0x0
link=0x66c17c
prec_gap=0x63e080
tmp=0x60e1c4
zlink=0x6f
z=0x281ce
prec_def=0x6460d8
succ_gap=0x625b88
succ_def=0x2f15
dest_side=0x63869c
dest_par_constr=0x0
why=0x4
dest_perp_constr=0x646058
f=0x8e152
pb=0x275a6
pf=0x6461d8
tgp=0x6f
promotable=0x281ce
top_z=0x7b7f
i=0x281ce
headers_count=0x6f
eg=0x14f230
val=0x6f
index2=0x7b7f
hd2=0x625588
tag=0x7d
seq=0x14f230
found=0x142d0c
newseq=0x80
gall=0x142cb8
newsym=0x142d45
newtag=0xa
cnt=0x142d45
sym=0x281ce
cr=0x6f
ins=0x7b7f
tfnum=0x10000
tfpos=0xffffffff
tlnum=0x0
tcont=0x0
TransferBegin(x=0x64b33c)+0x153e /usr/akumar/alt/devel/ports/lout/z18.c:228
res=0x0
target=0x622f70
xsym=0x5f20e0
env=0x602c64
y=0x645e90
new_env=0x636140
hold_env=0x643ec8
index=0x63a914
hd=0x6245b0
link=0x0
why=0x5ff5d4
c=0x2
Parse(token=0xdfffef58,defs_allowed=0x1,encl=0x141720,transfer_allowed=0x1)+0x275d
/usr/akumar/alt/devel/ports/lout/z06.c:1488
initial_ttop=0x0
obj_prev=0x1
typ=0x644cf8
prec=0x7
tmp=0x6461d8
t=0x645fd8
env=0x602c64
y=0x623bd8
z=0x11a0f8
crs=0x644cf8
style=0x14e158
res_env=0x7
x=0x64b33c
res=0x20
offset=0x6c01
lnum=0x14cc74
scope_count=0x0
i=0x1
xsym=0x5f20e0
link=0x64b33c
revealed=0x1
compulsory_count=0x0
new_par=0x644cf8
imps=0x0
xlink=0x14e470
run(argc=0x2,argv=0xdfffefac,runs_to_do=0xdfffef8c,lib=0x107d0b,run_num=0x1)+0x2516
/usr/akumar/alt/devel/ports/lout/z01.c:898
seen_wordcount=0x0
be_type=0x1
encapsulated=0x0
stdin_seen=0x0
cross_db=0x10746a
outfile=0x10746f
source_file_count=0x1
i=0x2
runcount=0x0
arg=0xdfffefc4
len=0x0
len1=0x0
units1=0x0
len2=0x0
units2=0x0
MemCheckLong=0x1
oname=0x0
oval=0x0
y=0x13c1d8
bp=0x0
p=0x0
buff=0x0
g=0x0
z=0x0
out_fp=0xf51e0
s=0x14bde4
t=0x14e470
res=0x0
main(argc=0x2,argv=0xdfffefac)+0xa1 /usr/akumar/alt/devel/ports/lout/z01.c:972
lib=0x107d0b
run_num=0x1
runs_to_do=0x1
_main+0x26 /sys/src/ape/lib/ap/386/main9.s:12
and as you can see, it ends up at vfprintf.c -
would that be an after-effect of the vfscanf
changes?
I can try recompiling lout with debugging
options and provide more output, if need
be.
Thank you,
ak
--- Begin Message ---
> I wonder, however, if there
> is another problem around
> z38.c:254, like the one you
> have mentioned here?
Probably - there are a couple of instances of sscanf %s%n there.
I've just submitted patch scanf-string-eof which should correct
all these.
--- End Message ---