diff --git a/src/racket/src/syntax.c b/src/racket/src/syntax.c index c1926201b2..a61ee0e0e2 100644 --- a/src/racket/src/syntax.c +++ b/src/racket/src/syntax.c @@ -365,7 +365,7 @@ XFORM_NONGCING static MZ_INLINE void DO_WRAP_POS_INC(Wrap_Pos *w) #define WRAP_POS_INIT_END(w) (w.l = scheme_null, w.a = NULL, w.is_limb = 0, w.pos = 0) #define WRAP_POS_END_P(w) SCHEME_NULLP(w.l) #define WRAP_POS_FIRST(w) w.a -#define WRAP_POS_COPY(w, w2) w.l = (w2).l; w.a = (w2).a; w.is_limb= (w2).is_limb; w.pos = (w2).pos +#define WRAP_POS_COPY(w, w2) w.l = (w2).l; w.a = (w2).a; w.is_limb = (w2).is_limb; w.pos = (w2).pos /* Walking backwards through one chunk: */ @@ -3618,8 +3618,9 @@ static Scheme_Object *resolve_env(WRAP_POS *_wraps, if (_wraps) { WRAP_POS_COPY(wraps, *_wraps); WRAP_POS_INC(wraps); - } else + } else { WRAP_POS_INIT(wraps, ((Scheme_Stx *)a)->wraps); + } while (1) { if (WRAP_POS_END_P(wraps)) {