Michaël Van Canneyt
4c529287c6
* string -> shortstring
2023-07-22 08:26:22 +00:00
Michael VAN CANNEYT
d88a7c2e24
* Char -> AnsiChar
2023-07-14 17:26:10 +02:00
ondrej
1a0ba60de6
* revert r47598: implement TRandomGenerator
...
git-svn-id: trunk@47605 -
2020-11-27 04:53:06 +00:00
ondrej
c4dd3b661a
* rtl: implement TRandomGenerator for thread-safe random
...
git-svn-id: trunk@47598 -
2020-11-26 05:59:00 +00:00
florian
7281ea7a2c
* floating point division by zero should throw run time error 208, fixed
...
git-svn-id: trunk@46210 -
2020-08-03 19:42:16 +00:00
Tomas Hajny
5153cceba3
* provide access to information about the failing file when dynamic loading fails
...
git-svn-id: trunk@34504 -
2016-09-10 21:30:35 +00:00
Tomas Hajny
db7a9950d1
* unit name changed to System (starting with uppercase 'S') for improved compatibility to Delphi - see test tobject5.pp
...
git-svn-id: trunk@30025 -
2015-02-27 19:00:50 +00:00
Tomas Hajny
b64c4d9acd
* fixed handling of FPU exceptions, extended output with -dSYSTEMEXCEPTIONDEBUG, added possibility of debug tracking of OS/2 API error codes in RTL
...
git-svn-id: trunk@30019 -
2015-02-26 21:50:01 +00:00
Tomas Hajny
dbc50980d1
* fixed OS/2 compilation after dynlibs manager implementation
...
git-svn-id: trunk@29617 -
2015-02-03 23:56:12 +00:00
svenbarth
2d454dc8fa
Move DynLibs support to System unit using a manager approach like for Threads, WideStrings, etc.. This is needed so that we can support features like "delayed" and loading of dynamic packages.
...
Each port that allows the usage of dynamic libraries should call InitSystemDynLibs during initialization of the System unit.
The DynLibs unit has been adjusted to be a forwarder for the functions that now reside in the System unit (for backwards compatiblity just in case). Additionally the unit will register the DynLibsManager if it doesn't reside in the System unit anyway.
Currently only the Windows targets (Win32, Win64 and WinCE) implement the DynLibsManager inside the System unit. For other systems using the LoadLibrary, etc. functions will lead to a run error/exception.
If a port wants to implement its own DynLibsManager then it needs to define DISABLE_NO_DYNLIBS_MANAGER. TLibHandle, NilHandle and optionally TOrdinalEntry (it's set to SizeUInt otherwise) should be defined in sysdlh.inc which needs to be enabled using the define FPC_SYSTEM_HAS_SYSDLH (because there are targets which have FEATURE_DYNLIBS enabled, but don't support them... e.g. powerpc-wii -.-).
The DynLibsManager contains methods for loading a library based on a RawByteString and based on a UnicodeString. BOTH should be implemented, but internally one can forward to the other.
The loading by ordinal *can* be be implemented. If it is set to Nil then the implementation of GetProcAddress(lib,ordinal) will return Nil.
+ new functions SetDynLibsManager and GetDynLibsManager to set and retrieve the current DynLibsManager
* provide interface of DynLibs unit in unit System
git-svn-id: trunk@29613 -
2015-02-03 20:00:00 +00:00
Tomas Hajny
4cced1186d
* use the default locale for current country as the first fallback before using the 'Universal' locale if the locale set in LANG is not recognized/supported by OS/2
...
git-svn-id: trunk@29572 -
2015-01-28 02:29:39 +00:00
Tomas Hajny
2f92aa8d48
* corrected random memory corruption during argument setup
...
git-svn-id: trunk@29539 -
2015-01-24 00:25:35 +00:00
Tomas Hajny
e7f76cee9e
* fixed re-initialization of cached UConv object after changed codepage and added implementation of several more UnicodeStringManager routines
...
git-svn-id: trunk@29432 -
2015-01-11 00:16:12 +00:00
Tomas Hajny
bec4a9ceb7
* modified solution for ensuring validity of cached conversion objects
...
git-svn-id: trunk@29390 -
2015-01-04 18:28:14 +00:00
Tomas Hajny
c3fbfcb27b
* first part of UnicodeStringManager routines implementation for OS/2
...
git-svn-id: trunk@29178 -
2014-11-29 01:42:29 +00:00
sergei
3a5e6485b5
- RTL: removed InitVariantManager, it was an empty procedure since day 1.
...
git-svn-id: trunk@29114 -
2014-11-22 20:35:46 +00:00
Tomas Hajny
9419073608
* make FPC RTL again compatible to OS/2 2.x (avoid using DosAllocThreadAlloc/FreeMemory if not available while keeping to use them if possible)
...
git-svn-id: trunk@28979 -
2014-11-03 21:05:32 +00:00
Tomas Hajny
99e9571e0e
* allow initialization of DefaultSystemCodepage also if system could return more information about prepared codepages
...
git-svn-id: trunk@28952 -
2014-10-31 17:43:15 +00:00
Tomas Hajny
8cd2b615ce
* added (limited) GetLastOSError by emulation of Win32 and *nix behaviour in the RTL
...
git-svn-id: trunk@28947 -
2014-10-30 14:44:03 +00:00
Tomas Hajny
feb58d5d25
* make handle for DosCalls accessible for other code
...
git-svn-id: trunk@28889 -
2014-10-21 16:37:31 +00:00
sergei
9801288cdc
* Removed SysInitFPU/SysResetFPU from (remaining) system units initialization code. It is redundant there because it is called from fpc_cpuinit, or, in case of i386, from fpc_cpucodeinit.
...
* It fixes regression of tw16283b after r27169.
* BeOS, Haiku: added fpc_cpucodeinit to compensate for removal of SysInitFPU, it also enables use of CPU features like SSE.
git-svn-id: trunk@27171 -
2014-03-17 10:53:52 +00:00
sergei
76e5970993
* Clarified comments regarding TIB layout and stack bounds on OS/2.
...
git-svn-id: trunk@27134 -
2014-03-14 15:18:23 +00:00
sergei
3a55c4301e
* Since StackTop=StackBottom+StackLength, any two variables are sufficient to describe stack, the third one is redundant.
...
* As a first part of cleanup, replaced StackTop with function returning StackBottom+StackLength.
* On Win32 and Win64, StackTop returns the stack base from TIB instead.
git-svn-id: trunk@27119 -
2014-03-12 19:48:03 +00:00
Tomas Hajny
c8221c4196
* fix breakage of the OS/2 RTL
...
git-svn-id: trunk@25190 -
2013-07-30 22:43:23 +00:00
Tomas Hajny
67b3017751
* RealMaxPathLen added - value queried from the system on startup
...
git-svn-id: trunk@25011 -
2013-06-28 21:02:04 +00:00
Tomas Hajny
e256311188
* GetCPUCount implementation for OS/2 added
...
git-svn-id: trunk@23233 -
2012-12-27 22:23:03 +00:00
Tomas Hajny
d442d14e0c
+ FileNameCasePreserving added - see #18066 in Mantis
...
git-svn-id: trunk@20894 -
2012-04-15 20:56:13 +00:00
paul
1ccf16358c
rtl: init widestring and unitcodestring managers before initialization of Standard IO files (stdin,stdout,stderr)
...
git-svn-id: trunk@19542 -
2011-10-25 02:29:29 +00:00
Tomas Hajny
a87a867271
* fix for exception handling - avoid endless loop in case of fatal exceptions, safer checking for prefetch bug
...
git-svn-id: trunk@15131 -
2010-04-11 00:37:01 +00:00
Tomas Hajny
b873d3133f
* unicodestringmanager patch from r11743 extended to OS/2 and other platforms using system.pas instead of system.pp
...
git-svn-id: trunk@12393 -
2008-12-19 12:46:58 +00:00
Jonas Maebe
d4d7b695c7
- removed all "islibrary:=false;" assignments from system unit
...
initialisation code, because that's a typed constant already initialised
to that value and it interferes with a generic solution to set islibrary
to true for libraries
git-svn-id: trunk@12376 -
2008-12-17 17:48:04 +00:00
peter
f4f3ae84d0
* AllowDirectorySeparators and AllowDriveSeparators typed constants
...
added to allow customization of path and directory parsing in the rtl
* Use the new sets instead of the hardcoded / and \
git-svn-id: trunk@10105 -
2008-01-29 23:04:56 +00:00
peter
5acb3649df
* revert r9557, the performance impact is to big for an academic corner
...
case optimziation
git-svn-id: trunk@9603 -
2007-12-31 13:36:16 +00:00
yury
c4e60fd1a5
- Removed systhrd.inc from targets where thread manager is stub by default. Stub is installed in common thread.inc file if DISABLE_NO_THREAD_MANAGER is not defined.
...
git-svn-id: trunk@9558 -
2007-12-28 15:21:02 +00:00
yury
0dcad4d822
* Implemented late thread manager initialization. Thread manager code is not included to executable if thread stuff are not used. WinCE executable size is reduced by 4KB, Win32 executable size is reduced by 3KB. No testsuite regressions.
...
git-svn-id: trunk@9557 -
2007-12-28 14:40:28 +00:00
Tomas Hajny
54caaf4335
* fix compilation by moving wrongly placed SYSTEMEXCEPTIONDEBUG defines
...
git-svn-id: trunk@8699 -
2007-09-30 16:14:07 +00:00
Tomas Hajny
b71f5e80b0
+ RTL exception handler for OS/2
...
git-svn-id: trunk@8692 -
2007-09-30 14:15:37 +00:00
Tomas Hajny
3b3849c02c
+ AllFilesMask constant added
...
git-svn-id: trunk@8492 -
2007-09-15 12:09:25 +00:00
Tomas Hajny
1740525027
+ dynamically loaded 64-bit FS calls made available outside unit System
...
git-svn-id: trunk@6723 -
2007-03-05 00:17:27 +00:00
Tomas Hajny
ee539c3a94
* high memory not used by default - incompatible to 64-bit FS calls
...
git-svn-id: trunk@6722 -
2007-03-04 23:09:18 +00:00
Tomas Hajny
bafdfa7a9c
+ preparations for conditional 64-bit FS support
...
git-svn-id: trunk@3802 -
2006-06-04 21:26:56 +00:00
Tomas Hajny
237525c698
* StackTop now pointer
...
git-svn-id: trunk@2752 -
2006-03-05 10:41:12 +00:00
Tomas Hajny
b108f79236
* StackTop now common (remove duplicate)
...
git-svn-id: trunk@2751 -
2006-03-05 10:37:55 +00:00
Tomas Hajny
6d96ee4819
* fixed occassional crash during InitArguments
...
git-svn-id: trunk@2112 -
2006-01-01 23:28:25 +00:00
Tomas Hajny
f29fde8978
* CheckInitialStkLen and/or StackLength initialization added to previously omitted targets
...
git-svn-id: trunk@1736 -
2005-11-13 19:13:16 +00:00
Tomas Hajny
349d7108ce
* Check of memory ranges under OS/2 added to HeapTrc
...
git-svn-id: trunk@1735 -
2005-11-13 19:05:38 +00:00
Tomas Hajny
7ab72f43b3
* DosWrite only possible under non-PM apps
...
git-svn-id: trunk@1732 -
2005-11-13 17:30:18 +00:00
Tomas Hajny
eb26e1aa39
* missing calls to InitWideStringManager added
...
git-svn-id: trunk@1071 -
2005-09-10 09:40:26 +00:00
michael
859bb30daa
+ Removed HASTHREADVAR SUPPORT_THREADVAR defines
...
git-svn-id: trunk@295 -
2005-06-09 17:40:29 +00:00
michael
21425e303c
+ Removed HASVARIANT define
...
git-svn-id: trunk@244 -
2005-06-07 20:48:31 +00:00