[fpc-devel] Unicodestring branch, please test and help fixing
Martin Schreiber
fpmse at bluewin.ch
Fri Sep 5 22:29:02 CEST 2008
Florian,
On Saturday 30 August 2008 13.37:42 Florian Klaempfl wrote:
> I've continued to work on support of an unicodestring type in fpc. It's
> currently in an svn branch at:
> http://svn.freepascal.org/svn/fpc/branches/unicodestring
> and will be merged later to trunk. The unicodestring type is a ref.
> counted utf-16 string. On non-windows, widestring is mapped to this
> type. If you're interested in unicode support please test, give feedback
> here and submit fixes.
>
I tried the unicode branch on Windows, rev. 11711 does not compile:
make[7]: Entering directory `E:/FPC/svn/trunk/rtl/win32'
E:/FPC/svn/trunk/compiler/ppc1.exe -Ur -Xs -O2 -n -Fi../inc -Fi../i386 -Fi../win
-FE. -FUE:/FPC/svn/trunk/rtl/units/i386-win32 -di386 -dRELEASE -Us -Sg
system.pp -Fi../win
wstrings.inc(1655,60) Error: Identifier not found "CharLengthPChar"
ustrings.inc(2147,42) Error: Incompatible types: got "<address of
procedure(PCha
r,var UnicodeString, LongInt);Register>" expected "<procedure variable type of
procedure(PChar,var WideString, LongInt);Register>"
ustrings.inc(2148,44) Error: Incompatible types: got "<address of
function(const
UnicodeString):UnicodeString;Register>" expected "<procedure variable type of
function(const WideString):WideString;Register>"
ustrings.inc(2149,44) Error: Incompatible types: got "<address of
function(const
UnicodeString):UnicodeString;Register>" expected "<procedure variable type of
function(const WideString):WideString;Register>"
ustrings.inc(2151,46) Error: Incompatible types: got "<address of
function(const
UnicodeString,const UnicodeString):LongInt;Register>" expected "<procedure
variable type of function(const WideString,const
WideString):LongInt;Register>"
ustrings.inc(2152,50) Error: Incompatible types: got "<address of
function(const
UnicodeString,const UnicodeString):LongInt;Register>" expected "<procedure
variable type of function(const WideString,const
WideString):LongInt;Register>"
system.pp(1253) Fatal: There were 6 errors compiling module, stopping
Fatal: Compilation aborted
make[7]: *** [system.ppu] Fehler 1
make[7]: Leaving directory `E:/FPC/svn/trunk/rtl/win32'
make[6]: *** [win32_all] Fehler 2
make[6]: Leaving directory `E:/FPC/svn/trunk/rtl'
make[5]: *** [rtl] Fehler 2
make[5]: Leaving directory `E:/FPC/svn/trunk/compiler'
make[4]: *** [next] Fehler 2
make[4]: Leaving directory `E:/FPC/svn/trunk/compiler'
make[3]: *** [ppc2.exe] Fehler 2
make[3]: Leaving directory `E:/FPC/svn/trunk/compiler'
make[2]: *** [cycle] Fehler 2
make[2]: Leaving directory `E:/FPC/svn/trunk/compiler'
make[1]: *** [compiler_cycle] Fehler 2
make[1]: Leaving directory `E:/FPC/svn/trunk'
make: *** [build-stamp.i386-win32] Fehler 2
Compiling MSEide with rev. 11667 I get:
Free Pascal Compiler version 2.3.1 [2008/09/05] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Win32 for i386
Compiling mseide.pas
[...]
msestream.pas(762,2) Warning: Class types "tmsefilestream"
and "THandleStreamcracker" are not related
msestream.pas(785,33) Warning: Class types "tmsefilestream"
and "THandleStreamcracker" are not related
msestream.pas(810,34) Warning: Class types "tmsefilestream"
and "THandleStreamcracker" are not related
msesysintf.pas(1552,21) Fatal: Unknown
compilerproc "fpc_widechararray_to_unicodestr". Check if you use the correct
run time library.
Fatal: Compilation aborted
If you want to try it yourself, MSEide+MSEgui trunk rev. 2473 has msestring =
unicodestring if compiled with -dmse_unicodestring.
I found no UnicodeString support in typeinfo and variants?
What are the plans for Unicode resourcestrigs? TField should probably have an
asUnicodeString property too.
Thank you very much for your work.
Martin
More information about the fpc-devel
mailing list