pike.git/
src/
docode.c
Branch:
Tag:
Non-build tags
All tags
No tags
2014-08-18
2014-08-18 13:12:34 by Per Hedbor <ph@opera.com>
ca565503f8637aa3ad2bdb5d974be4ee3cb4679c (
21
lines) (+
10
/-
11
)
[
Show
|
Annotate
]
Branch:
8.0
Reintroduced missing test before using private globals.
703:
struct identifier *id = ID_FROM_PTR(Pike_compiler->new_program, ref); if(!(id->identifier_flags & IDENTIFIER_NO_THIS_REF)
+
&& !ref->inherit_offset
&& !IDENTIFIER_IS_ALIAS(id->identifier_flags) && IDENTIFIER_IS_VARIABLE(id->identifier_flags)) {
716:
return; }
-
if( (id->func.offset < 65536) && (n<65536) )
-
{
-
+
if( id->run_time_type == PIKE_T_MIXED ) { emit2(F_PRIVATE_IF_DIRECT_GLOBAL, id->func.offset, n); return; }
-
/*
else
*/
-
/*
{ */
+
/*
else
if(
(id->func.offset
<
65536)
&&
(n<65536) )
*/
+
/* { */
/* INT32 mix = id->func.offset | (n<<16); */ /* emit2(F_PRIVATE_IF_DIRECT_TYPED_GLOBAL, mix, id->run_time_type); */
-
+
/* } */
}
-
}
-
+
emit1(F_GLOBAL, n); }
741:
struct identifier *id = ID_FROM_PTR(Pike_compiler->new_program, ref); if( !(id->identifier_flags & IDENTIFIER_NO_THIS_REF)
+
&& !ref->inherit_offset
&& !IDENTIFIER_IS_ALIAS(id->identifier_flags) && IDENTIFIER_IS_VARIABLE(id->identifier_flags)) {