I can confirm this. This is really strange, but the workaround seems to be involving an auxiliary string variable:
var
S: String;
...
S := 'Атрибут ';
S := S + tempxml.ChildNodes.Item[1].NodeName;
ShowMessage(S);
However, if you put in one line S := 'Атрибут ' + tempxml.ChildNodes.Item[1].NodeName;, it does not work! Strange.