florian
93c5eae528
* accept dereferences in generics definitions, resolves #33700 properly
...
git-svn-id: trunk@39447 -
2018-07-13 21:00:33 +00:00
florian
0c6cf12fbf
+ support for the directive $EXCESSPRECISION
...
git-svn-id: trunk@39443 -
2018-07-12 21:39:50 +00:00
nickysn
374a8281e7
+ added unit ports for win16
...
git-svn-id: trunk@39441 -
2018-07-12 14:24:46 +00:00
nickysn
7df861487b
* use include files in the unix ports unit as well
...
+ add portsh.inc and ports.inc for x86_64 as well
git-svn-id: trunk@39420 -
2018-07-09 14:42:01 +00:00
michael
bfd07c6233
* Small demo showing how to tokenize a file into words
...
git-svn-id: trunk@39419 -
2018-07-09 11:39:09 +00:00
michael
dc1b0ae2c7
* Add unicode version of the regexpr unit, from same source
...
git-svn-id: trunk@39418 -
2018-07-09 11:33:04 +00:00
michael
ed4b94706b
* HTML search database example
...
git-svn-id: trunk@39415 -
2018-07-08 19:46:15 +00:00
florian
0eea2141f6
* patch by J. Gareth Moreton: clarity in directive conflict error messages, resolves #33754
...
git-svn-id: trunk@39407 -
2018-07-07 14:46:01 +00:00
florian
96e92527e9
* constant folding of not must check if the deftype is really an orddef, resolves #33696
...
git-svn-id: trunk@39406 -
2018-07-07 14:17:41 +00:00
svenbarth
8df686ed2e
* Mantis #33898 is fixed by the fix for String type helpers as well
...
git-svn-id: trunk@39401 -
2018-07-06 15:57:23 +00:00
svenbarth
ec374c196e
* Mantis #33840 is fixed by the fix for String type helpers
...
git-svn-id: trunk@39400 -
2018-07-06 15:57:17 +00:00
svenbarth
441fc2fab6
* also parse postfix operators after parsing a _STRING token (required for class functions on type helpers for String)
...
+ added tests
git-svn-id: trunk@39399 -
2018-07-06 15:57:11 +00:00
nickysn
0ea3570b96
* moved the interface and implementation parts of the go32v2 ports unit to
...
include files portsh.inc and ports.inc in the i386 rtl directory
git-svn-id: trunk@39397 -
2018-07-06 15:52:18 +00:00
nickysn
5318a04a5b
* moved the interface and implementation parts of the i8086-msdos ports unit to
...
include files portsh.inc and ports.inc in the i8086 rtl directory
git-svn-id: trunk@39396 -
2018-07-06 15:41:44 +00:00
michael
fca7e26ed6
* Codepage-aware, allow unicode, refactoring of SQLDB code, add PG connector
...
git-svn-id: trunk@39381 -
2018-07-04 13:15:28 +00:00
nickysn
26a3ac3fd4
* moved the fpc_in_x86_*port* constants to the system unit in cpuinnr.inc in the
...
i8086, i386 and x86_64 rtl directories. This is done for consistency with
other compiler internal function numbers (which are declared in innr.inc).
git-svn-id: trunk@39367 -
2018-07-03 21:30:43 +00:00
nickysn
fdc896ad0a
+ inline support for the x86 'in' and 'out' instructions. Currently only enabled
...
in the i8086-msdos 'ports' unit, but will be enabled on other targets (e.g.
go32v2) in the future as well. 32-bit 'in' and 'out' not inlined on i8086, but
will be on i386 and x86_64.
git-svn-id: trunk@39362 -
2018-07-03 17:01:42 +00:00
florian
b70fc52874
* patch by Ondrej Pokorny: the stored property modifier does not delete the inherited default value anymore, resolves #33564
...
git-svn-id: trunk@39357 -
2018-07-01 20:11:13 +00:00
florian
eb61923762
* patch by Ondrej Pokorny: The nodefault is now inherited from parent class, resolves #33563
...
git-svn-id: trunk@39356 -
2018-07-01 19:01:41 +00:00
florian
9af9658fa7
* first parameter of SetLength must be valid, as it is read
...
git-svn-id: trunk@39347 -
2018-06-30 11:25:43 +00:00
michael
d4f2a593d4
* Update from Maciej Izak, bug ID #33921
...
git-svn-id: trunk@39345 -
2018-06-29 20:43:21 +00:00
nickysn
e813a11e85
+ support TP7-compatible @proc^ (as in FillChar(@proc^,...))
...
git-svn-id: trunk@39343 -
2018-06-29 14:16:35 +00:00
michael
bfc5d63fde
* Add webidl2pas
...
git-svn-id: trunk@39293 -
2018-06-23 14:02:55 +00:00
michael
e655b9137b
* webidl added
...
git-svn-id: trunk@39292 -
2018-06-23 13:57:45 +00:00
michael
6abf361557
* New common base for all pascal code generator units in fcl
...
git-svn-id: trunk@39290 -
2018-06-23 13:56:38 +00:00
svenbarth
a2b58b842b
+ add support for threadvars in records
...
+ added tests
git-svn-id: trunk@39289 -
2018-06-23 13:49:16 +00:00
svenbarth
c3ca96279a
+ add support for threadvars inside classes
...
+ added tests
git-svn-id: trunk@39288 -
2018-06-23 13:49:12 +00:00
svenbarth
0a45d7a774
+ add a message that is used when a threadvar section is started inside a class or record without the "class"
...
specifier
git-svn-id: trunk@39286 -
2018-06-23 13:49:05 +00:00
svenbarth
ff407c56d9
* extend scanning of $modeswitch to support not only + and -, but also ON and OFF like other switches
...
+ added tests
git-svn-id: trunk@39280 -
2018-06-22 21:29:08 +00:00
svenbarth
7522a34a67
+ add a message that can be used if an internal operator hides an existing operator overload
...
git-svn-id: trunk@39260 -
2018-06-20 19:53:50 +00:00
svenbarth
97acf24290
+ add a new modeswitch ArrayOperators which is set by default in Delphi modes that enables the internal array operators (currently only "+")
...
git-svn-id: trunk@39259 -
2018-06-20 19:53:43 +00:00
svenbarth
9b45f58c0b
+ add flags that allow checking for overloads with isbinaryoverloaded() and isunaryoverloaded() without modifying the passed in node or even checking for normally non-overloadable operators
...
git-svn-id: trunk@39258 -
2018-06-20 19:53:34 +00:00
svenbarth
b75324a4f2
* move RTTI declarations to their own header file
...
git-svn-id: trunk@39248 -
2018-06-20 18:59:57 +00:00
florian
400861a907
* fixed TBits.NotBits, it is just an Xor operation, resolves #33706
...
git-svn-id: trunk@39243 -
2018-06-19 20:38:15 +00:00
svenbarth
c495f10b29
+ added tests for Mantis #33839 which is now fixed with the recent changes
...
git-svn-id: trunk@39234 -
2018-06-15 13:49:33 +00:00
svenbarth
be0d51d64c
* allow $MinEnumSize, $PackSet and $PackRecords to be used with $Push and $Pop
...
+ added tests
git-svn-id: trunk@39215 -
2018-06-12 19:40:45 +00:00
florian
21d785e41b
* do not unroll loops if the counter variable is accessed outside the current scope
...
git-svn-id: trunk@39163 -
2018-06-03 15:12:48 +00:00
florian
3b3e33d863
+ correctly set var state of addr and frame in raise statements, resolves #33818
...
git-svn-id: trunk@39162 -
2018-06-03 09:31:19 +00:00
nickysn
58be30a0fd
+ added test tasm27a.pp - similar to tasm27.pp, but for i386 and checked against Delphi
...
git-svn-id: trunk@39133 -
2018-05-28 15:34:46 +00:00
svenbarth
f077c7d950
+ add support for Unicode code point constants > $FFFF; they are converted to a surrogate pair so they are in
...
fact a UnicodeString constant
+ added tests
git-svn-id: trunk@39123 -
2018-05-27 14:06:19 +00:00
svenbarth
199b5809a3
* optimize "dynarr := dynarr + [elem]" to "Insert(elem, dynarr, High(SizeInt))" and "dynarr := [elem] + dynarr" to "Insert(elem, dynarr, 0)" (we need to do this in the typecheck of taddnode as otherwise the array constructor is already converted)
...
+ added test
* adjusted test for Mantis #30463 as p1 triggers the optimization as well
git-svn-id: trunk@39119 -
2018-05-25 16:03:56 +00:00
svenbarth
b94a8c93a5
* test (for Mantis #5516 ; 3531 is the old bug ID) is valid now that we have dynamic array initializers
...
git-svn-id: trunk@39105 -
2018-05-24 19:56:35 +00:00
florian
8f472d5212
* check for more controll flow statements before doing loop unrolling
...
git-svn-id: trunk@39083 -
2018-05-21 15:46:02 +00:00
svenbarth
b7cc225149
* revert r39043 and r39045 which disallow static array constants inside dynamic constants for Delphi modes
...
git-svn-id: trunk@39078 -
2018-05-21 08:13:17 +00:00
svenbarth
dcdb151add
* prohibit static array constants inside dynamic array constants for Delphi modes
...
+ added test
git-svn-id: trunk@39045 -
2018-05-20 11:50:27 +00:00
svenbarth
a29a6abc55
+ add support for Delphi's dynamic array constant syntax ("[...]") in Delphi modes
...
git-svn-id: trunk@39042 -
2018-05-20 11:50:19 +00:00
svenbarth
08dd4e5445
+ add support for dynamic array constants
...
+ added test
git-svn-id: trunk@39041 -
2018-05-20 11:50:16 +00:00
nickysn
b80642c384
+ started implementing support for generating Microsoft CodeView debug
...
information. Only enabled on i8086 (for now). Does not do much yet, but
hopefully, soon it'll start emitting line number information for i8086-msdos
that is usable by DOS debuggers.
git-svn-id: trunk@39006 -
2018-05-16 15:25:33 +00:00
svenbarth
7990b2e3f3
* apply patch from J. Gareth Moreton to implement Int() for SSE (currently only used on Win64)
...
+ added test
git-svn-id: trunk@38993 -
2018-05-14 21:08:04 +00:00
marcus
7ec23ba0bd
os4units: datatypes library unit
...
git-svn-id: trunk@38989 -
2018-05-13 19:46:12 +00:00