Commit Graph

2812 Commits

Author SHA1 Message Date
Sven/Sarah Barth
b051e7667c * fix #39978: ensure that Self is captured when a method of the current class is captured into a function reference
+ added test
2022-11-06 22:01:49 +01:00
Sven/Sarah Barth
a714e2ff35 * fix #39981: retrieve the symbol that returns the desired procdef/procvardef not maybe the Self or something else as we need that symbol to differentiate the procdefs
+ added test
2022-11-06 22:01:48 +01:00
florian
0eee70ac81 * fix FindUnitSymtable for exception symtables, resolves #24801 and #39974
* more consistent naming of exceptsymtable enumeration symbol
2022-10-31 20:19:10 +01:00
Sven/Sarah Barth
e050a019a2 * fix #29859: ensure that it's correctly passed down into generate_specialization whether a unit name was provided for the specialization and if so search the generic only in that unit
+ added tests
2022-10-28 17:40:53 +02:00
florian
c75bb80b14 * more debug messages
* better exit codes for test
2022-10-26 23:20:18 +02:00
florian
3fa77a4f62 * fix life information propagation for while loops, resolves #39971
* warnings/errors fixed which are caused by the new life information propagation
  + test
2022-10-24 22:13:43 +02:00
J. Gareth "Curious Kit" Moreton
fa76baa3d4 * New test to evaluate i39918 2022-10-22 13:07:16 +00:00
florian
8f269d4540 * check for proper exception type 2022-10-22 15:05:52 +02:00
florian
2b48afe151 * check if optinfo is assigned before using it, resolves #39913 2022-10-21 21:14:39 +02:00
J. Gareth "Curious Kit" Moreton
6b77017cb9 * x86: Added two new tests for i39922 2022-10-18 20:47:42 +00:00
Jonas Maebe
0758aa1143 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
florian
e457cdad8a * patch by avk959 to solve infinite loop in FindMatchesBoyerMoore*, resolves #39885 and #39709
+ tests
2022-10-17 21:14:32 +02:00
florian
5670a7543c * properly reset nf_write/nf_modify flags for min/max inline nodes, needed by dead store optimization, resolves #39958
* factored out nutils.node_reset_pass1_write
2022-10-16 22:51:50 +02:00
florian
65ff03f30a + test for #39955 2022-10-15 13:59:35 +02:00
florian
1c86a4bbeb * if a pointer_to_array type conversion is applied to a variable, it is not written, resolves #39957 2022-10-14 23:12:18 +02:00
Pierre Muller
d217a459aa Fix bug report #39952.
* compiler/aggas.pas: Avoid use of .long for 64bit constant
    for targets that automatically insert alignments.
  + tests/webtbs/tw39952.pp: New test from bug report 39952.
