[fpc-devel] Widestrings in win32
daniel.mantione at freepascal.org
Sat Jun 16 10:10:33 CEST 2007
Op Sat, 16 Jun 2007, schreef Martin Schreiber:
> On Saturday 16 June 2007 08.57, Daniël Mantione wrote:
> > Op Sat, 16 Jun 2007, schreef Martin Schreiber:
> > > Hi,
> > > It seems that CG plans to implement an non BSTR widestring type for
> > > win32:
> > > http://groups.google.ch/group/borland.public.delphi.non-technical/msg/7ca
> > >eced42f1934a4?hl=en&
> > >
> > > The introduced string handling for the "Unicode VCL" is equivalent to the
> > > string handling in MSEgui BTW.
> > Noted. As COM incompatibilty seems preferable over not working
> > widestrings, shall I disable the winlikewidestring in 2.1.5?
> I would appreciate very much. If you can do so, I could restart the testing
> and debugging of FPC 2.2.
I made the change, could you please test for any problems, as we are
really close to 2.2.0.
> > Can someone reply Allan Bauer about using ptrint, and better, ptruint
> > (explain pitfalls). It seems I have been banned from that newsgroup
> > yesterday, without any apparent reason :(
> Please post on this list what you want to write to him, I'll try to feed
Something like this?
"Note that casting pointers to signed values is often a bad idea, since
the virtual address space on a 32-bit system is often 3 gigabytes, i.e.
pointers can have values between $80000000..$c0000000. A signed type
causes trouble in pointer value comparisons (like if p>q then).
In Free Pascal there already exist two types ptrint and ptruint (signed
and unsigned) for this purpose, you might want to recycle them especially
as many people are currently using constructions like:
... in order to be able to get their code to work on Win64 using FPC; this
will make it easier for people to switch back to Delphi for 64-bit
development when it is ultimately released."
More information about the fpc-devel