rem: a = resolve_env(a, phase, 1, NULL, NULL); b = resolve_env(b, phase, 1, NULL, NULL);
add: a = resolve_env(a, phase, 1, NULL, scheme_null); b = resolve_env(b, phase, 1, NULL, scheme_null);
context: int scheme_stx_free_eq(Scheme_Object *a, Scheme_Object *b, long phase){  Scheme_Object *asym, *bsym;  if (!a || !b)    return (a == b);  if (SCHEME_STXP(a))    asym = SCHEME_STX_VAL(a);  else    asym = a;  if (SCHEME_STXP(b))    bsym = SCHEME_STX_VAL(b);  else    bsym = b;  /* Same name? */  if (!SAME_OBJ(asym, bsym))    return 0;  if ((a == asym) || (b == bsym))    return 1;    a = resolve_env(a, phase, 1, NULL, NULL);  b = resolve_env(b, phase, 1, NULL, NULL);  a = scheme_module_resolve(a);  b = scheme_module_resolve(b);  /* Same binding environment? */  return SAME_OBJ(a, b);}