2022-10-12 21:28:16 +01:00
florian
f0c0d8a033 + test for #22809 which is meanwhile resolved 2022-10-12 21:56:30 +02:00
florian
989895c82f * patch by Bart B: FormatFloat correctly outputs NaN now, resolves #32868
+ test
2022-10-11 22:11:33 +02:00
florian
9f293df425 * export DynArrayAssign, resolves #39897 2022-10-06 22:56:38 +02:00
florian
ad7cc0e69d * handle <dyn.array>+[] (and swapped) correctly, resolves #39919 2022-10-05 22:48:21 +02:00
florian
d8cd4d283d * removed wrong program name 2022-10-04 22:02:59 +02:00
florian
2396b36c21 * nil =/<> dyn. array is a valid expression, so isbinaryoperatoroverloadable needs to take care of it, resolves #39933 2022-10-03 10:26:09 +02:00
florian
444fe092da * propertly check equality with the for-counter when propagating constants, resolves #39915 2022-09-24 20:39:43 +02:00
florian
960c154f48 * properly named 2022-09-22 23:00:34 +02:00
florian
af1194de4d * end of an include file works like a new line with regard to single line (//) comments, resolves #39912 2022-09-19 23:03:36 +02:00
Sven/Sarah Barth
c8fee69345 * fix #39907: only load system class types from units that are marked as a System unit
+ added test
2022-09-18 15:41:33 +02:00
florian
168016b865 * patch by Rika: Use linear file list in FInput.TInputFileManager instead of linked, resolves #39880 2022-09-17 22:46:57 +02:00
Sven/Sarah Barth
e21186cac0 * fix #39902: in case of mode ObjFPC function pointers passed to parameters need to be checked for the correct procdef as well
+ added adjusted/extended test
2022-09-16 16:20:42 +02:00
Sven/Sarah Barth
13fb30c52e * fix #39902: correctly handle assignment of procvars to properties with a field write accessor
+ added adjusted/extended test
2022-09-16 16:20:42 +02:00
Jonas Maebe
e746cf96da Overload selection: call procvars if result is compatible with parameter
Previously we only autmatically called procvars without parameters in TP/Delphi
modes if their result type was equal to the parameter type to which they were
passed. Resolves #39748.
2022-09-16 11:21:05 +02:00
Sven/Sarah Barth
62a57bf82e * fix #39903: correctly parse anonymous function references in records (and classes/objects)
+ added test
2022-09-15 22:57:05 +02:00
J. Gareth "Curious Kit" Moreton
2931b43000 * New test for #39713 2022-08-31 18:25:11 +00:00
florian
0440749562 + test for #39873 2022-08-28 21:29:52 +02:00
Sven/Sarah Barth
e5957b1ef0 * fix #39875: when a WideString constant is used to initialize a PChar the constant needs to be converted to the current code page
+ added test
2022-08-26 18:05:13 +02:00
Sven/Sarah Barth
5135b586cb * fix #39857: don't trash symbols marked as vo_is_internal
+ added test
2022-08-26 17:42:22 +02:00
Sven/Sarah Barth
8595c927a8 * fix #39876: correctly Read(Str) enum types which have a size smaller than 4 Byte
+ added tests
2022-08-26 17:16:29 +02:00
florian
85c7368759 * handle also simulated flags in tmipselnotnode.second_boolean, resolves #39877 2022-08-24 21:16:23 +02:00
florian
2670eb1ce7 * improved test as proposed by Rika 2022-08-23 21:27:44 +02:00
florian
4f7dffadbb * extended test 2022-08-22 21:33:52 +02:00
florian
5af087cfc3 * experimental test for #39722, no sure if it will work this way on all platforms 2022-08-21 23:03:38 +02:00
florian
d3d4de7818 * test for #39834, previous commits resolve #39834 2022-08-20 18:11:24 +02:00
Sven/Sarah Barth
61debb1559 * fix #39869: correctly check whether the recorded token stream still needs to be parsed (the replay depth of the scanner needs to be *larger* than what it was before starting the playback)
+ added test
2022-08-18 23:09:01 +02:00
florian
9e14dee1c3 * fixed Math.Tanh as proposed by Paolo Valle, resolves #39867 2022-08-17 20:56:43 +02:00
Ondrej Pokorny
55629aeb19 do not publish enums with jumps 2022-08-16 20:47:44 +02:00
Sven/Sarah Barth
5e7330448d * fix #39858: correctly keep track of symbols that need to be captured into the capturer
+ added test
2022-08-12 17:44:39 +02:00
florian
5afd809e88 + handle LOC_FLAGS in thlcgobj.location_force_mem, resolves #39292 2022-08-08 23:14:56 +02:00
J. Gareth "Curious Kit" Moreton
8ba76f7d0a * New test to catch i39851 2022-07-31 19:45:23 +00:00
florian
6c47f8f4d7 * do not warn on anonymous functions without captured variables about being not used, resolves #39853 2022-07-29 21:46:48 +02:00
Jonas Maebe
3d6c53ee74 parentfpstruct: explicitly trash before initialising
It's an internal sym, but it contains user data. Together with the previous
commit resolves #39845
2022-07-26 22:36:13 +02:00
Sven/Sarah Barth
8d90cd3e64 * fix #39826: correctly handle function references that are part of generics/specializations, but are not generics/specializations themselves
+ added test
2022-07-15 16:32:02 +02:00