diff --git a/src/interpret.h b/src/interpret.h index 1650e6548e749fdec01bf0642ffe2dfd8c0df074..bc46b3061b73e41cf5073e235eaca958c31e7a27 100644 --- a/src/interpret.h +++ b/src/interpret.h @@ -5,7 +5,7 @@ \*/ /* - * $Id: interpret.h,v 1.55 2000/08/03 12:36:30 grubba Exp $ + * $Id: interpret.h,v 1.56 2000/08/03 12:46:29 grubba Exp $ */ #ifndef INTERPRET_H #define INTERPRET_H @@ -94,10 +94,16 @@ struct pike_frame #define pop_stack() do{ free_svalue(--Pike_sp); debug_check_stack(); }while(0) +#ifdef __ECL +#define MAYBE_CAST_TO_LONG(X) (X) +#else /* !__ECL */ +#define MAYBE_CAST_TO_LONG(X) ((long)(X)) +#endif /* __ECL */ + #define pop_n_elems(X) \ do { ptrdiff_t x_=(X); if(x_) { \ check__positive(x_, ("Popping negative number of args.... (%ld) \n", \ - (long)x_)); \ + MAYBE_CAST_TO_LONG(x_))); \ Pike_sp -= x_; debug_check_stack(); \ free_svalues(Pike_sp, x_, BIT_MIXED); \ } } while (0)