pike.git / src / docode.c

version» Context lines:

pike.git/src/docode.c:417:    default:    switch(CDR(n)->token)    {    case F_LOCAL:    if(do_docode(CAR(n),0)!=1) yyerror("RHS is void!");    emit(flags & DO_POP ? F_ASSIGN_LOCAL_AND_POP:F_ASSIGN_LOCAL,    CDR(n)->u.number );    break;       case F_IDENTIFIER: -  if(ID_FROM_INT(& fake_program, CDR(n)->u.number)->flags & IDENTIFIER_FUNCTION) +  if(!IDENTIFIER_IS_VARIABLE( ID_FROM_INT(& fake_program, CDR(n)->u.number)->flags))    { -  yyerror("Cannot assign functions.\n"); +  yyerror("Cannot assign functions or constants.\n");    }else{    if(do_docode(CAR(n),0)!=1) yyerror("RHS is void!");    emit(flags & DO_POP ? F_ASSIGN_GLOBAL_AND_POP:F_ASSIGN_GLOBAL,    CDR(n)->u.number);    }    break;       default:    tmp1=do_docode(CDR(n),DO_LVALUE);    if(do_docode(CAR(n),0)!=1) yyerror("RHS is void!");
pike.git/src/docode.c:670:       emit2(F_MARK);    do_docode(CDR(n),0);    tmp1=store_constant(& CAR(n)->u.sval,    !(CAR(n)->tree_info & OPT_EXTERNAL_DEPEND));    emit(F_APPLY,tmp1);       return 1;    }    else if(CAR(n)->token == F_IDENTIFIER && -  ID_FROM_INT(& fake_program, CAR(n)->u.number)->flags & IDENTIFIER_FUNCTION) +  IDENTIFIER_IS_FUNCTION(ID_FROM_INT(& fake_program, CAR(n)->u.number)->flags))    {    emit2(F_MARK);    do_docode(CDR(n),0);    emit(F_CALL_LFUN, CAR(n)->u.number);    return 1;    }    else    {    struct pike_string *tmp;    struct efun *fun;
pike.git/src/docode.c:985:    if(flags & DO_LVALUE)    {    emit(F_LOCAL_LVALUE,n->u.number);    return 2;    }else{    emit(F_LOCAL,n->u.number);    return 1;    }       case F_IDENTIFIER: -  if(ID_FROM_INT(& fake_program, n->u.number)->flags & IDENTIFIER_FUNCTION) +  if(IDENTIFIER_IS_FUNCTION(ID_FROM_INT(& fake_program, n->u.number)->flags))    {    if(flags & DO_LVALUE)    {    yyerror("Cannot assign functions.\n");    }else{    emit(F_LFUN,n->u.number);    }    }else{    if(flags & DO_LVALUE)    {