- if ((stack_pointer > control_stack) &&
- (stack_pointer < control_stack_end)) {
- unsigned int length = ((int)control_stack_end -
- (int)stack_pointer) / 4;
+ if ((stack_pointer > (lispobj *)CONTROL_STACK_START) &&
+ (stack_pointer < (lispobj *)CONTROL_STACK_END)) {
+ /* FIXME: Ick!
+ * (1) hardwired word length = 4; and as usual,
+ * when fixing this, check for other places
+ * with the same problem
+ * (2) calling it 'length' suggests bytes;
+ * perhaps 'size' instead? */
+ unsigned int length = ((unsigned)CONTROL_STACK_END -
+ (unsigned)stack_pointer) / 4;