rem: (loc->col >= 0) ? scheme_make_integer(loc->col) : scheme_false,
add: (loc->col >= 0) ? scheme_make_integer(loc->col-1) : scheme_false,
context: static Scheme_Object *extract_syntax_locations(int argc, Scheme_Object **argv){  if (scheme_is_struct_instance(exn_table[MZEXN_FAIL_SYNTAX].type, argv[0])) {    Scheme_Object *stxs, *stx, *first = scheme_null, *last = NULL, *loco, *p;    Scheme_Stx_Srcloc *loc;    stxs = scheme_struct_ref(argv[0], 2);    while (SCHEME_PAIRP(stxs)) {      stx = SCHEME_CAR(stxs);      loc = ((Scheme_Stx *)stx)->srcloc;      loco = scheme_make_location(loc->src ? loc->src : scheme_false,				  (loc->line >= 0) ? scheme_make_integer(loc->line) : scheme_false,				  (loc->col >= 0) ? scheme_make_integer(loc->col) : scheme_false,				  (loc->pos >= 0) ? scheme_make_integer(loc->pos) : scheme_false,				  (loc->span >= 0) ? scheme_make_integer(loc->span) : scheme_false);      p = scheme_make_pair(loco, scheme_null);      if (last)	SCHEME_CDR(last) = p;      else	first = p;      last = p;      stxs = SCHEME_CDR(stxs);    }    return first;  }  scheme_wrong_type("exn:fail:syntax-locations-accessor", "exn:fail:syntax", 0, argc, argv);  return NULL;}