Branch: Tag:

1996-11-08

1996-11-08 04:57:40 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

object(foo), prog(), 'constant' and class foo {} implemented

Rev: src/ChangeLog:1.18
Rev: src/builtin_functions.c:1.9
Rev: src/builtin_functions.h:1.2
Rev: src/docode.c:1.3
Rev: src/interpret.c:1.8
Rev: src/language.yacc:1.6
Rev: src/lex.c:1.6
Rev: src/object.c:1.3
Rev: src/object.h:1.3
Rev: src/pike_types.c:1.5
Rev: src/program.c:1.4
Rev: src/program.h:1.2
Rev: src/testsuite.in:1.6

424:    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,
677:    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);
992:    }       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)    {