[fpc-devel] Typo in unistdh.inc
Geeken at telenet.be
Tue Feb 1 01:15:10 CET 2005
could someone please fix sysconf in unistdh.inc.
The library name is not correct
packages/base/libc/unistdh.inc:function sysconf (__name : longint) : longint; cdecl; external clib name 'syconf';
The compile error is typically :
In function `START_SESSION':
SYS_UTIL.pas:329: undefined reference to `syconf'
The rest is nice to have...........
It would be nice to add the the following type definion for more Kylix compatibility
type PUserContext = ^TUserContext;
grep -> ./packages/base/libc/sucontexth.inc: TUserContext = ucontext_t;
It would be nice to fix the definition of sigaction. If a libc function is defined
to take pointers as an argument, it only looks cleaner to define the parameter as a var,
but mostly it is better to define it with a pointer, this way it remains possible to pass nil as parameter.
If passing nil does not make sense, using var is ok. All this only to avoid too many IFDEFS in code that
is to be Kylix and FPC compatible.
So I prefer (Kylix extract)
function sigaction(SigNum: Integer; Action: PSigAction; OldAction: PSigAction): Integer;
./packages/base/libc/signalh.inc:function sigaction(__sig:longint; Const act: _sigaction; Var oldact: _sigaction):longint;cdecl;external clib name 'sigaction';
Here again Kylix has another definition and more logical (you cannot omit the rlimit)
It would be nice (Kylix compatibility) to have the Kylix type of definition.
function setrlimit(__resource:__rlimit_resource_t; __rlimits:Prlimit):longint;cdecl;external clib name 'setrlimit';
function setrlimit (__resource: __rlimit_resource_t; const __rlimits: TRLimit): Integer; cdecl;
5) I need many more ifdefs, but I notice sometimes that it is better in FPC, then I just add an IFDEF and shut up.
More information about the fpc-devel