import strutils
proc test =
var s: string
s = "test" & "Nim"
s[0] = toUpperAscii(s[0])
echo s
I wonder if the buffer for this short string is really allocated on the heap. Because, I think it don't has to, it should be possible for the initial small buffer to live on the stack.