1
0
mirror of https://github.com/golang/go synced 2024-11-25 06:47:56 -07:00

runtime: skip functions with no lines when building src line table

Avoid getting out of synch when a function, such as main.init,
has no associated line number information.  Without this the
function before main.init can skip the PC all the way to the
next function, which will cause the next function's line table
to be associated with main.init, and leave subsequent
functions with the wrong line numbers.

R=rsc
CC=golang-dev
https://golang.org/cl/4426055
This commit is contained in:
Ian Lance Taylor 2011-04-21 08:32:58 -07:00
parent 946a4ea0e3
commit 1f09cc25a1

View File

@ -291,7 +291,9 @@ splitpcln(void)
if(f < ef && pc >= (f+1)->entry) { if(f < ef && pc >= (f+1)->entry) {
f->pcln.len = p - f->pcln.array; f->pcln.len = p - f->pcln.array;
f->pcln.cap = f->pcln.len; f->pcln.cap = f->pcln.len;
do
f++; f++;
while(f < ef && pc >= (f+1)->entry);
f->pcln.array = p; f->pcln.array = p;
// pc0 and ln0 are the starting values for // pc0 and ln0 are the starting values for
// the loop over f->pcln, so pc must be // the loop over f->pcln, so pc must be