On 23 July 2010 15:49, Marco van de Voort mar...@stack.nl wrote:
And it still makes no sense. First, that was only about unit names, second
it required aliasing everywhere it was used, which was more than the work
required to rename.
Marco, the Generics unit name doesn't clash, but the actual
2010/7/23 Adem listmem...@letterboxes.org:
What I am aiming is to, first, get the information in each 'fpmake.pp' file
into one single 'Installer' object.
This is easy to do with a few IFDEF lines...
{$IFDEF APROGRAM}
program fpmake;
uses fpmkunit;
Var
P: TPackage;
T: TTarget;
In our previous episode, Graeme Geldenhuys said:
// create a generic instance
lst1 := fgl.TFPGList.Create();
// now create a fpGUI list instance
lst2 := fpg_list.TfpgList.Create();
Problem is that if the unit names clashed, there is now way around the
problem? Or is there?
24.07.2010 6:55, Hans-Peter Diettrich:
IMO the segment register is used implicitly in thread API calls, with
no further use by application code.
Exactly the opposite (at least delphi on windows). See delphi's RTL.
In the Using Thread Local Storage entry in the MSDN library this
value is the
I am using the latest TortoiseSVN to get a full local copy of FPC, but
--even thought I tried several times, with 'cleanup's-- I keep getting
this error:
GET of '/svn/fpc/!svn/bc/9386/trunk/rtl/inc/wustrings.inc': Checksum
invalid for compressed stream (http://svn.freepascal.org)
and, it
On 2010-07-24 1:28 PM, Graeme Geldenhuys wrote:
This is easy to do with a few IFDEF lines...
{$IFDEF APROGRAM}
{...}
{$ENDIF}
{$IFDEF APROGRAM}
{...}
{$ENDIF}
Now if APROGRAM is defined, they act as self-contained programs. If
not, they act as include files and can be combined.
There
Am 24.07.2010 13:42, schrieb Nikolai Zhubr:
use them to implement this special management so as exceptions and
threadvars can be actually used without explicitely using OS APIs.
Delphi does not use a segment register for threadvar handling but OS calls.
24.07.2010 17:16, Florian Klämpfl:
Am 24.07.2010 13:42, schrieb Nikolai Zhubr:
use them to implement this special management so as exceptions and
threadvars can be actually used without explicitely using OS APIs.
Delphi does not use a segment register for threadvar handling but OS calls.
Nikolai Zhubr schrieb:
IMO the segment register is used implicitly in thread API calls, with
no further use by application code.
Exactly the opposite (at least delphi on windows). See delphi's RTL.
Well, once it's set by the OS, it can be used in hackery ;-)
In such case of course fs/gs
Nikolai Zhubr schrieb:
where GetTls in case of an ordinary application (not dll) is just this:
MOV EAX,TlsIndex
MOV EDX,FS:tlsArray
MOV EAX,[EDX+EAX*4]
I wonder what TlsIndex here is?
Also FS:tlsArray seems to contain an address in the general address
24.07.2010 19:12, Hans-Peter Diettrich пишет:
[...]
I doubt that this address range really is excluded from the 4GB app
address space, accessible through the other segment registers.
IMHO the question is not how to avoid using FS trick altogether (which
is of course possible, right), but on
24.07.2010 19:46, Hans-Peter Diettrich:
MOV EAX,TlsIndex
MOV EDX,FS:tlsArray
MOV EAX,[EDX+EAX*4]
I wonder what TlsIndex here is?
tlsArray = $2C;
IIRC for an application (not a dll) TlsIndex is always 0
(But I might be wrong here though)
Also FS:tlsArray seems to contain an address in the
12 matches
Mail list logo