florian
57dc416d96
+ replace appropriate if statements by min/max intrinsics
...
+ support min/max intrinsic on xtensa
git-svn-id: trunk@47693 -
2020-12-05 22:00:59 +00:00
florian
6e4997265c
+ min/max intrinsics for internal use by the compiler
...
git-svn-id: trunk@47692 -
2020-12-05 22:00:58 +00:00
florian
28d248c9d4
* cleanup merge overlefts
...
git-svn-id: trunk@47691 -
2020-12-05 22:00:57 +00:00
pierre
19d5e43615
Avoid internalerror in RemoveCurrentP for arm compiler
...
git-svn-id: trunk@47690 -
2020-12-05 21:23:09 +00:00
pierre
0189276a12
Raise internalerror inside RemoveCurentP is called with p=hp1, because it leads to using a class instance after it has been freed
...
git-svn-id: trunk@47689 -
2020-12-05 21:22:18 +00:00
florian
4f3a21eeec
* don't do x*x -> optimziation for xtensa as it causes a recursive call in sqr(...)
...
git-svn-id: trunk@47688 -
2020-12-04 22:43:55 +00:00
svenbarth
deaff6f7fe
* fix for Mantis #38151 : when a Variant is passed by reference to a IDispatch property then invoke it using DISPATCH_PROPERTYPUTREF instead of DISPATCH_PROPERTYPUT
...
+ added test
git-svn-id: trunk@47687 -
2020-12-04 22:07:39 +00:00
svenbarth
69e6f3dcbb
* if a call inside a generic's code that involves generic type arguments can't be clearly determined then postpone it till specialization in the hope that the type will be clear then
...
+ added test
git-svn-id: trunk@47686 -
2020-12-04 22:07:34 +00:00
Mattias Gaertner
0be298802b
pastojs: filer: record values
...
git-svn-id: trunk@47684 -
2020-12-04 13:54:29 +00:00
yury
d72566169e
* The code generator of the exit statement must set the fc_gotolabel flag in flowcontrol for inlined routines/code blocks. It fixes the incorrect assumption that such exit statements terminate the main routine.
...
git-svn-id: trunk@47683 -
2020-12-04 12:33:47 +00:00
Mattias Gaertner
d1cfb15a2a
pastojs: filer: fixed checking signature in interface used unit referenced by implementation and needing indirect implementation unit
...
git-svn-id: trunk@47682 -
2020-12-04 11:06:42 +00:00
florian
9c6bdcfbb7
* fix in r47632 should be enabled for all targets as it is a stack tainting
...
parameter
git-svn-id: trunk@47680 -
2020-12-03 21:22:07 +00:00
Mattias Gaertner
b90504a458
pastojs: filer skip not fully specialized
...
git-svn-id: trunk@47679 -
2020-12-03 20:53:13 +00:00
Mattias Gaertner
988b67ae71
pastojs: filer: fixed specialize A<B<C>>
...
git-svn-id: trunk@47677 -
2020-12-03 16:20:21 +00:00
Mattias Gaertner
055cfa28b7
fcl-passrc: resolver: fixed specialize name of A<B<C>>
...
git-svn-id: trunk@47676 -
2020-12-03 16:20:10 +00:00
pierre
0cc91a50c7
Fix z80 compiler failure after change to ConcatConstSymbol in commit #47668
...
git-svn-id: trunk@47675 -
2020-12-03 11:05:36 +00:00
Mattias Gaertner
0eac775cea
pastojs: filer: fixed restoring overload names of specialized methods
...
git-svn-id: trunk@47674 -
2020-12-03 10:44:32 +00:00
Mattias Gaertner
7b223eafe1
pastojs: filer: read inline specialize expr
...
git-svn-id: trunk@47673 -
2020-12-03 09:48:52 +00:00
Mattias Gaertner
e2fb9a43b4
pastojs: filer: skip generic references to generic types
...
git-svn-id: trunk@47672 -
2020-12-03 08:42:26 +00:00
Mattias Gaertner
e17365b12a
pastojs: fixed specialize impl procs
...
git-svn-id: trunk@47670 -
2020-12-03 00:02:19 +00:00
Mattias Gaertner
c1496a266e
fcl-passrc: resolver: use declproc signature
...
git-svn-id: trunk@47669 -
2020-12-03 00:01:54 +00:00
florian
482698e566
+ add endsym to ConcatConstSymbol
...
git-svn-id: trunk@47668 -
2020-12-02 21:44:12 +00:00
pierre
6230de31bb
* Second patch xml-node-dump-defs.patch from J. Gareth Moreton from bug report 36882.
...
With same changes to ensure that xmllint find no errors in generated xml files.
git-svn-id: trunk@47667 -
2020-12-02 21:01:40 +00:00
Mattias Gaertner
01766a3ff7
pas2js: filer: fixed storing reference to await and debugger
...
git-svn-id: trunk@47666 -
2020-12-02 15:11:35 +00:00
Mattias Gaertner
1c1e994ffc
pastojs: delayed inits only for fully specialized types
...
git-svn-id: trunk@47665 -
2020-12-02 13:58:53 +00:00
pierre
a7fa31aa10
Fix i8086 compiler failure due to move of printnodeindention variable into verbose unit in commit #47658
...
git-svn-id: trunk@47664 -
2020-12-02 09:29:08 +00:00
florian
cbec395907
* test needs -Cg to trigger the warning
...
git-svn-id: trunk@47661 -
2020-12-01 21:54:45 +00:00
florian
0b63068ad2
* dir_push might not flush pending switch changes but has to read the pending
...
record if needed
git-svn-id: trunk@47660 -
2020-12-01 21:39:38 +00:00
florian
8b06b43c1a
* meanwhile all linux targets support the checkpointer directive
...
git-svn-id: trunk@47659 -
2020-12-01 21:18:47 +00:00
pierre
af17e9460b
Apply patch proposed by J. Gareth Moreton in:
...
bug report #0036882 : [Feature] Class and record definition XML dump extension
These patches extend the node dump feature (enabled with DEBUG_NODE_XML)
so it also dumps class and record definitions to the XML file. They are contained within <definition> tags.
Currently only fields and constants are dumped to the XML file. Methods, constant and variable definitions may be added later.
git-svn-id: trunk@47658 -
2020-12-01 11:45:14 +00:00
pierre
9901a11d22
Add internalerror when V_Error level is used in Test_double_checksum code, only with TEST_CRC_ERROR macro set
...
git-svn-id: trunk@47657 -
2020-12-01 10:41:16 +00:00
lacak
738959ce59
fcl-db: sqlite: add support for journal_mode pragma (beside foreign_keys pragma). This pragma must be set after connect before any transaction starts.
...
git-svn-id: trunk@47656 -
2020-12-01 09:31:31 +00:00
svenbarth
67d2ecc09f
* with the recent ShortString changes this test is no longer needed as it was added exactly to check the condition I removed, so disable it for 3.2.1 and newer (as I want to merge these changes back to fixes)
...
git-svn-id: trunk@47655 -
2020-12-01 06:39:31 +00:00
florian
7f07c9f94d
+ range check enumeration array indicies, range checking is after all a safety mean
...
git-svn-id: trunk@47652 -
2020-11-30 22:08:04 +00:00
florian
792b629aa6
+ -Xa option: generate code which allows to use more than 2 GB of static data on 64 Bit targets
...
+ implemented support for x86-64
* more than 2 GB static data requires to use the --no-relax option on linux
git-svn-id: trunk@47651 -
2020-11-30 22:07:34 +00:00
florian
c890a126fe
* allow an AT&T suffix for movabs
...
git-svn-id: trunk@47650 -
2020-11-30 22:07:33 +00:00
Mattias Gaertner
fc0b513c3a
pastojs: shortrefglobals: unit initialization and empty implementation
...
git-svn-id: trunk@47649 -
2020-11-30 22:04:34 +00:00
michael
a82ac3fb6a
* Only set cursor name for selectable queries
...
git-svn-id: trunk@47643 -
2020-11-30 17:13:07 +00:00
michael
a9e7d1ef0d
* Allow for async apply updates
...
git-svn-id: trunk@47641 -
2020-11-30 14:55:46 +00:00
Mattias Gaertner
05065e1d86
pastojs: filer: add identifiers to scope for immediate specializations of TPasSpecializeType
...
git-svn-id: trunk@47639 -
2020-11-29 23:12:26 +00:00
florian
8ddcb34e60
* fix test for x86_64 targets using the SysV abi
...
git-svn-id: trunk@47638 -
2020-11-29 21:21:34 +00:00
florian
b7e2b751cf
* fix test for targets not having a real wide string
...
git-svn-id: trunk@47637 -
2020-11-29 20:53:15 +00:00
ondrej
706d89d6cc
* GlobalNameSpace must EndWrite before it is released to unlock the critical section
...
git-svn-id: trunk@47636 -
2020-11-29 18:49:36 +00:00
ondrej
f982317ebd
* cwstring: open iconv with the transliterate flag if iconvctl is not available
...
git-svn-id: trunk@47635 -
2020-11-29 17:09:19 +00:00
svenbarth
3597696e98
* fix for Mantis #38145 : allow overloading of assignment operators that return ShortStrings with a specific size
...
+ added tests
The following rules for using these operator overloads as *implicit* overloads apply (Delphi compatible):
- if a found assignment operator returns a default ShortString then that is used
- if only one assignment operator to a String[x] is found then that is used
- otherwise the assignment is not possible
The explicit assignment checks for an exact match (and falls back for an implicit assignment). This is not entirely Delphi compatible as Delphi seems to favor the first found symbol in that case, but sometimes also not... :/
git-svn-id: trunk@47634 -
2020-11-29 15:47:52 +00:00
ondrej
6854f171d1
* revert r47631: cwstring: open iconv with the transliterate flag instead of setting it later with iconvctl because it may be unavailable
...
git-svn-id: trunk@47633 -
2020-11-29 14:59:18 +00:00
florian
c47d6d7af0
* check if an invisible parameter for the result occupies parameter space
...
git-svn-id: trunk@47632 -
2020-11-29 13:38:33 +00:00
ondrej
91229dcee9
* cwstring: open iconv with the transliterate flag instead of setting it later with iconvctl because it may be unavailable
...
git-svn-id: trunk@47631 -
2020-11-29 12:08:55 +00:00
ondrej
a33256c1fb
* cwstring: try to load the iconv library with .6 suffix as well
...
git-svn-id: trunk@47630 -
2020-11-29 10:53:23 +00:00
florian
fbb2e63fea
+ #QLvember work: stack frame optimization for m68k
...
git-svn-id: trunk@47629 -
2020-11-29 10:16:00 +00:00