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
sergei
f4023ef49e
- Removed outdated VER2_0 defines
...
git-svn-id: trunk@19513 -
2011-10-19 11:39:59 +00:00
sergei
6e23565edf
+ Initialize/finalize variants using dedicated helpers, produces both smaller (no RTTI loading necessary) and faster (direct path taken) code.
...
git-svn-id: trunk@19442 -
2011-10-09 20:34:58 +00:00
florian
e362e85039
* fixed last commit: UTF8Encode -> UTF8Decode
...
git-svn-id: trunk@13452 -
2009-07-26 13:09:31 +00:00
florian
d38340c753
+ utf-8 <-> variant type casts, resolves #11371
...
* ucs-4 -> variant type cast (variant -> ucs-4 is not possible due to overloading contraints of fpc and how ucs-4 is implemented)
* some newlines fixed
git-svn-id: trunk@13451 -
2009-07-26 12:58:49 +00:00
Jonas Maebe
95431c57f5
* fixed variantarrays for 64 bit systems after the changes in 2.2.0 to
...
turn variantarray indices into longints
* extended tw9161 to also test storing and retrieving dynamic arrays
in/from variant arrays
git-svn-id: trunk@12713 -
2009-02-08 00:24:03 +00:00
florian
b178b08ba7
Merged revisions 11665-11738 via svnmerge from
...
http://svn.freepascal.org/svn/fpc/branches/unicodestring
........
r11665 | florian | 2008-08-30 13:30:17 +0200 (Sat, 30 Aug 2008) | 1 line
* continued to work on unicodestring type support
........
r11666 | florian | 2008-08-30 19:02:26 +0200 (Sat, 30 Aug 2008) | 2 lines
* expectloc for wide/ansi/unicode strings is LOC_CONSTANT or LOC_REGISTER now
........
r11667 | florian | 2008-08-30 20:42:37 +0200 (Sat, 30 Aug 2008) | 1 line
* more unicodestring stuff fixed, test results on win32 are already good
........
r11670 | florian | 2008-08-30 23:21:48 +0200 (Sat, 30 Aug 2008) | 2 lines
* first fixes for unix bootstrapping
........
r11683 | ivost | 2008-09-01 12:46:39 +0200 (Mon, 01 Sep 2008) | 2 lines
* fixed 64bit bug in iconvenc.pas
........
r11689 | florian | 2008-09-01 23:12:34 +0200 (Mon, 01 Sep 2008) | 1 line
* fixed several errors when building on unix
........
r11694 | florian | 2008-09-03 20:32:43 +0200 (Wed, 03 Sep 2008) | 1 line
* fixed unix compilation
........
r11695 | florian | 2008-09-03 21:01:04 +0200 (Wed, 03 Sep 2008) | 1 line
* bootstrapping fix
........
r11696 | florian | 2008-09-03 21:07:18 +0200 (Wed, 03 Sep 2008) | 1 line
* more bootstrapping fixed
........
r11698 | florian | 2008-09-03 22:47:54 +0200 (Wed, 03 Sep 2008) | 1 line
+ two missing compiler procs exported
........
r11701 | florian | 2008-09-04 16:42:34 +0200 (Thu, 04 Sep 2008) | 2 lines
+ lazarus project for the linux rtl
........
r11702 | florian | 2008-09-04 16:43:27 +0200 (Thu, 04 Sep 2008) | 2 lines
+ set unicode string procedures
........
r11707 | florian | 2008-09-04 23:23:02 +0200 (Thu, 04 Sep 2008) | 2 lines
* fixed several type casting stuff
........
r11712 | florian | 2008-09-05 22:46:03 +0200 (Fri, 05 Sep 2008) | 1 line
* fixed unicodestring compilation on windows after recent unix changes
........
r11713 | florian | 2008-09-05 23:35:12 +0200 (Fri, 05 Sep 2008) | 1 line
+ UnicodeString support for Variants
........
r11715 | florian | 2008-09-06 20:59:54 +0200 (Sat, 06 Sep 2008) | 1 line
* patch by Martin Schreiber for UnicodeString streaming
........
r11716 | florian | 2008-09-06 22:22:55 +0200 (Sat, 06 Sep 2008) | 2 lines
* fixed test
........
r11717 | florian | 2008-09-07 10:25:51 +0200 (Sun, 07 Sep 2008) | 1 line
* fixed typo when converting tunicodestring to punicodechar
........
r11718 | florian | 2008-09-07 11:29:52 +0200 (Sun, 07 Sep 2008) | 3 lines
* fixed writing of UnicodeString properties
* moved some helper routines to unicode headers
........
r11734 | florian | 2008-09-09 22:38:55 +0200 (Tue, 09 Sep 2008) | 1 line
* fixed bootstrapping
........
r11735 | florian | 2008-09-10 11:25:28 +0200 (Wed, 10 Sep 2008) | 2 lines
* first fixes for persisten unicodestrings
........
r11736 | florian | 2008-09-10 14:31:00 +0200 (Wed, 10 Sep 2008) | 3 lines
Initialized merge tracking via "svnmerge" with revisions "1-11663" from
http://svn.freepascal.org/svn/fpc/trunk
........
r11737 | florian | 2008-09-10 21:06:57 +0200 (Wed, 10 Sep 2008) | 3 lines
* fixed unicodestring <-> variant handling
* fixed unicodestring property reading
........
git-svn-id: trunk@11739 -
2008-09-10 20:14:31 +00:00
micha
83b7f81f81
+ add no-fpu support to compiler/rtl for powerpc-linux (-Cfnone)
...
git-svn-id: trunk@10422 -
2008-03-02 12:59:02 +00:00
yury
5e3462b6fc
* Fixed warnings and notes.
...
git-svn-id: trunk@9508 -
2007-12-21 23:28:36 +00:00
florian
dc2a8787a1
+ VarArrayPut and VarArrayGet from Igor, resolves #9161
...
git-svn-id: trunk@8117 -
2007-07-21 18:49:10 +00:00
Jonas Maebe
5bf9c58e14
* fixed real:=variant for non-x86
...
git-svn-id: trunk@6847 -
2007-03-14 17:04:15 +00:00
marco
0d070eef7f
* Patch from Thorsten for bug in lower than equal( only did lower than)
...
git-svn-id: trunk@6423 -
2007-02-11 14:38:29 +00:00
florian
2167655902
* patch from Thorsten Engler submitted in #8235
...
git-svn-id: trunk@6272 -
2007-01-30 19:53:42 +00:00
florian
28d59bbf6f
* pos(...,...) overloads with variants, see tb0520.pp for the reason
...
git-svn-id: trunk@5770 -
2006-12-31 17:47:05 +00:00
Jonas Maebe
c839d560ab
* store widechar as integer rather than as widestring in variants
...
(Delphi-compatible)
git-svn-id: trunk@5731 -
2006-12-28 16:17:57 +00:00
yury
63a162ac83
* fixed tw4700.
...
git-svn-id: trunk@5388 -
2006-11-15 07:17:41 +00:00
yury
cc2b691c0c
* Cleanup of variant manager stub in System unit. FPC 2.1.1 adds Variants unit implicitly. Variant manager stub in System unit is never called. This cleanup shrinks wince executable size by 3KB.
...
git-svn-id: trunk@5307 -
2006-11-10 14:41:45 +00:00
florian
60b1d1e162
* fpc_dispinvoke_variant is a compilerproc
...
git-svn-id: trunk@5256 -
2006-11-05 21:39:32 +00:00
florian
a13d358f1e
* first partially working implementation of variant com invoking
...
git-svn-id: trunk@5247 -
2006-11-05 15:34:15 +00:00
florian
c947295cb8
+ ttertiarynode
...
* traise node refactored using tertiarynode
* more dipatch stuff
git-svn-id: trunk@5215 -
2006-11-03 23:03:31 +00:00
florian
5c9b39549a
* fixed olevariant -> variant conversion
...
git-svn-id: trunk@5131 -
2006-10-31 19:45:08 +00:00
micha
8678d52aeb
* avoid warning when pointer points to size 1 data
...
* fix variantmanager for {$T+}
git-svn-id: trunk@4861 -
2006-10-11 16:40:40 +00:00
florian
8b841e9514
* fixed another problem caused by yesterdays real change
...
git-svn-id: trunk@4644 -
2006-09-18 18:21:00 +00:00
michael
5ef20e6215
+ Added delphi compatibility Error procedure
...
git-svn-id: trunk@3610 -
2006-05-21 09:57:47 +00:00
florian
380d3be22c
* started to fix var. array -> dyn. array
...
git-svn-id: trunk@1626 -
2005-11-01 22:41:25 +00:00
florian
c5f82ba6de
+ (ole)variant<->error type conversion
...
+ DynArraySetLength
+ DynArrayFromVariant
git-svn-id: trunk@1608 -
2005-10-30 23:12:08 +00:00
florian
700aacf6a3
+ forgot to add some helpers, now type cast helpers for olevariants should be complete
...
git-svn-id: trunk@1169 -
2005-09-23 16:56:36 +00:00
florian
372141e19d
+ more olevariant type cast wrappers
...
git-svn-id: trunk@1168 -
2005-09-23 16:36:09 +00:00
florian
eb57d588fd
+ several olevariant helpers and wrappers implemented
...
git-svn-id: trunk@1157 -
2005-09-23 09:48:55 +00:00
florian
30769ea013
* made variant operators inlined
...
* fixed some inline directives
+ variant<->olevariant cast operators
git-svn-id: trunk@632 -
2005-07-15 21:12:21 +00:00
michael
b29507407e
+ Removed HASOVERLOADASSIGNBYUNIQUERESULT define
...
git-svn-id: trunk@315 -
2005-06-09 18:08:11 +00:00
peter
4ace790492
* remove $Log
...
git-svn-id: trunk@231 -
2005-06-07 09:47:55 +00:00
florian
9da46ff50a
* more descriptive error message in case of a missing variant unit added
...
* variant unit uses now the math unit for ** implementation
git-svn-id: trunk@158 -
2005-05-30 20:47:34 +00:00
michael
77152e9d1b
+ Added VarCast routine
...
git-svn-id: trunk@100 -
2005-05-25 20:25:58 +00:00
florian
937fcdf41e
* better message in case of missing variants unit
...
git-svn-id: trunk@69 -
2005-05-22 12:41:36 +00:00
fpc
790a4fe2d3
* log and id tags removed
...
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3
initial import
...
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
florian
db865d1e51
+ variant<->currency/tdatetime operators
2005-04-28 19:34:19 +00:00
florian
89da61f7a8
+ basic operators (int, real and string) for variants implemented
2005-04-10 20:24:31 +00:00
florian
9a463a8bc3
+ varrarrayredim added and implemented
2005-04-10 09:22:38 +00:00
florian
372711eea4
+ a lot of vararray stuff
2005-03-28 13:38:05 +00:00
florian
e59c1f74a2
+ more vararray stuff
2005-03-25 19:02:59 +00:00
florian
74c89e2b87
+ some variant stuff fixed and added
2005-02-24 22:36:36 +00:00
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
florian
0853821fd1
+ interface <-> variant conversion from Danny Milosavljevic
2005-02-01 20:22:24 +00:00
florian
99ebd46010
* several variant init./final. stuff fixed
2005-01-15 18:47:26 +00:00
florian
bd211ce900
+ init/cleaning code for variants added
2005-01-08 20:43:44 +00:00
florian
13c5439bb1
+ basic rtl support for variant <-> interface implemented
2005-01-07 21:15:46 +00:00
florian
7fb9bd0f57
* implemented helper for variant<->dyn. array type cast
2004-12-05 11:49:06 +00:00
florian
5064ecaf57
* sparc uses wait4 as well
2004-08-18 21:03:35 +00:00