nickysn
da5868b668
+ added method TBits.CopyBits for fast copying
...
git-svn-id: trunk@40524 -
2018-12-11 15:52:09 +00:00
pierre
e7aadde92f
Modify tbs/tb0588.pp to check that a warning is issued about non-initialized return value, moved to tbf directory
...
git-svn-id: trunk@40521 -
2018-12-11 08:47:59 +00:00
Jonas Maebe
52fec8a94a
* when optimising subsetreg moves for aarch64, take into account the fact
...
that the subsetreg itself can be 32 or 64 bit (mantis #33607 )
git-svn-id: trunk@40512 -
2018-12-09 14:46:52 +00:00
marcus
1bde958889
arosunits, morphunits, os4units: serial, CreateExtIO(), DeleteExtIO() for all amiga systems
...
git-svn-id: trunk@40497 -
2018-12-07 19:28:12 +00:00
michael
fd609fe19c
* Web browser compiler, initial implementation
...
git-svn-id: trunk@40471 -
2018-12-04 21:42:53 +00:00
florian
eeadf618b8
+ abi tag for i386
...
* arm abi tag moved into pascal file
git-svn-id: trunk@40454 -
2018-12-02 22:56:12 +00:00
michael
07f98847ca
* Refactored so compiler itself is filesystem agnostic
...
git-svn-id: trunk@40450 -
2018-12-02 18:41:38 +00:00
michael
aa956d2f70
* Refactor so PCU support is separated out
...
git-svn-id: trunk@40427 -
2018-12-01 19:03:41 +00:00
pierre
044fae62ea
Fix bug report 34605 and add corresponding test
...
git-svn-id: trunk@40377 -
2018-11-27 10:19:36 +00:00
Jonas Maebe
d1361ca6ed
* fixed adjustments of lower/upper bounds in range test optimization in case
...
of strictly smaller/greater comparisons (mantis #34385 )
git-svn-id: trunk@40344 -
2018-11-17 22:38:31 +00:00
svenbarth
251dfb6776
* don't allow constants of the record type that is currently being parsed; this would fail as soon as another field is added after the constant declaration
...
+ added tests
Note: unlike what bug report 27880 suggests Delphi also does *NOT* allow this (at least a current Delphi Tokyo) and fails with a "type is not completely defined" error, so this test belongs into the "failure" category
git-svn-id: trunk@40285 -
2018-11-11 22:08:29 +00:00
florian
9f16c34329
+ initial work for tls-based threadvar support on arm-linux
...
git-svn-id: trunk@40267 -
2018-11-07 22:02:58 +00:00
yury
4682ac269d
* Further improvement for r40180:
...
An uninitialized function Result of a managed type needs special handling.
When passing it as a var parameter a warning need to be emitted, since a user
may expect Result to be empty (nil) by default as it happens with local vars
of a managed type. But this is not true for Result and may lead to serious issues.
The only exception is SetLength(Result, ?) for a string Result. A user always
expects undefined contents of the string after calling SetLength(). In such
case a hint need to be emitted.
+ Tests for this.
git-svn-id: trunk@40216 -
2018-11-04 15:37:52 +00:00
florian
34d11046e0
* wrapcomplexinlinepara takes care of function results which need different temp. handling, resolves #34438
...
* tw34438 failed with -O3, fixes also dfa for inline functions returning results as "complex" parameter
git-svn-id: trunk@40202 -
2018-11-03 17:31:10 +00:00
Mattias Gaertner
a089496183
pas2js: logger adapted for pas2js
...
git-svn-id: trunk@40041 -
2018-10-25 19:43:08 +00:00
Mattias Gaertner
703f5ea97e
pas2js: started nodepas2js
...
git-svn-id: trunk@40037 -
2018-10-25 16:09:20 +00:00
Jonas Maebe
9bd931e931
* make "formal const/var" parameters the least preferred conversion
...
(mantis #32179 )
- removed code to handle conversion to formaldef parameters that are not by
reference (so the default conversion preference is kept)
git-svn-id: trunk@40012 -
2018-10-21 21:02:17 +00:00
Jonas Maebe
2a3eeab96d
* support for constant char/bool/enum indices in typed constant
...
index expressions (mantis #34055 )
* prevent all indirect structure indexing instead of only
ansi/wide/unicodestrings
git-svn-id: trunk@40010 -
2018-10-21 18:48:41 +00:00
Jonas Maebe
2c7c0d1144
* handle widechar constants directly in the scanner, instead of in the
...
overload selection (where you can't even know whether the string is
a valid widechar constant) (mantis #33875 )
git-svn-id: trunk@40009 -
2018-10-21 17:34:00 +00:00
Jonas Maebe
60277dda09
* fix crash when checking load nodes during inlining in case they don't
...
have a symtable set (happens for internally generated labels, like
$raiseaddr) (mantis #34442 )
git-svn-id: trunk@40008 -
2018-10-21 15:53:46 +00:00
michael
65433a005e
* Fix bug #0034429 , replace now can use escape sequences, and lineending can be set
...
git-svn-id: trunk@39993 -
2018-10-20 12:09:07 +00:00
pierre
92acd38f40
Fix for bug report #34380
...
git-svn-id: trunk@39986 -
2018-10-18 20:21:54 +00:00
yury
7b150102bf
+ Added test object files for x86_64-android.
...
git-svn-id: trunk@39964 -
2018-10-17 19:39:17 +00:00
yury
7ddf0a635c
+ Added the auto-generated list syscalls for mips64-android. It will be needed when mips64 is supported.
...
git-svn-id: trunk@39959 -
2018-10-17 17:16:05 +00:00
yury
e367577bf1
+ added support for x86_64-android target.
...
git-svn-id: trunk@39956 -
2018-10-17 16:56:27 +00:00
Jonas Maebe
0b246f3dbd
* converted Boolean8 to an internal type, and mapped Boolean to the
...
new internal pasbool1(type) (part of mantis #34411 )
o apply the _Bool x86-64 parameter passing rules only to pasbool1
git-svn-id: trunk@39949 -
2018-10-16 21:14:18 +00:00
florian
eea088c5f5
* allow nil to be assigned to generic types, resolves #34037
...
* niln is also a constant node
git-svn-id: trunk@39934 -
2018-10-14 07:38:13 +00:00
yury
9d7308df42
* Android: Reworked the startup code to use no assembly instructions. Generic assembler startup files contains only section data and are compiled for each CPU.
...
* Android: argc and argv are correct for shared libraries.
git-svn-id: trunk@39905 -
2018-10-08 16:48:41 +00:00
yury
da39d06d80
+ Added test object files for aarch64-android.
...
git-svn-id: trunk@39902 -
2018-10-08 08:29:23 +00:00
svenbarth
ea5f407c49
+ add a TFunctionCallManager that provides built in Invoke() support for x86_64-win64
...
git-svn-id: trunk@39894 -
2018-10-07 12:26:03 +00:00
svenbarth
a8b2ad31d1
* fix for Mantis #34355 : correctly check whether the array constructor is empty (aka []) or not
...
git-svn-id: trunk@39882 -
2018-10-07 12:25:24 +00:00
florian
5604e98b1c
+ lazarus project files for the avx assembler test generators
...
git-svn-id: trunk@39873 -
2018-10-07 10:10:16 +00:00
yury
8c59eb1ce5
* Regenerated makefiles to support aarch64-android.
...
git-svn-id: trunk@39863 -
2018-10-06 09:36:03 +00:00
yury
671d31df1d
+ Added support for the aarch64-android target.
...
git-svn-id: trunk@39862 -
2018-10-06 09:33:09 +00:00
michael
e6574526db
* Fix bug #34348
...
* Backport pas2js changes/bugfixes
* Split extjs dataset from json dataset
git-svn-id: trunk@39841 -
2018-09-30 08:15:18 +00:00
florian
352fb866ef
* is_range_test returns false if "lower" bound is greater than "upper" bound
...
git-svn-id: trunk@39837 -
2018-09-27 20:24:52 +00:00
florian
a34d4e715c
Merged riscv_new branch
...
git-svn-id: trunk@39813 -
2018-09-26 19:49:08 +00:00
svenbarth
bf91991bae
* fix for Mantis #34332 : allow 2 parameter form of Copy also for ShortString variables
...
+ added test
git-svn-id: trunk@39802 -
2018-09-25 19:10:06 +00:00
svenbarth
9a99ab9dda
* fix for Mantis #34287 : correctly handle "inherited method" calls if "method" is a generic (no matter if it's mode Delphi or not)
...
+ added test
git-svn-id: trunk@39787 -
2018-09-21 15:16:18 +00:00
svenbarth
06267006f3
* explicitely handle the boolean types to determine the bit size as all of them have the bit size 1
...
+ added test
git-svn-id: trunk@39786 -
2018-09-21 13:24:49 +00:00
marco
25369b556d
* set EOL properties on data2inc.exm since it is a textfile.
...
git-svn-id: trunk@39784 -
2018-09-21 08:28:46 +00:00
svenbarth
00663728b5
* fix for Mantis #34239 : the parent VMT is an indirect reference due to the changes for dynamic packages for quite some time already, so handle that accordingly
...
+ added test
git-svn-id: trunk@39715 -
2018-09-08 14:56:09 +00:00
svenbarth
46ef16ac11
* generate an error if the type parameters of a generic routine's definition does not match with its interface or forward declaration
...
+ added tests
git-svn-id: trunk@39703 -
2018-09-02 16:20:29 +00:00
svenbarth
50323043c1
* generate an error if the type parameters of the record, object or class do not match with its declaration
...
+ added test
git-svn-id: trunk@39702 -
2018-09-02 16:20:25 +00:00
svenbarth
072699d38a
* protect the destructors of tabstractrecordsymtable and twithsymtable against executing when called with a refcount > 1 (this fixes Mantis #34210 )
...
+ added simplified test
git-svn-id: trunk@39693 -
2018-08-31 19:16:45 +00:00
svenbarth
10886d8cef
* fix for Mantis #34206 : when specializing nested routines of a generic routine we don't need access to their genericdef (which isn't available anyway in other units when loading from PPU) as their definition is completely contained in the token stream
...
+ added simplified test for the problem
git-svn-id: trunk@39692 -
2018-08-31 16:11:05 +00:00
marco
315fe21718
* deprecations, remove oldlinux.
...
git-svn-id: trunk@39663 -
2018-08-23 07:57:56 +00:00
marco
9b969c6cca
* second part processunicode commit.
...
git-svn-id: trunk@39627 -
2018-08-18 13:56:21 +00:00
marco
b7e6492119
* Unicode version TProcess in two commits.
...
* first misc files & rename process.pp -> processbody.inc
Next commit will add new process.pp + update of processbody.inc to preserve history.
git-svn-id: trunk@39626 -
2018-08-18 13:55:11 +00:00
florian
a825a66d01
* IntPower inverts the base first for negative exponents and multiplies then, resolves #34124
...
git-svn-id: trunk@39621 -
2018-08-16 20:45:35 +00:00