Commit Graph

1778 Commits

Author SHA1 Message Date
Jonas Maebe
79c70c52a7 * store/restore taddnode.resultrealdef to/from the ppufiles, and also
copy/compare it when copying/comparing taddnodes (necessary for inlined
    procedures, mantis #13596)

git-svn-id: trunk@13054 -
2009-04-27 21:03:11 +00:00
Jonas Maebe
8cae53bb18 * fixed errors with parsing negative, >$99 and invalid BCD numbers in
BCDToInt() (patch from Milla, mantis #13512)

git-svn-id: trunk@13052 -
2009-04-27 16:46:42 +00:00
Jonas Maebe
5b08047d1c * allow exlicit type conversions from class/interface to enums in Delphi
mode (mantis #11859)
  * cleaned up some superfluous "eq=te_incompatible" checks (probably from
    copy/pasting conditions from elsewhere)

git-svn-id: trunk@13050 -
2009-04-26 20:41:24 +00:00
Jonas Maebe
e2b8792bd3 * do not initialize global reference-counted variables in the automatic
initialization code of units/programs, because they are already
    zero and initializing them explicitly is Delphi-incompatible
    (mantis #13345)

git-svn-id: trunk@13042 -
2009-04-25 18:53:58 +00:00
Jonas Maebe
ca132e203f * treat typecast(register) the same as typecast([register]) in assembler
expressions (for Delphi compatibility, mantis #9327)

git-svn-id: trunk@13040 -
2009-04-25 15:37:38 +00:00
marco
704c0adbd0 * iconvenc now also with dynlinking separate. Some fixes for OS X 10.3 and Haiku ported from cwstring
git-svn-id: trunk@13038 -
2009-04-25 12:10:42 +00:00
Jonas Maebe
dbeb3e060f * fixed internalerror(2007120903) when using -Cfsse2 in case an unsigned
32 bit subrange type with high(subrange_type) <= high(longint) is
    converted to a float

git-svn-id: trunk@13037 -
2009-04-25 11:40:02 +00:00
Jonas Maebe
37a2cff8fb * fixed loading widestring constsym values from ppu files (mantis #13583)
* null-terminate loaded ansistring/resourcestring constants from ppu files

git-svn-id: trunk@13033 -
2009-04-24 21:36:01 +00:00
Jonas Maebe
e8edc31a89 * don't insert thousandseparator if it is #0 (mantis #13552, patch by
Jesus Reyes)

git-svn-id: trunk@13028 -
2009-04-23 19:16:49 +00:00
Jonas Maebe
10158da60e * give an error when trying to use the offset of a non-byte-aligned field
of a bitpacked record in assembler code
  * convert the offsets of byte-aligned fields of bitpacked records from bits
    to bytes (mantis #13563)

git-svn-id: trunk@13027 -
2009-04-23 17:27:44 +00:00
Jonas Maebe
2465126f60 * also check that nested procedures don't have any nested procedures
of their own that are marked as inline, instead of only doing so
    for non-nested procedures (mantis #13553)

git-svn-id: trunk@13025 -
2009-04-22 15:12:42 +00:00
Jonas Maebe
a4bf91001e * fixed location_free() for locations consisting of multiple
physical registers
  * free the physical return registers at the caller side for 64 bit
    systems
  * make sure that we do not double-free registers in case a return
    value is not used (mantis #13536)

git-svn-id: trunk@13023 -
2009-04-20 18:57:49 +00:00
paul
f555bc59c7 gtk2: add gdk cairo functions (patch from Martin Sucha with modifications)
git-svn-id: trunk@13017 -
2009-04-17 03:21:41 +00:00
Jonas Maebe
626a723f8c * in {$h+} mode, always treat string constants as if they were ansistrings
when determining the result of string concatenations (mantis #13456)

git-svn-id: trunk@13004 -
2009-04-05 17:26:38 +00:00
joost
2d076d109b * Set svn:mime-type and svn:eol-style properties
git-svn-id: trunk@12988 -
2009-03-30 21:32:27 +00:00
joost
c37ca78c90 * Unit custweb must be available on all targets
* Added fpfcgi unit with FastCGI-TApplication template

git-svn-id: trunk@12982 -
2009-03-29 16:20:08 +00:00
joost
9938d57233 * Initial implementation of FastCgi support
git-svn-id: trunk@12970 -
2009-03-27 22:33:27 +00:00
Jonas Maebe
757abc620a * comparing tdatetime variant values has to happen without an epsilon,
as all bits of the double value encode date/time information
    (mantis #13110)

git-svn-id: trunk@12962 -
2009-03-23 17:00:58 +00:00
michael
f641281a7e * Patch from Sergei Gorelkin:
+ added TXPathBinaryNode as a common ancestor for binary operations;
  + TXPathBooleanOpNode now handles only 'and' and 'or' operators,
    the purpose is to not evaluate the second argument if the result can
    be determined by the first argument;
  * Comparison operations moved to TXPathCompareNode and fixed
    to support INFs and NANs correctly;
  * Fixed TranslateWideString() that was not deleting characters;
  * Fixed 'substring-after' function so its result is empty when argument
    string does not contain the pattern;
  * Fixed 'round' funcion so it complies to the specs;
  * Completed implementation of 'substring' function (but surrogate pairs
    are not handled yet);
  * Mask exInvalidOp and exZeroDivide FPU exceptions while evaluating
    expressions, this ensures correct calculations with respect to INFs
    and NANs.
  + Added testsuite for xpath

git-svn-id: trunk@12961 -
2009-03-23 08:37:51 +00:00
Jonas Maebe
40247d2d87 * give an error when the typeinfo() function is called for an enumeration
whose base is not 0, or that has jumps in its value range (manits #9551)

git-svn-id: trunk@12960 -
2009-03-22 20:54:49 +00:00
Jonas Maebe
0698678f86 * renamed tw13345y.pp to uw13345y because it's a unit (otherwise its
object file is not available for linking when tw13345x is recompiled)

git-svn-id: trunk@12959 -
2009-03-22 20:52:45 +00:00
Jonas Maebe
6a813b8e7b * fixed rounding error in DateTimeToUnix (mantis #12894 and #12936)
* fixed errors in Inc*() routines regarding skipping the black
    home in the data-time continuum around 0, and the same for the
    *Between() functions
  + tests, test...

git-svn-id: trunk@12958 -
2009-03-22 18:26:34 +00:00
Jonas Maebe
1c2d2ae481 * fixed SimpleRoundTo() function (mantis #10159)
git-svn-id: trunk@12957 -
2009-03-22 16:29:54 +00:00
Jonas Maebe
624a7be9b1 * fixed internal error when a subscripted object is used in a property
(mantis #12756)

git-svn-id: trunk@12956 -
2009-03-22 16:21:06 +00:00
Jonas Maebe
6f4637b32a * do not do anything when writing to a t(custom)memorystream if the current
position is negative (patch by Collin Western, mantis #13318)

git-svn-id: trunk@12955 -
2009-03-22 15:53:16 +00:00
Jonas Maebe
5cf4ab7642 * always initialize/finalize global refcounted variables in units, also
when they are not used in the unit where they are defined (since they
    may be used elsewhere, discovered while analyzing mantis #13345)

git-svn-id: trunk@12954 -
2009-03-22 15:41:13 +00:00
Jonas Maebe
bf7c9361f6 * delay effect of {$calling x} until switches are flushed (mantis #12985)
git-svn-id: trunk@12932 -
2009-03-20 16:27:56 +00:00
Jonas Maebe
590f4d2efc - deleted (old 1.0.x compatibility file)
git-svn-id: trunk@12928 -
2009-03-19 22:38:05 +00:00
Jonas Maebe
630aa5c493 * do not use voidtype for temporary parameter/result locations when
inlining, because that results in alignment settings of "0"
    (voidtype.savesize = 0 -> size2align(0) = 0), which is interpreted
    by the code generators as unaligned (and is actually even invalid
    nowadays). This caused errors on NDS when writing to memory mapped
    I/O devices (mantis #13343)

git-svn-id: trunk@12916 -
2009-03-18 22:25:06 +00:00
Jonas Maebe
d67dbcf030 * fixed UTF8ToUnicode() based on patch by JoshyFun, and also added
support for 4-character UTF-8 codepoints (mantis #11791)
  * fixed UnicodeToUtf8() based on patch by A. J. Miller (mantis
    #13075)

git-svn-id: trunk@12902 -
2009-03-15 15:47:39 +00:00
Jonas Maebe
02bfd45775 * corrected properties
git-svn-id: trunk@12900 -
2009-03-15 15:21:17 +00:00
Jonas Maebe
c26f9cc5df * set the RTTI type name of "open array" parameters to the name of the
elements of the array (like Kylix, mantis #12038) + test
  * add pfReference and pfArray TParamFlags for open array parameters
    like Kylix

git-svn-id: trunk@12888 -
2009-03-14 19:00:44 +00:00
Jonas Maebe
8d2f3946e0 * fixed TextToFloat() in case ThousandSeparator = DecimalSeparator, based
on patch by Bart Broersma (mantis #13307)

git-svn-id: trunk@12885 -
2009-03-14 15:20:46 +00:00
Jonas Maebe
2b69768afc + support for properties in DWARF2 where the accessor does not use a function
git-svn-id: trunk@12883 -
2009-03-14 11:12:46 +00:00
Jonas Maebe
b86cb8ba55 + interactive test for mantis #13313
git-svn-id: trunk@12882 -
2009-03-14 10:37:59 +00:00
Jonas Maebe
4f51aef122 + Support for debug info for absolute variables when using dwarf2.
Needs a fix in gdb when referencing a location relative to a
    global variable (an array element other than the first, a field
    other than the first) on Mac OS X and when using external debug
    info on Linux/Windows.

git-svn-id: trunk@12877 -
2009-03-13 21:16:06 +00:00
Jonas Maebe
c4bedeb9df * we have to be able to take the address of an "absolute" variable
expression (necessary to, a.o., reject absolute mappings to fields
    of bitpacked records and to bitpacked array elements)

git-svn-id: trunk@12874 -
2009-03-12 20:12:14 +00:00
Jonas Maebe
6165536b5e + added {$modeswitch objectivec1}/-Mobjectivec1 mode switch to enable
the use of Objective-C 1.0 constructs. Because it is a mode switch, it
    can be used cumulatively with every syntax mode. Note that a {$mode xxx}
    statement resets all mode switches as well, so you cannot use the
    -Mobjectivec1 variant if you have such a statement in a unit. This
    modeswitch is currently only enabled for Darwin/PowerPC and Darwin/i386,
    as the backend support is not yet implemented for other platforms.
  + implemented selector() statement that can be used to create an Objective-C
    selector for the message with the specified *constant* name (in the future,
    it will also work for Objective-C method identifiers)
  + added SEL type to the system unit (the selector() statement returns it)
  + added all Objective-C segments to the assembler writers
  + (currently mostly dummy) objc1 unit that is automatically included if the
    {$modeswitch objectivec1} statement is used
  + some tests for the selector() statement

git-svn-id: trunk@12870 -
2009-03-08 18:40:32 +00:00
Jonas Maebe
da461c5154 * fixed calling static class methods from inside other static class methods
git-svn-id: trunk@12866 -
2009-03-08 12:38:02 +00:00
florian
9a0d4230b9 + added missing file, by Olivier Coursiere
git-svn-id: trunk@12865 -
2009-03-08 12:09:01 +00:00
florian
502c3f4ca4 + c linking test cases for i386-haiku by Olivier Coursiere
git-svn-id: trunk@12864 -
2009-03-08 11:55:41 +00:00
sekelsenmat
5f2f4a8cbb Adds initial support to read xwd image format
git-svn-id: trunk@12859 -
2009-03-05 16:22:57 +00:00
sekelsenmat
3ea814378d Starts xwd file format support
git-svn-id: trunk@12858 -
2009-03-05 14:45:33 +00:00
yury
08b551b504 + Added extapi and imm wince api units by Vasil Maximov.
* Updated some existing wince api units by Vasil Maximov.

git-svn-id: trunk@12839 -
2009-03-01 11:10:10 +00:00
florian
67d1604c49 * handle interface methods with cdecl modifier correctly, second and final part to resolve #10684
git-svn-id: trunk@12828 -
2009-02-28 20:28:33 +00:00
Jonas Maebe
4bf254bc32 * added .txt extensions to all README, TODO and COPYING files
(mantis #12358)

git-svn-id: trunk@12825 -
2009-02-28 17:34:08 +00:00
Jonas Maebe
042cbbc555 + test for mantis #11396 (already fixed in 2.2.2)
git-svn-id: trunk@12816 -
2009-02-28 10:45:27 +00:00
Jonas Maebe
f7003119d0 * fixed AddDisk() in sysutils and dos units, and fixed memory leaks
related to this functionality, based on analysis/patch by Michael
    Kamburelis (mantis #9985)

git-svn-id: trunk@12814 -
2009-02-27 22:02:24 +00:00
Jonas Maebe
5474004dcc * fixed calling inherited class methods from a regular method (mantis
#11825)

git-svn-id: trunk@12810 -
2009-02-27 17:05:41 +00:00
marco
00d1174c69 * avltreetest demo
git-svn-id: trunk@12800 -
2009-02-26 10:45:29 +00:00