Branch: Tag:

2003-01-05

2003-01-05 21:49:38 by Henrik Grubbström (Grubba) <grubba@grubba.org>

More ISO 6.3.4 fixes.

Rev: src/interpret_functions.h:1.121

2:   || This file is part of Pike. For copyright information see COPYRIGHT.   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information. - || $Id: interpret_functions.h,v 1.120 2002/11/14 20:19:06 marcus Exp $ + || $Id: interpret_functions.h,v 1.121 2003/01/05 21:49:38 grubba Exp $   */      /*
999:    if (d_flag) {    if (Pike_mark_sp <= Pike_interpreter.mark_stack) {    Pike_fatal("Mark stack out of synch - 0x%08lx <= 0x%08lx.\n", -  DO_NOT_WARN((unsigned long)Pike_mark_sp), -  DO_NOT_WARN((unsigned long)Pike_interpreter.mark_stack)); +  DO_NOT_WARN((unsigned long) +  (((char *)Pike_mark_sp)- +  (char *)0)), +  DO_NOT_WARN((unsigned long) +  (((char *)Pike_interpreter.mark_stack)- +  (char *)0)));    } else if (*--Pike_mark_sp != Pike_sp) {    ptrdiff_t should = *Pike_mark_sp - Pike_interpreter.evaluator_stack;    ptrdiff_t is = Pike_sp - Pike_interpreter.evaluator_stack;
1756:   #define MKAPPLY(OP,OPCODE,NAME,TYPE, ARG2, ARG3) \   OP(PIKE_CONCAT(F_,OPCODE),NAME, I_PC_AT_NEXT, { \   Pike_fp->pc=PROG_COUNTER; \ - if(low_mega_apply(TYPE,DO_NOT_WARN((INT32)(Pike_sp - *--Pike_mark_sp)), \ + if(low_mega_apply(TYPE,0,DO_NOT_WARN((INT32)(Pike_sp - *--Pike_mark_sp)), \    ARG2, ARG3)) \   { \    Pike_fp->flags |= PIKE_FRAME_RETURN_INTERNAL; \
1766:    \   OP(PIKE_CONCAT3(F_,OPCODE,_AND_POP),NAME " & pop", I_PC_AT_NEXT, { \    Pike_fp->pc=PROG_COUNTER; \ -  if(low_mega_apply(TYPE, DO_NOT_WARN((INT32)(Pike_sp - *--Pike_mark_sp)), \ +  if(low_mega_apply(TYPE, 0, DO_NOT_WARN((INT32)(Pike_sp - *--Pike_mark_sp)), \    ARG2, ARG3)) \    { \    Pike_fp->flags |= PIKE_FRAME_RETURN_INTERNAL | PIKE_FRAME_RETURN_POP; \
1778:    \   PIKE_CONCAT(OP,_RETURN)(PIKE_CONCAT3(F_,OPCODE,_AND_RETURN), \    NAME " & return", 0, { \ -  if(low_mega_apply(TYPE,DO_NOT_WARN((INT32)(Pike_sp - *--Pike_mark_sp)), \ +  if(low_mega_apply(TYPE,0, DO_NOT_WARN((INT32)(Pike_sp - *--Pike_mark_sp)), \    ARG2,ARG3)) \    { \    PIKE_OPCODE_T *addr = Pike_fp->pc; \
1797:    \   OP(PIKE_CONCAT(F_MARK_,OPCODE),"mark, " NAME, I_PC_AT_NEXT, { \    Pike_fp->pc=PROG_COUNTER; \ -  if(low_mega_apply(TYPE,0, \ +  if(low_mega_apply(TYPE,0, 0, \    ARG2, ARG3)) \    { \    Pike_fp->flags |= PIKE_FRAME_RETURN_INTERNAL; \
1807:    \   OP(PIKE_CONCAT3(F_MARK_,OPCODE,_AND_POP),"mark, " NAME " & pop", I_PC_AT_NEXT, { \    Pike_fp->pc=PROG_COUNTER; \ -  if(low_mega_apply(TYPE, 0, \ +  if(low_mega_apply(TYPE, 0, 0, \    ARG2, ARG3)) \    { \    Pike_fp->flags |= PIKE_FRAME_RETURN_INTERNAL | PIKE_FRAME_RETURN_POP; \
1819:    \   PIKE_CONCAT(OP,_RETURN)(PIKE_CONCAT3(F_MARK_,OPCODE,_AND_RETURN), \    "mark, " NAME " & return", 0, { \ -  if(low_mega_apply(TYPE,0, \ +  if(low_mega_apply(TYPE,0, 0, \    ARG2,ARG3)) \    { \    PIKE_OPCODE_T *addr = Pike_fp->pc; \
1858:    p);    if(fun >= 0)    { -  if(low_mega_apply(APPLY_LOW, args-1, o, (void *)(ptrdiff_t)fun)) +  if(low_mega_apply(APPLY_LOW, 0, args-1, o, (void *)(ptrdiff_t)fun))    {    Pike_fp->save_sp--;    Pike_fp->flags |= PIKE_FRAME_RETURN_INTERNAL;
1884:    *s=tmp2;    print_return_value();    -  if(low_mega_apply(APPLY_STACK, args, 0, 0)) +  if(low_mega_apply(APPLY_STACK, 0, args, 0, 0))    {    Pike_fp->flags |= PIKE_FRAME_RETURN_INTERNAL;    DO_JUMP_TO(Pike_fp->pc);
1910:    p);    if(fun >= 0)    { -  if(low_mega_apply(APPLY_LOW, args-1, o, (void *)(ptrdiff_t)fun)) +  if(low_mega_apply(APPLY_LOW, 0, args-1, o, (void *)(ptrdiff_t)fun))    {    Pike_fp->save_sp--;    Pike_fp->flags |=
1938:    *s=tmp2;    print_return_value();    -  if(low_mega_apply(APPLY_STACK, args, 0, 0)) +  if(low_mega_apply(APPLY_STACK, 0, args, 0, 0))    {    Pike_fp->flags |= PIKE_FRAME_RETURN_INTERNAL | PIKE_FRAME_RETURN_POP;    DO_JUMP_TO(Pike_fp->pc);
1963:    p);    if(fun >= 0)    { -  if(low_mega_apply(APPLY_LOW, args-1, o, (void *)(ptrdiff_t)fun)) +  if(low_mega_apply(APPLY_LOW, 0, args-1, o, (void *)(ptrdiff_t)fun))    {    PIKE_OPCODE_T *addr = Pike_fp->pc;    Pike_fp->save_sp--;
1991:    *s=tmp2;    print_return_value();    -  if(low_mega_apply(APPLY_STACK, args, 0, 0)) +  if(low_mega_apply(APPLY_STACK, 0, args, 0, 0))    {    PIKE_OPCODE_T *addr = Pike_fp->pc;    DO_IF_DEBUG(Pike_fp->next->pc=0);
2155:    ptrdiff_t num_locals = READ_INCR_BYTE(faddr); /* ignored */    ptrdiff_t args = READ_INCR_BYTE(faddr);    -  if(low_mega_apply(APPLY_LOW, +  if(low_mega_apply(APPLY_LOW, 0,    args,    Pike_fp->current_object,    (void *)(ptrdiff_t)(arg1+