Commit Graph

26914 Commits

Author SHA1 Message Date
Michaël Van Canneyt
fd1f7b2ef8 * Shorter form of copy, remark by Alexey Torgashin 2023-07-13 21:12:46 +02:00
Michaël Van Canneyt
d3111517d5 * More option processing 2023-07-13 17:24:34 +02:00
Michaël Van Canneyt
28a3223b6b * Handle some options required by android, nasm and darwin assemblers 2023-07-13 14:31:11 +02:00
Michaël Van Canneyt
125bd9d5e9 Create invoke helper if requested and reference it in RTTI 2023-07-13 07:32:21 +00:00
Michaël Van Canneyt
d3cc976551 * Mark method for invoke helper 2023-07-13 07:32:21 +00:00
Michaël Van Canneyt
7085083559 * Additional fields/enums for invoke helper 2023-07-13 07:32:21 +00:00
Michaël Van Canneyt
92f148e667 * Generate hidden class to be used for TVirtualInterface (wasm only) 2023-07-11 08:36:57 +00:00
florian
299f942d29 * change TCachedSearchRec.Attr to longint as TCachedDirectoryEntry.Attr is also a longint, resolves #40343 2023-07-09 16:20:18 +02:00
Pierre Muller
21b135a6ec Regenerate msgidx.inc and msgtxt.inc files 2023-07-07 17:21:08 +00:00
mattias
e14692f594 git ignore msg2inc binary 2023-07-07 11:17:33 +02:00
Michaël Van Canneyt
486f3a0c7f * Lowercase subtarget file, as done in compiler 2023-07-07 10:15:39 +02:00
Michaël Van Canneyt
0261a025de * Restore -aR, lost in refactoring 2023-07-07 10:15:03 +02:00
Pierre Muller
2cc319bb8e Add -Tlinux for loongarch64 compiler 2023-07-04 16:31:26 +00:00
florian
1e62913183 * check properly for the supported cpu type, resolves #40298 2023-07-02 17:53:12 +02:00
Nikolay Nikolov
f47ca0c5d1 * fixed ppudump for WebAssembly after the JS Promise Integration branch merge 2023-07-02 18:31:53 +03:00
florian
78c0c267a5 * cleanup 2023-07-01 20:54:08 +02:00
Michaël Van Canneyt
188fc9c112 * Fix compilation for ARM 2023-07-01 18:40:41 +00:00
Michaël Van Canneyt
1930aaa340 * Make use of copy() without count when rest of string is needed 2023-07-01 18:40:41 +00:00
Michaël Van Canneyt
535107a700 * Split out option parsing in one routine per letter 2023-07-01 18:40:41 +00:00
Sven/Sarah Barth
c994b5efe8 * fix #39447: when checking whether the parameters are valid for pointer arithmetic check the *correct* parameter for being valid pointer-like type (I'd say that this was a copy&paste mistake...)
+ added test
2023-06-30 17:42:39 +02:00
Sven/Sarah Barth
a20e8b9a3d * fix #40095: when searching a suitable constructor for the custom attribute don't allow the return of a procvar which can happen in Mac/TP procvar modes (like Delphi)
+ added test
2023-06-30 17:12:56 +02:00
Sven/Sarah Barth
78025d90b3 + add a tcallnodeflag value that prohibits the tcallnode.pass_typecheck to return a procvar in case of a call without parameters with a found symbol, but no suitable procdef 2023-06-30 17:11:43 +02:00
Sven/Sarah Barth
c7776d899b * in case there hasn't been an error generated with an invalid attribute declaration then print at least "illegal expression" error 2023-06-30 17:09:52 +02:00
Sven/Sarah Barth
3dc64dd67e * fix typo in comment 2023-06-30 17:02:37 +02:00
Sven/Sarah Barth
d97d34ee9c * fix #40332: apply patch by Rika to avoid a crash when an overload can't be picked outside of a function (e.g. when using intrinsics inside constants)
+ added test
2023-06-30 15:35:28 +02:00
Nikolay Nikolov
adf843196a Merge remote-tracking branch 'origin/main' into wasm_js_promise_integration 2023-06-24 15:08:18 +03:00
Sven/Sarah Barth
f721210638 * fix #40142 and #40324: don't alias the function name to the $result variable for anonymous functions unless an explicit result name is provided
+ added tests
2023-06-23 17:06:41 +02:00
Sven/Sarah Barth
34f1a3ee28 * don't insert anonymous functions into a withsymtable
+ added test
2023-06-23 17:02:15 +02:00
Sven/Sarah Barth
251af216ce * fix typo in comment 2023-06-23 16:15:33 +02:00
Sven/Sarah Barth
7133ad7ecc * a type helper that inherits from another type helper may extend a unique type helper of the parent's extended type (thus allowing to make the type helper of the original type available for the aliased type)
+ added tests
2023-06-23 16:15:33 +02:00
Sven/Sarah Barth
62cc594ca4 * for unique type aliases keep track of the original def
* increase PPU version
2023-06-23 16:15:27 +02:00
Nikolay Nikolov
06f35ae04f - rm commented out debug writeln left over from previous commit 2023-06-20 17:25:57 +03:00
Nikolay Nikolov
5c792c438d + disallow using sizeof() and bitsizeof() on WebAssembly reference types 2023-06-20 16:56:47 +03:00
Nikolay Nikolov
edbb865260 + added comment for the new error message 2023-06-20 15:39:34 +03:00
Nikolay Nikolov
fce34eb4bf + disallow WebAssembly reference types in records, objects and classes 2023-06-20 15:13:15 +03:00
Nikolay Nikolov
8ac46ed38c Merge remote-tracking branch 'origin/main' into wasm_js_promise_integration 2023-06-20 13:31:32 +03:00
Michael VAN CANNEYT
a74a35a16e * Check that system unit is actually loaded before using it to search for system symbols
(cherry picked from commit 9e5ee68887)
2023-06-19 15:33:15 +02:00
Michael VAN CANNEYT
5adde504a9 * Do not crash when module pointer is nil
(cherry picked from commit e6f71b6acc)
2023-06-19 15:22:42 +02:00
Nikolay Nikolov
bbedb958f6 * bump CurrentPPULongVersion 2023-06-19 15:54:33 +03:00
Nikolay Nikolov
76474c85bd + comments for the new error messages 2023-06-19 15:53:15 +03:00
Michaël Van Canneyt
c94531645a * Implement -t options for fpc executable
* Remove some debugging statements
* Refactor processorname -> suffix name for clarity of flow
* Refactor initialization of binary and processor name for clarity of flow
* Rename variables for clarity
* subroutine to simplify command-line handling
* Limited subtarget config file parsing to detect -V
* Specifying multiple -V should not give an error but warn, as for -T or -t
2023-06-19 07:04:50 +00:00
Michael VAN CANNEYT
5605cebd46 * Implement -t and -x options
* Fix spurious warning of already specified -t
* If no subtarget file found, error out instead of hint/warn
* Globals needs subtarget for macro substitution
2023-06-19 07:04:50 +00:00
Nikolay Nikolov
8bd18fc6d3 Merge remote-tracking branch 'origin/main' into wasm_js_promise_integration 2023-06-17 17:11:23 +03:00
Nikolay Nikolov
322befbf56 + added mutable globals to the target switches section 2023-06-17 17:00:36 +03:00
Nikolay Nikolov
389646adee * fixed erroneously duplicated code from previous commit 2023-06-17 13:39:29 +03:00
Nikolay Nikolov
8acf2e3ff3 + print a proper error message if a suspending external is used on a non-WebAssembly platform 2023-06-17 12:46:44 +03:00
Nikolay Nikolov
553cee72eb * tsk_wasm_suspending renamed tsk_wasm_suspending_first 2023-06-17 12:28:12 +03:00
Sven/Sarah Barth
0b7a771ca9 * fix #40221: don't allow a conversion from an anonymous function to a procvar type if compare_defs_ext already rejected them
+ added tests
2023-06-16 17:28:50 +02:00
Sven/Sarah Barth
08dca09c7e * revert 430bcac389 as with the change that the functions to insert hidden parameters are idempotent this is no longer required and also wrong as uses of the deleted symbols aside from Self and the framepointer would be left dangling 2023-06-16 16:16:58 +02:00
Sven/Sarah Barth
d5a538b590 * ensure that the functions that insert the hidden parameters (function result, open array high parameters, etc.) are idempotent 2023-06-16 16:15:45 +02:00