pike.git/
src/
language.yacc
Branch:
Tag:
Non-build tags
All tags
No tags
2000-06-21
2000-06-21 00:56:02 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>
d187074c82ab98269360592001b80a7def41b596 (
23
lines) (+
18
/-
5
)
[
Show
|
Annotate
]
Branch:
7.9
bugfix for the 'fatal error in POP_STACK' bug
Rev: src/language.yacc:1.188
109:
/* This is the grammar definition of Pike. */ #include "global.h"
-
RCSID("$Id: language.yacc,v 1.
187
2000/06/
09
19:
00:
47
mast
Exp $");
+
RCSID("$Id: language.yacc,v 1.
188
2000/06/
21
00:
56:02
hubbe
Exp $");
#ifdef HAVE_MEMORY_H #include <memory.h> #endif
1624:
{ $$=copy_node(compiler_frame->variable[localid].def); }else{
+
if(compiler_frame->lexical_scope & SCOPE_SCOPE_USED)
+
{
$$ = mknode(F_ASSIGN, mktrampolinenode($<number>3), mklocalnode(localid,0));
-
+
}else{
+
$$ = mknode(F_ASSIGN, mkidentifiernode($<number>3),
+
mklocalnode(localid,0));
} }
-
+
}
| TOK_IDENTIFIER push_compiler_frame1 error { pop_compiler_frame();
1737:
{ $$=copy_node(compiler_frame->variable[localid].def); }else{
+
if(compiler_frame->lexical_scope & SCOPE_SCOPE_USED)
+
{
$$ = mknode(F_ASSIGN, mktrampolinenode($<number>5), mklocalnode(localid,0));
-
+
}else{
+
$$ = mknode(F_ASSIGN, mkidentifiernode($<number>5),
+
mklocalnode(localid,0));
} }
-
+
}
| optional_stars TOK_IDENTIFIER push_compiler_frame1 error { pop_compiler_frame();