pike.git / src / docode.c

version» Context lines:

pike.git/src/docode.c:703:   static void emit_assign_global( int n, int and_pop )   {    struct compilation *c = THIS_COMPILATION;    struct reference *ref = PTR_FROM_INT(Pike_compiler->new_program, n);    struct identifier *id = ID_FROM_PTR(Pike_compiler->new_program, ref);       if( (ref->id_flags & (ID_PRIVATE|ID_FINAL))    && !(id->identifier_flags & IDENTIFIER_NO_THIS_REF)    && !IDENTIFIER_IS_ALIAS(id->identifier_flags)    && IDENTIFIER_IS_VARIABLE(id->identifier_flags) -  && !ref->inherit_offset -  && id->run_time_type == PIKE_T_MIXED ) +  && !ref->inherit_offset )    { -  +  if( id->run_time_type == PIKE_T_MIXED )    emit1((and_pop?F_ASSIGN_PRIVATE_GLOBAL_AND_POP:F_ASSIGN_PRIVATE_GLOBAL),    id->func.offset); -  +  else +  emit2((and_pop?F_ASSIGN_PRIVATE_TYPED_GLOBAL_AND_POP:F_ASSIGN_PRIVATE_TYPED_GLOBAL), +  id->func.offset, id->run_time_type);    }    else    {    emit1((and_pop?F_ASSIGN_GLOBAL_AND_POP:F_ASSIGN_GLOBAL), n);    }   }      static void emit_multi_assign(node *vals, node *vars, int no)   {    struct compilation *c = THIS_COMPILATION;