Последний фрагмент, безусловно, терпит неудачу (не сбой, а неправильная строка) с национальными символами. Для них простое расширение до 16 бит не является правильным преобразованием в Unicode. Поэтому необходим параметр encoding.
Также обратите внимание, что два вышеописанных фрагмента производят строку с различными требованиями к перераспределению. Последний создает строку с автореализацией, первая - строку, для которой требуется вызов [release].