diff --git a/runtime.c b/runtime.c index 537851b8..a325d0eb 100644 --- a/runtime.c +++ b/runtime.c @@ -2034,20 +2034,13 @@ void _integer_91_125char(void *data, object cont, object args) { return_closcall1(data, cont, Cyc_integer2char(data, car(args)));} void _string_91_125number(void *data, object cont, object args) { Cyc_check_num_args(data, "string->number", 1, args); - { object tail = cdr(args); - if (tail) { - common_type i = Cyc_string2number2(data, 2, car(args), cadr(args)); - return_closcall1(data, cont, &i); - } else { - common_type i = Cyc_string2number(data, car(args)); - return_closcall1(data, cont, &i);}}} -void _string_91_125number2(void *data, object cont, object args) { - Cyc_check_num_args(data, "string->number2", 1, args); { object tail = cdr(args); if (tail) { Cyc_string2number2_(data, cont, 2, car(args), cadr(args)); } else { Cyc_string2number_(data, cont, car(args)); }}} +void _string_91_125number2(void *data, object cont, object args) { + _string_91_125number(data, cont, args); } void _string_91length(void *data, object cont, object args) { Cyc_check_num_args(data, "string-length", 1, args); { integer_type i = Cyc_string_length(data, car(args)); diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 7a8ea8e5..c0218c4e 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -520,7 +520,7 @@ ((eq? p 'cddddr) "cddddr") ((eq? p 'char->integer) "Cyc_char2integer") ((eq? p 'integer->char) "Cyc_integer2char") - ((eq? p 'string->number)"Cyc_string2number2") + ((eq? p 'string->number)"Cyc_string2number2_") ((eq? p 'string->number2)"Cyc_string2number2_") ((eq? p 'list->string) "Cyc_list2string") ((eq? p 'make-vector) "Cyc_make_vector") @@ -651,7 +651,7 @@ ((eq? p '-) "common_type") ((eq? p '*) "common_type") ((eq? p '/) "common_type") - ((eq? p 'string->number) "common_type") + ((eq? p 'string->number) "object") ((eq? p 'string->number2) "object") ((eq? p 'string-cmp) "integer_type") ((eq? p 'string-append) "object") @@ -699,7 +699,7 @@ (and (prim? exp) (member exp '(Cyc-read-line apply command-line-arguments number->string read-char peek-char - symbol->string list->string substring string-append string->number2 + symbol->string list->string substring string-append string->number string->number2 make-vector list->vector Cyc-installation-dir)))) ;; Primitive functions that pass a continuation or thread data but have no other arguments