version 1.15, 2003/05/14 07:08:48 |
version 1.18, 2006/02/28 08:36:39 |
|
|
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* |
* |
* $OpenXM: OpenXM_contrib2/asir2000/parse/debug.c,v 1.14 2003/03/07 06:39:59 noro Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/parse/debug.c,v 1.17 2006/02/25 06:33:31 noro Exp $ |
*/ |
*/ |
#include "ca.h" |
#include "ca.h" |
#include "parse.h" |
#include "parse.h" |
Line 838 void showpos_to_string(char *buf) |
|
Line 838 void showpos_to_string(char *buf) |
|
buf += strlen(buf); |
buf += strlen(buf); |
} |
} |
} |
} |
|
} |
|
|
|
/* [[file,line,name],...] */ |
|
|
|
extern int at_root; |
|
|
|
void showpos_to_list(LIST *r) |
|
{ |
|
NODE n,u,u1,t; |
|
VS vs; |
|
STRING null,name,fname,kwd; |
|
LIST l,b; |
|
Q q; |
|
|
|
u = 0; |
|
if ( PVSS ) { |
|
if ( cur_binf ) { |
|
/* builtin : [0,0,name] */ |
|
MKSTR(null,""); |
|
MKSTR(name,cur_binf->name); |
|
t = mknode(3,null,name,0); |
|
MKLIST(l,t); |
|
MKNODE(u1,l,0); u = u1; |
|
} |
|
((VS)BDY(PVSS))->at = evalstatline; |
|
for ( n = PVSS; n; n = NEXT(n) ) { |
|
vs = (VS)BDY(n); |
|
MKSTR(fname,vs->usrf->f.usrf->fname); |
|
STOQ(vs->at,q); |
|
MKSTR(name,vs->usrf->name); |
|
t = mknode(3,fname,name,q); |
|
MKLIST(l,t); |
|
MKNODE(u1,l,u); u = u1; |
|
} |
|
} |
|
/* line number at the toplevel */ |
|
MKSTR(fname,"toplevel"); STOQ(at_root,q); |
|
t = mknode(2,fname,q); MKLIST(l,t); MKNODE(u1,l,u); u = u1; |
|
MKLIST(b,u); |
|
|
|
MKSTR(kwd,"asir_where"); |
|
t = mknode(2,kwd,b); |
|
MKLIST(*r,t); |
} |
} |
|
|
void change_stack(int level,NODE *pvss) |
void change_stack(int level,NODE *pvss) |