marco
a0b200db76
* Add dlvsym under ifdef ELF, defined ELF for the OSes I could check
...
(FreeBSD, OpenBSD, Linux) Mantis #18892
git-svn-id: trunk@20134 -
2012-01-21 11:56:40 +00:00
marco
77197cdc39
* Added CharInSet, Fixes #14599 , since issurrogate* already is in unit Character.
...
git-svn-id: trunk@20131 -
2012-01-20 22:10:32 +00:00
sergei
f136e44b6b
- RTL: cleaned up remaining 'decr_ref' routines (not removed completely due to bootstrapping needs, but aliased to 'finalize' ones).
...
git-svn-id: trunk@20130 -
2012-01-20 19:19:08 +00:00
pierre
7167b5b065
Fix cross rtl compilation problems
...
git-svn-id: trunk@20124 -
2012-01-20 16:39:57 +00:00
sergei
06192a8137
Values of managed variables are never ever used after decrementing reference on the variable, so there is no point of having a 'decrement reference' as a separate operation. We can always do 'finalize', i.e. clear the contents after decref.
...
* Modified fpc_ansistr_decr_ref and fpc_widestr_decr_ref so they always zero the pointer passed by reference. Other _decr_ref helpers already do it.
- Removed tcg.g_decrrefcount, calling cg.g_finalize instead.
- finalize_data_node and tcg.g_finalize: removed code generation for zeroing locations, because it is now done by RTL helpers. This further reduces code size.
As a total result of this change and r20118, the size of Lazarus executable is reduced by about 12%.
git-svn-id: trunk@20119 -
2012-01-19 23:11:09 +00:00
sergei
568ef396fb
* Added fpc_dynarray_assign (a helper for dynamic array assignments), added local access to fpc_intf_assign, and switched fpc_copy to use assignment helpers instead of incr_ref/decr_ref combinations.
...
git-svn-id: trunk@20114 -
2012-01-19 17:43:37 +00:00
pierre
ac80391c74
* Try to fix go32v2 problems related to DJGPP 2.04 CVS code using __environ as alias of _environ
...
git-svn-id: trunk@20113 -
2012-01-19 17:12:03 +00:00
sergei
a8fe9601de
* Get rid of using pdynarraytypeinfo, instead treat rtti as distinct 'header' and 'data' parts. In variants unit, use rtti declarations from typinfo directly. In system unit, declare private tdynarraytypedata record which (like typinfo.TTypeData) is not packed on alignment-sensitive targets. This simplifies code and removes scary pointer manipulations, should also yield better code on aligned targets.
...
git-svn-id: trunk@20106 -
2012-01-18 19:28:08 +00:00
marco
a7fb5c7e6c
* updated comments (Mantis #21107 )
...
git-svn-id: trunk@20102 -
2012-01-17 20:43:20 +00:00
marco
5ce5f4f2a9
* Init use_proxy to false, Mantis #21097
...
git-svn-id: trunk@20099 -
2012-01-17 07:57:39 +00:00
sergei
cbad0abab5
+ Platform-specific exception support for x86_64-win64. Enable by cycling with OPT=-dTEST_WIN64_SEH.
...
git-svn-id: trunk@20098 -
2012-01-16 23:13:31 +00:00
marco
1f40ff2362
* overloaded version of raiselastoserror that allows custom errorcodes
...
to be raised, patch by Cytax, Mantis #21092
git-svn-id: trunk@20084 -
2012-01-15 11:54:12 +00:00
florian
ce070c93fc
+ patch by Jeppe Johansen to support the SC32442B
...
git-svn-id: trunk@20081 -
2012-01-14 21:39:32 +00:00
florian
562932a2c9
* change dllparam into PtrInt, this is required for 64 bit systems, patch based on Gennadiy's patch in #21089 , resolves #21089
...
git-svn-id: trunk@20079 -
2012-01-14 20:21:52 +00:00
marco
51f99c57c3
* Add CancelIO, CancelIOex Mantis #21079
...
git-svn-id: trunk@20063 -
2012-01-13 09:02:54 +00:00
sergei
5658c30328
* Partially reverted r20041 to prevent IE200606085 on ARM platforms.
...
It appears that a function which is present in interface part and aliased to another function using "external name 'foo'" directive cannot be placed immediately before the function to which it is aliased. The body of first function consists of a single jump which fails to be correctly relocated.
git-svn-id: trunk@20053 -
2012-01-11 18:22:43 +00:00
sergei
40f29ffd7a
* Generate direct order of indexes passed to fpc_dynarray_setlength at compile time, eliminates the need of reversing them at runtime (in DynArraySetLength).
...
* 'dimcount' parameter is now of type sizeint everywhere (was dword in fpc_dynarray_setlength and longint generated by compiler).
Since multi-dimensional dynarrays are not used in compiler code, this change does not break cycling.
git-svn-id: trunk@20041 -
2012-01-10 18:58:20 +00:00
florian
aa564b4b69
* link always against sysbase on arm-gba, fake_heap_end is used in the syste unit, resolves #21005
...
git-svn-id: trunk@19987 -
2012-01-06 19:48:48 +00:00
florian
28c90c9c91
* build objects unit for gba
...
git-svn-id: trunk@19986 -
2012-01-06 19:41:56 +00:00
florian
77f1092ca0
+ sysutils.sleep for gba
...
+ dummy sysutils.getlastoserror for gba
git-svn-id: trunk@19975 -
2012-01-05 17:29:41 +00:00
florian
8fd262e00c
* build strutils for gba, some packages require it
...
git-svn-id: trunk@19974 -
2012-01-05 17:27:44 +00:00
florian
e0d7af703a
* proper feature handling for gba
...
* slinebreak shall be a real constant
git-svn-id: trunk@19973 -
2012-01-05 17:27:02 +00:00
florian
4765728fc4
* use SarInt64 to optimize 64 bit divs on 32 bit platforms, resolves #20998
...
git-svn-id: trunk@19968 -
2012-01-04 22:58:25 +00:00
Jonas Maebe
eb680bcc5b
* don't try to set the iconv transliterate property in case the iconv
...
encoder was not successfully initialised
git-svn-id: trunk@19965 -
2012-01-04 16:08:15 +00:00
Jonas Maebe
f287cf3f61
* default to UTF-8 as system code page in case nl_langinfo(CODESET) returns
...
an empty string
git-svn-id: trunk@19964 -
2012-01-04 16:06:27 +00:00
sergei
49700e675c
* Changed code generation for variant assignments to typecast arguments to TVarData instead of using pointers. Fixes one (probably the ugliest one) case of non-disposed temp variables:
...
When arguments are temps, they are supposed to be released by tcgcallnode.release_para_temps. However, taking address with taddrnode effectively changes original location of temp to some LOC_REGISTER, tcgcallnode.release_para_temps no longer sees the original location and therefore does not free such temps.
git-svn-id: trunk@19959 -
2012-01-03 19:31:58 +00:00
florian
6a1a2d3464
* get rid of some feature checks, probably the whole feature stuff is plainly the wrong way, embedded rtl compiles again, resolves #20913
...
git-svn-id: trunk@19907 -
2011-12-29 14:06:30 +00:00
florian
c4c20102fd
* make buildrtl aware of heapmgr
...
git-svn-id: trunk@19906 -
2011-12-29 14:04:50 +00:00
marco
881caba4c3
* power functions added
...
git-svn-id: trunk@19900 -
2011-12-28 18:11:45 +00:00
marco
397a6059f8
* correct INVALID_SOCKET to NOT 0, mantis #20946
...
git-svn-id: trunk@19883 -
2011-12-22 12:20:00 +00:00
sergei
ce2812e24a
* Split combined declarations of GetModuleHandle and GetModuleFileName into separate WinCE and non-WinCE versions. Using Pointer as 'common denominator' in combined declarations was making it impossible to use e.g. GetModuleHandle('literal') in System unit.
...
* Also fixed parameter and return types for these declarations.
git-svn-id: trunk@19881 -
2011-12-22 02:17:02 +00:00
marco
60c1b263d6
* add public alias to getrlimit
...
git-svn-id: trunk@19878 -
2011-12-21 14:05:52 +00:00
mazen
489e20356c
* Removed executable flag from source files.
...
git-svn-id: trunk@19877 -
2011-12-19 17:40:02 +00:00
sergei
cd347e40b2
* Moved existing exception-related definitions into separate include file seh64.inc, and added some more WinAPI definitions needed for SEH.
...
git-svn-id: trunk@19869 -
2011-12-18 01:15:31 +00:00
sergei
ebb2205c63
* Moved TExceptionRecord definition to sysos.inc, it is identical for all Windows targets.
...
git-svn-id: trunk@19868 -
2011-12-18 00:45:52 +00:00
sergei
009ee271ec
- Cleaned out STR_CONCAT_PROCS define
...
- i386-specific fpc_shortstr_append_shortstr removed too, because a) it was anyway disabled with STR_CONCAT_PROCS, b) the generic implementation is smaller and probably faster due to optimized Move().
git-svn-id: trunk@19867 -
2011-12-17 17:22:18 +00:00
sergei
724f41a9af
- Cleaned out FPC_STRTOSHORTSTRPROC and FPC_STRTOCHARARRAYPROC defines. Somebody had to do it one day.
...
git-svn-id: trunk@19851 -
2011-12-14 22:40:08 +00:00
sergei
abdbe49861
+ SysUtils part of SEH (enabled only for win64)
...
* EExternal.ExceptionRecord changed from field to property and made available on all Windows, not just win32.
* CatchUnhandledException: removed AnsiString variable, ideally there should be no memory allocations in this code path.
git-svn-id: trunk@19849 -
2011-12-14 10:47:26 +00:00
sergei
5b6b6cdd11
- clean out remaining ver2_0, REGCALL, FPC_HAS_INDIRECT_MAIN_INFORMATION defines.
...
git-svn-id: trunk@19847 -
2011-12-13 21:40:22 +00:00
sergei
2642403d5b
* float_raise: Reduce amount of threadvar accesses, gains a bit more compact code. Functionality is not changed.
...
git-svn-id: trunk@19846 -
2011-12-13 20:21:22 +00:00
sergei
bcbd25568e
* Call InitHeap before InitSystemThreads in TLS callback (necessary because InitSystemThreads calls RelocateHeap), and skip both of them in initialization section of system.pp if they have been called from TLS callback. This restores correct initialization sequence which was broken by r19779, resulting in lots of debug messages about corrupted heap when running tests/test/theapthread.pp
...
git-svn-id: trunk@19836 -
2011-12-13 07:40:02 +00:00
Tomas Hajny
6b43ce2e13
* boolean must not be used for DosCalls API parameters
...
git-svn-id: trunk@19811 -
2011-12-11 00:46:55 +00:00
Tomas Hajny
12e216ed4e
* boolean must not be used for DosCalls API parameters
...
git-svn-id: trunk@19810 -
2011-12-11 00:46:16 +00:00
florian
41636711e4
* fix to align float64 correctly
...
git-svn-id: trunk@19791 -
2011-12-09 21:34:09 +00:00
florian
c7f846ebd5
+ added missing syscalls so sparc-linux rtl compiles again
...
git-svn-id: trunk@19790 -
2011-12-09 20:35:11 +00:00
michael
0bdccfa2b0
* Added clock_getres, clock_gettime, clock_settime calls
...
git-svn-id: trunk@19789 -
2011-12-09 16:30:23 +00:00
michael
2d7dbacee0
* Added inotify calls
...
git-svn-id: trunk@19788 -
2011-12-09 16:05:35 +00:00
sergei
3b904943e7
* Moved ExceptObjProc from objpas to system, because it is going to be called from system. Also added ExceptClsProc variable.
...
* Fixed SExceptionErrorMessage, it was missing format placeholder.
git-svn-id: trunk@19787 -
2011-12-09 14:52:26 +00:00
Tomas Hajny
f56cd3d6d9
* fix for SysThreadSetPriority
...
git-svn-id: trunk@19783 -
2011-12-09 00:26:51 +00:00
sergei
76b9d7e766
- Removed Win32Wide2AnsiMove() again, it was removed already in r17202 but got restored during subsequent cpstrnew merging.
...
git-svn-id: trunk@19781 -
2011-12-08 21:28:12 +00:00