Es wäre so einfach gewesen einfach einen WChar ein zu führen. und Char mit einem Byte zu lassen.
Nur weil viele eben den Programmierfehler gemacht haben Metatypen statt der konkreten Typen zu benutzen, hätte man jetzt alle anderen durch eine schlechtere Umsetzung leiden lassen sollen? Das halte ich für keine gute Lösung.
Wer konsequent LongInt, AnsiString, AnsiChar usw. benutzt hat wo es wichtig ist was genau für ein Typ dahinter steckt, der hat auch relativ wenige Probleme hinsichtlich einer Umstellung auf
Unicode oder 64-Bit.
Wir haben unsere Anwendung auch innerhalb sehr kurzer Zeit von Delphi 5 auf XE umgestellt und mussten danach hauptsächlich an Hardwareschnittstellen oder direkten Speicherzugriffen nachbessern. Das waren aber zu einem großen Teil Programmierfehler, weil ein falscher Datentyp verwendet wurde. In zugekauften Komponenten genauso wie in eigenen Codes.