yury
38b8731ba0
* Restored relocs generation for dlls by internal linker. It fixes bug #9048 .
...
* It is possible to generate relocs for exe with internal linker using -WB switch.
git-svn-id: trunk@7743 -
2007-06-20 15:47:10 +00:00
yury
93e72c2079
* Fixed bug introduced by r7667. Do not release pushed return value be callee for cdecl on win32. It fixes error3 of bug #9098 .
...
git-svn-id: trunk@7734 -
2007-06-19 21:06:44 +00:00
yury
a4dfa3b4fd
* fixed bug #9107 : procedure which have pushed parameters in its body fails if only -OoSTACKFRAME switch is used.
...
+ test.
git-svn-id: trunk@7731 -
2007-06-19 12:09:11 +00:00
yury
ff3bd9fa6f
* fixed compilation for arm targets.
...
git-svn-id: trunk@7729 -
2007-06-18 23:38:54 +00:00
yury
3b7e458f02
* Properly set location of float return value if it is passed as var parameter (it is always happens for safecall functions). It fixes bugs #8523 and #8977 .
...
+ test.
git-svn-id: trunk@7728 -
2007-06-18 23:23:46 +00:00
yury
9bbff8042f
* Set return value of safecall procedure if implicit try/finally blocks are disabled.
...
git-svn-id: trunk@7727 -
2007-06-18 21:40:33 +00:00
yury
9844174e5e
* It is needed to destroy exception object in safecall procedure as well.
...
git-svn-id: trunk@7722 -
2007-06-18 17:26:15 +00:00
yury
78fe68859b
* Pop the last exception object in safecall procedure.
...
git-svn-id: trunk@7721 -
2007-06-18 16:12:49 +00:00
yury
a7d1508959
* Fixed safecall procedures by generating implicit try/finally and setting correct return value if exception was occurred or not. Now safecall is fully Delphi compatible.
...
git-svn-id: trunk@7720 -
2007-06-18 14:26:08 +00:00
marco
569d7e1138
* fixed deprecated
...
git-svn-id: trunk@7719 -
2007-06-17 20:40:47 +00:00
marco
4200ae288d
* fixed deprecated
...
git-svn-id: trunk@7716 -
2007-06-17 20:28:06 +00:00
florian
c1640b078b
* create init rtti for fpc_copy instead of full rtti
...
git-svn-id: trunk@7714 -
2007-06-17 15:31:06 +00:00
florian
72d49f3033
* reverted r7675
...
git-svn-id: trunk@7702 -
2007-06-17 13:17:44 +00:00
tom_at_work
3e7a771b69
* fix compilation
...
git-svn-id: trunk@7692 -
2007-06-16 19:44:02 +00:00
florian
37bd49692e
* proper fix for 8481 et. al.
...
git-svn-id: trunk@7691 -
2007-06-16 19:03:53 +00:00
daniel
92975a7c99
* Remove accidentally enabled winlikewidestring.
...
git-svn-id: trunk@7690 -
2007-06-16 18:27:00 +00:00
florian
01a4737b10
+ local symbols can hide class members in delphi mode
...
git-svn-id: trunk@7675 -
2007-06-15 21:41:55 +00:00
Jonas Maebe
62b3b307e0
* also process all subnodes of try-except and try-finally in
...
foreachnode(static) (fixes first example of mantis #9076 )
git-svn-id: trunk@7671 -
2007-06-15 17:36:09 +00:00
Jonas Maebe
ba95cc22ee
* only allow automatic type conversions of array constructors of
...
char to pchar/array of char, rather than of arbitrary array
constructors (mantis #9085 )
git-svn-id: trunk@7670 -
2007-06-15 17:16:44 +00:00
Jonas Maebe
02adc2b6ab
* fixed calling cdecl routines under win32 which return their result in
...
a structure whose address is passed by the caller (the caller is
responsible there to remove the address from the stack, unlike on
e.g. linux/i386 and darwin/i386) (mantis #9013 )
git-svn-id: trunk@7667 -
2007-06-15 12:48:12 +00:00
daniel
b034a88c9c
* Prevent range check error.
...
git-svn-id: trunk@7666 -
2007-06-15 07:53:47 +00:00
daniel
7934961490
* Fix browcol.
...
- Remove another obsolete uint64 test.
git-svn-id: trunk@7659 -
2007-06-14 08:33:19 +00:00
daniel
11c7fcef7b
* Cosmetic cleanup of constexprint leftovers.
...
git-svn-id: trunk@7657 -
2007-06-14 06:12:12 +00:00
daniel
2e57912288
* Fix remaining constexp issues: powerpc,libcurl,browcol
...
git-svn-id: trunk@7656 -
2007-06-13 21:42:02 +00:00
florian
bc678a2b90
* allow in delphi mode member classes in published sections which aren't compiled with $M+
...
git-svn-id: trunk@7655 -
2007-06-13 21:04:51 +00:00
daniel
b635d89ffa
* Fix overload selection code.
...
git-svn-id: trunk@7654 -
2007-06-13 20:49:13 +00:00
florian
078f6e05fa
* typos corrected
...
git-svn-id: trunk@7653 -
2007-06-13 20:49:09 +00:00
florian
c7037df254
+ classrefdef is assignment compatible to pointers in delphi mode
...
git-svn-id: trunk@7648 -
2007-06-13 20:21:33 +00:00
daniel
563b325382
- Remove another test for u64bit now unnecessary.
...
git-svn-id: trunk@7647 -
2007-06-13 14:04:21 +00:00
daniel
573aa1cd34
* Make powerpc compile again.
...
git-svn-id: trunk@7642 -
2007-06-13 11:05:15 +00:00
daniel
4703ae318b
* Change a loop counter from aint to integer; the "to" part of the loop
...
is of type integer. Fixes compiling ppcx64 with ppc386.
git-svn-id: trunk@7641 -
2007-06-13 08:02:21 +00:00
daniel
dc0d88b076
+ Forgot to add constexp unit.
...
git-svn-id: trunk@7640 -
2007-06-13 07:44:14 +00:00
daniel
9adb202a92
* Rework the constexprint to allow operations from low(int64) to high(qword).
...
+ Some initial work on a formaldef which also carries the typinfo of a parameter.
git-svn-id: trunk@7639 -
2007-06-13 07:41:18 +00:00
daniel
b15740c0e5
- Remove -Mgpc from command line options.
...
git-svn-id: trunk@7637 -
2007-06-13 06:13:51 +00:00
florian
54fc70395e
* experimental patch to fix #9059 and friends in case -Oodfa is used
...
git-svn-id: trunk@7635 -
2007-06-12 09:58:31 +00:00
Jonas Maebe
a087bb50d0
* fixed stabs debug info for bitpacked records
...
git-svn-id: trunk@7634 -
2007-06-12 09:32:02 +00:00
Jonas Maebe
af97f3350b
* fixed bitsize of qwords in bitpacked records (mantis #9054 )
...
git-svn-id: trunk@7632 -
2007-06-11 09:11:42 +00:00
Jonas Maebe
8d13899d84
* fixed memory leak in conversion of realconstn to currency
...
git-svn-id: trunk@7630 -
2007-06-10 22:02:53 +00:00
Jonas Maebe
9b198fb1d7
* fixed memory leak in debug info generation for bitpacked records
...
git-svn-id: trunk@7629 -
2007-06-10 22:02:11 +00:00
florian
c7100799ed
+ forbid usage of $E on targets supporting no fpu emulation
...
- disabled -Cfsoft on i386
git-svn-id: trunk@7625 -
2007-06-10 17:03:26 +00:00
yury
eac1c293e4
* fixed "EInOutError : File not found" exception if .rc file not found.
...
git-svn-id: trunk@7624 -
2007-06-10 13:04:56 +00:00
Jonas Maebe
51ebaa592f
* fixed tests/webtbf/tb0041 broken by r7603: check whether ordinals
...
are compatible before optimizing the checks away
git-svn-id: trunk@7616 -
2007-06-09 20:17:46 +00:00
Jonas Maebe
c77d74127b
* fixed some record size checks
...
(some are still broken, but can't be fixed currently because
def.size/sym.getsize return an aint, which means low(aint)
in case of structures with a size = high(aint)+1)
git-svn-id: trunk@7614 -
2007-06-09 19:48:14 +00:00
florian
0e96eda236
+ some sse4 instructions supported, resolves #9046
...
git-svn-id: trunk@7613 -
2007-06-09 19:45:06 +00:00
florian
fe69d19f9c
* align stack properly if no stack frame is generated, should resolve #8986
...
git-svn-id: trunk@7611 -
2007-06-09 18:46:35 +00:00
Jonas Maebe
10341eabaa
* don't allow taking the address of ordinal bitpacked array elements
...
whose size is not a power of two
+ some more packed array/record tests
git-svn-id: trunk@7610 -
2007-06-09 18:13:04 +00:00
Jonas Maebe
2af8ca7a19
* allow taking the address of fields of packed records iff
...
* their offset is a multiple of 8 bits; and
* their size is a multiple of 8 bits; and
* if it's a range type, the size is also a power of 2
git-svn-id: trunk@7609 -
2007-06-09 17:52:20 +00:00
Jonas Maebe
22c1d5915e
* enable break and continue in macpas mode (mantis #9032 )
...
git-svn-id: trunk@7608 -
2007-06-09 17:23:11 +00:00
Jonas Maebe
20b99dade3
- reverted r7600, see additional comments in mantis #9027
...
git-svn-id: trunk@7606 -
2007-06-09 17:14:28 +00:00
daniel
60dee7fcf0
+ New optimization: Comparisions with evaluate to true or false if the
...
constant is outside the range of type bounds of the left expression.
I.e. "if a>0" evaluates to true if a is declared with type 1..10,
as all legal values of a are greater than zero.
git-svn-id: trunk@7603 -
2007-06-09 14:03:56 +00:00