> > allowing to reuse the OS independant code. > > > > However this doesn't work fully this way, since unicode internally also hits > > OS-independant code hard. IOW the separate target only solves the windows > > unit defaults. > > Indeed. What is proposed is that the system independent RTL uses an > abstract string type (Tnativestring) which is widestring or ansistring > depending on target.
That only solves the typing. Not the duplication of all string code in the RTL. (accessing strings with [] e.g.), unless you choose a fixed width character encoding and semantics that are 100% ansistring compatible. > What should be done on Linux/FreeBSD/MacOS is still unknown to me, it is a > wild west, but likely something similar, internally a widestring rtl is > used that converts to the right encoding when communicating externally. Problem is that this is a costly system that decreases string performance significantly. Moreover I don't like solutions that don't tackle all platforms at once, since that means the other platforms might be pushed into an unsuitable model when they start implementing. _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel