diff --git a/racket/src/bc/src/startup.inc b/racket/src/bc/src/startup.inc index 048907fab9..db5c456c55 100644 --- a/racket/src/bc/src/startup.inc +++ b/racket/src/bc/src/startup.inc @@ -314,19 +314,62 @@ static const char *startup_source = " (let-values () (raise-argument-error 'normal-path-case \"(or/c path-for-some-system? path-string?)\" s_0)))" "(if(if(path-for-some-system? s_0)(eq?(path-convention-type s_0) 'windows)(eq?(system-type) 'windows))" "(let-values()" -"(let-values(((str_0)(if(string? s_0) s_0(bytes->string/locale(path->bytes s_0)))))" -" (if (regexp-match? '#rx\"^[\\\\][\\\\][?][\\\\]\" str_0)" -"(if(string? s_0)(string->path s_0) s_0)" -"(let-values(((s_1)(string-locale-downcase str_0)))" -"(bytes->path" -"(string->bytes/locale" -"(regexp-replace*" -" '#rx\"/\"" -" (if (regexp-match? '#rx\"[/\\\\][. ]+[/\\\\]*$\" s_1)" +"(let-values(((bstr_0)(if(string? s_0) #f(path->bytes s_0))))" +" (if (if (string? s_0) (regexp-match? '#rx\"^[\\\\][\\\\][?][\\\\]\" s_0) #f)" +"(let-values()(string->path s_0))" +" (if (if bstr_0 (regexp-match? '#rx#\"^[\\\\][\\\\][?][\\\\]\" bstr_0) #f)" +"(let-values() s_0)" +"(let-values()" +"(let-values(((norm_0)" +"(lambda(s_1)" +" (begin 'norm (string-locale-downcase (regexp-replace* '#rx\"/\" s_1 bsbs)))))" +"((norm-tail_0)" +"(lambda(s_1)" +"(begin" +" 'norm-tail" +" (if (regexp-match? '#rx\"[/\\\\][. ]+[/\\\\]*$\" s_1)" " s_1" -" (regexp-replace* '#rx\"[ .]+([/\\\\]*)$\" s_1 \"\\\\1\"))" -" bsbs))" -" 'windows)))))" +" (regexp-replace* '#rx\"(?<=[^ ./\\\\])[ .]+([/\\\\]*)$\" s_1 \"\\\\1\")))))" +"((finish_0)(lambda(bstr_1)(begin 'finish(bytes->path bstr_1 'windows)))))" +"(if(string? s_0)" +"(let-values()(finish_0(string->bytes/locale(norm_0(norm-tail_0 s_0)))))" +"(let-values()" +" (let-values (((c_0) (bytes-open-converter \"\" \"UTF-8\")))" +"(finish_0" +"((letrec-values(((loop_0)" +"(lambda(offset_0)" +"(begin" +" 'loop" +"(let-values(((new-bstr_0 used_0 status_0)" +"(bytes-convert" +" c_0" +" bstr_0" +" offset_0" +"(bytes-length bstr_0))))" +"(let-values(((s_1)(bytes->string/locale new-bstr_0)))" +"(let-values(((tail-s_0)" +"(if(eq? status_0 'complete)" +"(norm-tail_0 s_1)" +" s_1)))" +"(let-values(((done_0)" +"(string->bytes/locale(norm_0 tail-s_0))))" +"(if(eq? status_0 'complete)" +"(let-values() done_0)" +"(if(eq? status_0 'aborts)" +"(let-values()" +"(bytes-append" +" done_0" +"(subbytes bstr_0(+ offset_0 used_0))))" +"(let-values()" +"(bytes-append" +" done_0" +"(subbytes" +" bstr_0" +"(+ offset_0 used_0)" +"(+ offset_0 used_0 1))" +"(loop_0(+ offset_0 used_0 1))))))))))))))" +" loop_0)" +" 0)))))))))))" "(if(string? s_0)(let-values()(string->path s_0))(let-values() s_0)))))))" "(define-values" "(check-extension-call)" @@ -1919,17 +1962,17 @@ static const char *startup_source = " (let-values () (raise-argument-error 'in-hash-values \"hash?\" ht_0))))))" "(define-values" "(check-ranges)" -"(lambda(who_0 vec_0 start_0 stop_0 step_0 len_0)" +"(lambda(who_0 type-name_0 vec_0 start_0 stop_0 step_0 len_0)" "(begin" "(begin" "(if(if(exact-nonnegative-integer? start_0)" "(let-values(((or-part_0)(< start_0 len_0)))(if or-part_0 or-part_0(= len_0 start_0 stop_0)))" " #f)" "(void)" -" (let-values () (raise-range-error who_0 \"vector\" \"starting \" start_0 vec_0 0 (sub1 len_0))))" +" (let-values () (raise-range-error who_0 type-name_0 \"starting \" start_0 vec_0 0 (sub1 len_0))))" "(if(if(exact-integer? stop_0)(if(<= -1 stop_0)(<= stop_0 len_0) #f) #f)" "(void)" -" (let-values () (raise-range-error who_0 \"vector\" \"stopping \" stop_0 vec_0 -1 len_0)))" +" (let-values () (raise-range-error who_0 type-name_0 \"stopping \" stop_0 vec_0 -1 len_0)))" "(if(if(exact-integer? step_0)(not(zero? step_0)) #f)" "(void)" " (let-values () (raise-argument-error who_0 \"(and/c exact-integer? (not/c zero?))\" step_0)))" @@ -1965,7 +2008,18 @@ static const char *startup_source = "(if(vector?_0 vec_0)(void)(let-values()(raise-argument-error who_0 type-name_0 vec_0)))" "(let-values(((len_0)(unsafe-vector-length_0 vec_0)))" "(let-values(((stop*_0)(if stop_0 stop_0 len_0)))" -"(begin(check-ranges who_0 vec_0 start_0 stop*_0 step_0 len_0)(values vec_0 start_0 stop*_0 step_0))))))))" +"(begin" +"(check-ranges who_0 type-name_0 vec_0 start_0 stop*_0 step_0 len_0)" +"(values vec_0 start_0 stop*_0 step_0))))))))" +"(define-values" +"(unsafe-normalise-inputs)" +"(lambda(unsafe-vector-length_0 vec_0 start_0 stop_0 step_0)" +"(begin" +"(values" +" vec_0" +" start_0" +"(let-values(((or-part_0) stop_0))(if or-part_0 or-part_0(unsafe-vector-length_0 vec_0)))" +" step_0))))" "(define-values" "(check-vector)" " (lambda (v_0) (begin (if (vector? v_0) (void) (let-values () (raise-argument-error 'in-vector \"vector\" v_0))))))" @@ -5472,15 +5526,23 @@ static const char *startup_source = " key_0" "(reverse$1" "(let-values(((v*_0 start*_0 stop*_0 step*_0)" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(unsafe-normalise-inputs" +" unsafe-vector-length" +"(struct->vector s_1)" +" 1" +" #f" +" 1)" "(normalise-inputs" " 'in-vector" -" \"vector\"" +" \"vector\"" "(lambda(x_0)(vector? x_0))" "(lambda(x_0)(unsafe-vector-length x_0))" "(struct->vector s_1)" " 1" " #f" -" 1)))" +" 1))))" "(begin" " #t" "((letrec-values(((for-loop_0)" @@ -18863,9 +18925,18 @@ static const char *startup_source = " start*_0" " stop*_0" " step*_0)" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(unsafe-normalise-inputs" +" unsafe-vector-length" +"(struct->vector" +" v_1)" +" 1" +" #f" +" 1)" "(normalise-inputs" " 'in-vector" -" \"vector\"" +" \"vector\"" "(lambda(x_0)" "(vector?" " x_0))" @@ -18876,7 +18947,7 @@ static const char *startup_source = " v_1)" " 1" " #f" -" 1)))" +" 1))))" "(begin" " #t" "((letrec-values(((for-loop_0)" @@ -19510,9 +19581,17 @@ static const char *startup_source = " start*_0" " stop*_0" " step*_0)" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(unsafe-normalise-inputs" +" unsafe-vector-length" +" vec_0" +" 1" +" #f" +" 1)" "(normalise-inputs" " 'in-vector" -" \"vector\"" +" \"vector\"" "(lambda(x_0)" "(vector?" " x_0))" @@ -19522,7 +19601,7 @@ static const char *startup_source = " vec_0" " 1" " #f" -" 1)))" +" 1))))" "(begin" " #t" "((letrec-values(((for-loop_0)" @@ -21670,9 +21749,18 @@ static const char *startup_source = " start*_0" " stop*_0" " step*_0)" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(unsafe-normalise-inputs" +" unsafe-vector-length" +"(struct->vector" +" v_2)" +" 1" +" #f" +" 1)" "(normalise-inputs" " 'in-vector" -" \"vector\"" +" \"vector\"" "(lambda(x_0)" "(vector?" " x_0))" @@ -21683,7 +21771,7 @@ static const char *startup_source = " v_2)" " 1" " #f" -" 1)))" +" 1))))" "(begin" " #t" "((letrec-values(((for-loop_0)" @@ -21731,9 +21819,18 @@ static const char *startup_source = " start*_0" " stop*_0" " step*_0)" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(unsafe-normalise-inputs" +" unsafe-vector-length" +"(struct->vector" +" v_2)" +" 1" +" #f" +" 1)" "(normalise-inputs" " 'in-vector" -" \"vector\"" +" \"vector\"" "(lambda(x_0)" "(vector?" " x_0))" @@ -21744,7 +21841,7 @@ static const char *startup_source = " v_2)" " 1" " #f" -" 1)))" +" 1))))" "(begin" " #t" "((letrec-values(((for-loop_0)" @@ -22445,9 +22542,17 @@ static const char *startup_source = " start*_0" " stop*_0" " step*_0)" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(unsafe-normalise-inputs" +" unsafe-vector-length" +" vec_0" +" 1" +" #f" +" 1)" "(normalise-inputs" " 'in-vector" -" \"vector\"" +" \"vector\"" "(lambda(x_0)" "(vector?" " x_0))" @@ -22457,7 +22562,7 @@ static const char *startup_source = " vec_0" " 1" " #f" -" 1)))" +" 1))))" "(begin" " #t" "((letrec-values(((for-loop_0)" @@ -24110,15 +24215,24 @@ static const char *startup_source = "(let-values()" "(begin" "(let-values(((v*_0 start*_0 stop*_0 step*_0)" -"(normalise-inputs" -" 'in-vector" -" \"vector\"" -"(lambda(x_0)(vector? x_0))" -"(lambda(x_0)(unsafe-vector-length x_0))" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(unsafe-normalise-inputs" +" unsafe-vector-length" "(struct->vector v_1)" " 1" " #f" -" 1)))" +" 1)" +"(normalise-inputs" +" 'in-vector" +" \"vector\"" +"(lambda(x_0)(vector? x_0))" +"(lambda(x_0)" +"(unsafe-vector-length x_0))" +"(struct->vector v_1)" +" 1" +" #f" +" 1))))" "(begin" " #t" "((letrec-values(((for-loop_0)" @@ -30792,8 +30906,8 @@ static const char *startup_source = "(list* 'vector-cas! syntax-literals-id '(pos #f stx))" "(list*" " 'let-values" -"(list(list '(stx)(list* 'unsafe-vector*-ref syntax-literals-id '(pos))))" -" '((if stx stx(loop))))))))" +"(list(list '(new-stx)(list* 'unsafe-vector*-ref syntax-literals-id '(pos))))" +" '((if new-stx new-stx(loop))))))))" " '((loop))))))))))))))))))))" "(define-values" "(generate-lazy-syntax-literals-data!)"