• Karl Heuer's avatar
    (concat): Move the test for all nil in `append' · 09ab3c3b
    Karl Heuer authored
    back to the right place.
    Always compute result_len_byte as for a multibyte string.  Then,
    if the result will be single-byte, don't use that computation.
    When converting single-byte to multibyte, don't use copy_text.
    Do use copy_text between single-byte string and multibyte string.
    
    (Fstring_make_multibyte, Fstring_make_unibyte): New functions.
    (syms_of_fns): defsubr them.
    
    (string_char_to_byte): Count from the beginning or the end,
    whichever is closer.  Keep a cache of recent values.
    (string_byte_to_char): Likewise.
    
    (Fstring_lessp): Compare the strings char by char.
    09ab3c3b
fns.c 65.9 KB