Commit Graph

8207 Commits

Author SHA1 Message Date
marco
8bc0583045 * trystrto* variants with formatsettings.
git-svn-id: trunk@14018 -
2009-11-03 21:20:10 +00:00
marco
030379bc57 * Minor optimization from mantis 14974
git-svn-id: trunk@14016 -
2009-11-03 12:59:12 +00:00
paul
8292fcc49e rtl: override TObject.Equals for TBits and TStrings classes
git-svn-id: trunk@14013 -
2009-11-03 02:01:06 +00:00
paul
aa5a5e79ce merge revisions: 13909,13923,13924,13934,13935,13942,13943,13944,13946,13948,13950,13951,13952,13983,13994:
rtl: add enumerators to the basic classes
tests: add enumerators test which compiles and work both by fpc and dcc
compiler: 
  + start for-in loop implementation: implement for-in loop for types (enumerations and ranges), strings, arrays and sets. todo: perform type checking, optimize array and string loops - use temp for expression, implement for-in loop for classes
test:
  + add a simple test for the 'for-in' loop
compiler: fix string for-in loop. now it uses a temp variable to store string expression result
complier: fix for-in array loop. use a temp variable for the loop expression only if loop is not an open array loop
complier: continue enumerator implementation:
  + add operator enumerator which give an ability to add enumerator for an existent type (for example to override builtin string enumerator)
  + add class enumerator support via delphi compatible GetEnumerator method + enumerator class/object template (function MoveNext: Boolean; property Current)
  + tests
compiler: fix for-in loop for arrays. delphi does not copy arrays to a temp variable and it is possible to change array during loop. + test
compiler: add reference for the enumerator operator when it is used + another test for operator enumerator for a class
compiler: add reference for the enumerator operator when it is used + another test for operator enumerator for a class
compiler: enumerator directive support:
  + allow to mark methods and properties by 'enumerator MoveNext' and 'enumerator Current' modifiers. Parser checks return types and duplicates.
  + prefer *marked* by enumerator directive methods and properties than GetEnumerator and Current builtin symbols
  + increase ppu version
  + test
rtl: add IEnumerator and IEnumerable interfaces declarations
tests: for-in loop tests:
  + add small comment at the top of test program
compiler: allow 'enumerator MoveNext' for the interface function declaration + test
compiler: move all for-in loop helpers to the nflw unit
compiler: don't allow the compiler to choose the non-valid enumerator operator for the for-in loop

