special-case the substring list processing in JoinedStrNode again to reduce the number of temp vars used