git-svn-id: trunk@14008 -
2009-11-02 03:24:48 +00:00
paul
dfef902c53 rtl: introduce new TObject methods: UnitName, GetHashCode, Equals, ToString added for compatibility with delphi 2009.
+ changes in compiler, utils, packages to resolve identifier conflicts with the new TObject methods (like changing of UnitName arguments to AUnitName, adding Classes. before the toString, etc). (issue #0014931)

git-svn-id: trunk@14005 -
2009-11-01 16:22:47 +00:00
Jonas Maebe
c2190ebd30 * return errors from unimplemented functions instead of random values
git-svn-id: trunk@14002 -
2009-11-01 15:41:29 +00:00
ivost
a9150ebb8a * lib handler: default libraries can be changed now
git-svn-id: trunk@13995 -
2009-11-01 11:28:17 +00:00
marco
de350d5c26 * fixed compilation win32/win64 after (my) last commit.
due to wince <-> win32/win64 headerwise. wince has some identifiers in Windows that win32/win64 has in activex
 * patches for comobj/comserv from 0014822 and 0014939	as well as one minor fix to activex.

git-svn-id: trunk@13991 -
2009-10-31 22:31:26 +00:00
ivost
4d0272fd5c * resourcestring SCannotCreateDir: translated from german to english
git-svn-id: trunk@13990 -
2009-10-31 22:08:22 +00:00
marco
09b22de964 * TStreamAdapter + relevant constants. From 10608
git-svn-id: trunk@13988 -
2009-10-31 20:13:41 +00:00
Jonas Maebe
e017015c00 * fixed Darwin compilation after r13975 (dynlibs now depends on sysconst,
rtlconsts and sysutils)

git-svn-id: trunk@13986 -
2009-10-31 10:11:00 +00:00
marco
b5e361a4cb * TOleStream + TProxystream (Mantis 8376)
git-svn-id: trunk@13984 -
2009-10-30 18:27:26 +00:00
ivost
3e16584155 * symbols are cleared now after unloading the library (ClearLibrarySymbols)
git-svn-id: trunk@13979 -
2009-10-30 13:42:49 +00:00
ivost
bd25e02096 * added some highlevel helper functions to load/unload dynamic libraries.
* initialize/release calls are refcounted. On loading, requested symbols are checked.

git-svn-id: trunk@13975 -
2009-10-30 13:16:13 +00:00
ivost
1e5b61c240 * added 3 new resources strings to describe library errors
git-svn-id: trunk@13974 -
2009-10-30 13:10:31 +00:00
florian
84c84b4964 + make TObject.Dispatch and DispatchStr virtual, patch by Paul Ishenin, resolves #14920
git-svn-id: trunk@13962 -
2009-10-28 19:22:29 +00:00
ivost
bab5c5d8a3 * parameter "Separator" of function TryStrToDate was not passed to IntStrToDate
git-svn-id: trunk@13959 -
2009-10-26 17:34:07 +00:00
ivost
243e0ff3b5 * reverted r13949 because it's unnecessary test
git-svn-id: trunk@13954 -
2009-10-25 11:06:38 +00:00
ivost
d4d3227e77 * fixed CompareDate function. Only dates are compared now, ignoring time of day.
git-svn-id: trunk@13949 -
2009-10-24 20:53:00 +00:00
michael
89ec956733 * Patch from Mattias Gaertner to fix property overrides. (bug ID 14885)
git-svn-id: trunk@13939 -
2009-10-24 12:34:26 +00:00
marco
a91e106cde * PWSADAta was missing ^ to make it a pointer.
git-svn-id: trunk@13936 -
2009-10-23 19:01:35 +00:00
michael
ed950da9cc * Forgot raise statement in strtodate (thanks to Denis Golovan)
git-svn-id: trunk@13928 -
2009-10-23 10:24:24 +00:00
ivost
40069c3112 * changed output parameters from var to out. This suppress some unnecessary hints and it's also done in datih.inc
git-svn-id: trunk@13920 -
2009-10-22 21:26:24 +00:00
ivost
2bfe336917 * reverted compon.inc to the state of r13298 (csFreeNotification maybe set even with no freelist allocated)
git-svn-id: trunk@13917 -
2009-10-21 23:26:45 +00:00
ivost
0c725eae43 * fixed setting wrong component state. csDesignInstance and csInline were set inversed.
git-svn-id: trunk@13916 -
2009-10-21 19:24:10 +00:00
marco
778505701c * set/getrlimit now also visible in baseunix when syscalls are used.
on systems that force ugetrlimit, use that transparently. (since 
    ugetrlimit is not posix in theory or practice, we can't export it),
    resolves 13916

git-svn-id: trunk@13903 -
2009-10-17 19:14:09 +00:00
michael
4c2fe8bc31 * Correctly split date/time parts when dateseparator is a space
git-svn-id: trunk@13888 -
2009-10-17 11:18:16 +00:00
michael
893295dc1e * Added Pack/Unpack dummies, fixed var/out and const params in writestr/readstr
git-svn-id: trunk@13880 -
2009-10-17 09:22:49 +00:00
marco
5121f470a2 * moved ugetrlimit to the implementation (as linux specific call it shouldn't be exported)
* syscall implementation for FreeBSD of get/setrlimit

git-svn-id: trunk@13875 -
2009-10-16 18:47:43 +00:00
ivost
fff6e218af * readded BeforeDestructor that calls Destroying (delphi compatibility issue)
* uncommented code in Notification procedure (delphi compatibility issue)

git-svn-id: trunk@13874 -
2009-10-16 18:12:11 +00:00
ivost
3cfcdb2ab9 * reverted parts of r13852 (removed +/- with sets and added include/exclude)
git-svn-id: trunk@13873 -
2009-10-16 17:34:50 +00:00
michael
e4244e0452 * Forgot to commit
git-svn-id: trunk@13871 -
2009-10-16 15:31:25 +00:00
michael
44f14996c5 * Added dummy definitions of readstr/writestr
git-svn-id: trunk@13869 -
2009-10-16 13:41:23 +00:00
michael
cb29ddbd04 * TryStrToTime/TryStrToDate no longer need to catch exceptions
git-svn-id: trunk@13865 -
2009-10-16 09:31:09 +00:00
michael
dadd6631ad * Patch from Alex Rayne (bug ID 14622) to provide some overloaded versions of the strtodate/strtotime functions
git-svn-id: trunk@13864 -
2009-10-16 08:16:55 +00:00
ivost
242560f138 * corrected some typo that was inserted by r13853
git-svn-id: trunk@13854 -
2009-10-13 15:48:42 +00:00
ivost
65bca0a26d * enhanced how observers are notified by subjects on destroying
git-svn-id: trunk@13853 -
2009-10-13 12:22:36 +00:00
ivost
74c09e2268 * fixed strange free notification behavior of TComponent. Must be some memory corruption or so.
* replaced deprecated Include / Exclude calls

git-svn-id: trunk@13852 -
2009-10-13 12:05:14 +00:00
ivost
f18a2ab69c * fixed bug in TFPSList.SetCount. Deref was not called when shrinking the list.
git-svn-id: trunk@13851 -
2009-10-12 21:23:38 +00:00
florian
cba72c423d * patch by Sergei Gorelkin to use always SetFilePointer, also for files with >2GB, this saves some lines of code, resolves #14630
git-svn-id: trunk@13838 -
2009-10-10 18:52:50 +00:00
Jonas Maebe
93171fdc23 + support for tkUString in get/setpropvalue (mantis #14617)
git-svn-id: trunk@13829 -
2009-10-09 19:47:55 +00:00
Jonas Maebe
be39c47d02 * don't stop at #0 characters for setstring with pchar either
git-svn-id: trunk@13828 -
2009-10-09 19:47:46 +00:00
Jonas Maebe
6a0755e897 * fixed setstring for unicode/widestring: don't stop at embedded #0
characters, don't expect that buffer is null-terminated (mantis #14740)

git-svn-id: trunk@13826 -
2009-10-09 16:12:03 +00:00
marco
1e7ee7aef4 * Patch from Paul Ishenin, load stringlists with fmdenywrite. (improves sharing behaviour)
git-svn-id: trunk@13803 -
2009-10-04 13:36:43 +00:00
florian
515774b864 * merged armthum branch
-- Zusammenführen der Unterschiede zwischen Projektarchiv-URLs in ».«:
U    rtl/arm/setjump.inc
A    rtl/arm/thumb2.inc
U    rtl/arm/divide.inc
A    rtl/embedded/arm/stm32f103.pp
U    rtl/inc/system.inc
U    compiler/alpha/cgcpu.pas
U    compiler/sparc/cgcpu.pas
U    compiler/i386/cgcpu.pas
U    compiler/ncgld.pas
U    compiler/powerpc/cgcpu.pas
U    compiler/avr/cgcpu.pas
U    compiler/aggas.pas
U    compiler/powerpc64/cgcpu.pas
U    compiler/x86_64/cgcpu.pas
U    compiler/cgobj.pas
U    compiler/psystem.pas
U    compiler/aasmtai.pas
U    compiler/m68k/cgcpu.pas
U    compiler/ncgutil.pas
U    compiler/rautils.pas
U    compiler/arm/raarmgas.pas
U    compiler/arm/armatts.inc
U    compiler/arm/cgcpu.pas
U    compiler/arm/armins.dat
U    compiler/arm/rgcpu.pas
U    compiler/arm/cpubase.pas
U    compiler/arm/agarmgas.pas
U    compiler/arm/cpuinfo.pas
U    compiler/arm/armop.inc
U    compiler/arm/narmadd.pas
U    compiler/arm/aoptcpu.pas
U    compiler/arm/armatt.inc
U    compiler/arm/aasmcpu.pas
U    compiler/systems/t_embed.pas
U    compiler/psub.pas
U    compiler/options.pas

git-svn-id: trunk@13801 -
2009-10-04 09:03:44 +00:00
michael
12fcb19bf4 * Added comment in SysRelocateThreadVar, not working in Windows Vista
git-svn-id: trunk@13753 -
2009-09-21 09:34:53 +00:00
olivier
2e8a93da16 * tune new variable TerminalSupportsBold and TerminalSupportsHighIntensityColors
for BeOS and Haiku.
  * BeOS : the terminal is very limited. Disabling both give best result.
  * Haiku : Haiku's terminal claims to be xterm but has it's own problems.

git-svn-id: trunk@13741 -
2009-09-19 16:10:36 +00:00
florian
07ef0c33df o another linux console patch by Nikolay Nikolov:
* disabled linux VCSA output in UTF-8 mode, because it does not do any translation 
  and assumes that the font is cp437, or similar, which looks horrible on fonts 
  (like fedora's default latarcyrheb-sun16), which are designed only for unicode 
  support and have no similarity at all to cp437. We already can display all the 
  cp437 characters in UTF-8 mode (including the low 32 characters), in case the 
  font is cp437, and the UTF-8 translation provides better approximation (e.g. 
  for the line drawing characters) if the font is not cp437.
* do not "restore" the linux system font in SysDoneVideo in UTF-8 mode, 
  since we didn't change the font on startup
* added try_grab_vcsa to try harder to open VCSA in the linux IDE user 
  screen restore code. While VCSA is no longer needed in the video unit on 
  UTF-8 systems, the IDE still needs it, because it's the only way to provide 
  the "restore user screen" functionality on the linux virtual console.

git-svn-id: trunk@13726 -
2009-09-16 19:58:42 +00:00
marco
47e90bbdf3 * typo corrected as per #14578
git-svn-id: trunk@13707 -
2009-09-13 20:20:02 +00:00
Jonas Maebe
92ff07deaf * several fixes by Pierre Pede (parts of his patch to mantis #12492)
o fixed gprof under linux/i386
    o fixed pic-compilation of the linux/i386 rtl
    o initialisation of linux shared libraries is now possible with pic-code

git-svn-id: trunk@13703 -
2009-09-12 21:57:41 +00:00