Commit Graph

57782 Commits

Author SHA1 Message Date
michael
6747654f7d * Fix bug ID #36399: add some easy access methods to TZipper/TUnzipper
git-svn-id: trunk@43640 -
2019-12-05 09:07:20 +00:00
michael
0add077916 * Fix bug ID #36385, CSV header contains also disabled fields
git-svn-id: trunk@43639 -
2019-12-04 12:07:17 +00:00
michael
cd8d75d5fa * Added possibility for array arguments
git-svn-id: trunk@43637 -
2019-12-04 11:42:48 +00:00
michael
575fd849b1 * Patch by Werner Pamler to delete builtin (bug ID 36396)
git-svn-id: trunk@43636 -
2019-12-04 11:30:04 +00:00
florian
0cb85eef9b * more currency fixes, should resolve #36176
git-svn-id: trunk@43635 -
2019-12-03 19:31:50 +00:00
pierre
c87facbae1 Use PInt64(@value_currency)^ construct to avoid internal error when starting from 3.0.4 ppcarm compiler
git-svn-id: trunk@43634 -
2019-12-03 16:05:30 +00:00
pierre
91e550edb6 Remove assigned but unused local variable i64 in taddnode.pass_typecheck_internal as suggested by Ondrej Pokorny
This also solves the "Invalid TypeCast Error" in rtl-objpas when compiled with -CriotR option.

git-svn-id: trunk@43631 -
2019-12-02 23:11:21 +00:00
michael
10ddaab97a * Enable compilation for Win64 bit
git-svn-id: trunk@43630 -
2019-12-02 23:00:11 +00:00
svenbarth
927c91e093 * fix for Mantis #36388: correctly handle generic constraints when looking for helpers
git-svn-id: trunk@43629 -
2019-12-02 22:29:34 +00:00
svenbarth
f2818bfe7a * apply patch by Blaise.ru to remove last remnants of VMT regeneration which is no longer needed/used
git-svn-id: trunk@43628 -
2019-12-02 22:29:29 +00:00
michael
b86b2f1b80 * Patch from Klaus (computertechnik@web.de) to read/write columncount/columngap
git-svn-id: trunk@43627 -
2019-12-02 21:42:32 +00:00
svenbarth
3ced30f816 * apply (adjusted) patch by Blaise.ru: vmtentries is always created since 2008, so treat it as such (also fixes a memory leak in tobjectdef.getcopy)
git-svn-id: trunk@43626 -
2019-12-02 06:59:05 +00:00
svenbarth
ea75253926 * initialize the defid in trecorddef.create_global_internal as unique_id_str needs it
git-svn-id: trunk@43625 -
2019-12-02 06:58:59 +00:00
svenbarth
80a4a01f12 + add a method to tdef to initialize the defid from within a constructor
git-svn-id: trunk@43624 -
2019-12-02 06:58:47 +00:00
florian
b8a78b135c * simplified and improved TX86AsmOptimizer.RegModifiedByInstruction
git-svn-id: trunk@43623 -
2019-12-01 22:15:48 +00:00
florian
86d8e79e86 * fix some currency issues, resolves #33963 and #36179
git-svn-id: trunk@43620 -
2019-12-01 20:24:00 +00:00
florian
f5496c9d11 * improved build unit lazarus project for linux
git-svn-id: trunk@43618 -
2019-12-01 08:41:26 +00:00
florian
f2a8b8ad6a * adapt register if the size of the paraloc and the register differ, resolves #34409
git-svn-id: trunk@43617 -
2019-11-30 20:37:55 +00:00
svenbarth
06c1a17d13 * use tdef.unique_id_str to generate the unique internal name for anonymous record defs as using the count of the deflist is no longer correct
git-svn-id: trunk@43616 -
2019-11-30 17:40:27 +00:00
joost
d8c81744d3 * Fix for timestamps very close to a whole day in Firebird
git-svn-id: trunk@43615 -
2019-11-30 11:04:19 +00:00
pierre
4e4f55ac0e Comparison nodes are always in LOC_REGISTER, never in LOC_JUMP for riscv32 or riscv64 CPUs
git-svn-id: trunk@43614 -
2019-11-29 23:28:05 +00:00
pierre
92b0ea7d02 Add explicit smallint typecast to first marameter of SarSmallint call to avoid range check errors
git-svn-id: trunk@43613 -
2019-11-29 23:26:45 +00:00
florian
d8f1aacd78 * better error recovery, resolves #36377
git-svn-id: trunk@43612 -
2019-11-29 22:13:17 +00:00
florian
4525edd9f7 * patch by J. Gareth Moreton: x86 implementation of RegModifiedByInstruction, resolves #36376
git-svn-id: trunk@43611 -
2019-11-29 21:57:53 +00:00
florian
3889529e45 * unified internalerror, resolves #36378
git-svn-id: trunk@43610 -
2019-11-29 21:06:12 +00:00
pierre
fb33da5f41 Change parameter type to tcgint for is_imm12 and is_lui_imm functions to avoid range check errors
git-svn-id: trunk@43609 -
2019-11-29 10:31:31 +00:00
marco
4715c94789 * set enum size to 4 only after jedi.inc that has statement
git-svn-id: trunk@43608 -
2019-11-29 09:59:24 +00:00
pierre
7405ae2758 Fix trv32notnode, by using same code as for riscv64 CPU
git-svn-id: trunk@43607 -
2019-11-28 22:34:04 +00:00
michael
4d0b049f4e * Less errors when connection is broken (bug ID 36373)
git-svn-id: trunk@43605 -
2019-11-28 16:19:30 +00:00
pierre
3db08d28e9 Set default stack size for i8086-embedded target: 16384 for far data model, and 2048 for other memory models
git-svn-id: trunk@43604 -
2019-11-28 14:50:55 +00:00
pierre
47b9ef4dc2 Disable ucomplex and matrix units for i8086-embedded target, because no fpu is installed in RTL by default
git-svn-id: trunk@43603 -
2019-11-28 13:47:47 +00:00
ondrej
c7a8267d91 fcl-db: ODBC: allow NULL parameters (TParam.Value := Null sets type to ftUnknown)
git-svn-id: trunk@43602 -
2019-11-28 12:59:13 +00:00
pierre
a9bb9f7310 Add '.module nomips16' at assembly entry for mips/mipsel unless -a5 option is used
git-svn-id: trunk@43600 -
2019-11-27 22:56:35 +00:00
pierre
ba73f7376f Also accept -a5 for older binutils for mips and mpisel cpus
git-svn-id: trunk@43599 -
2019-11-27 22:54:47 +00:00
pierre
01fbad64b7 Use defined(aarch64) instead of defined(cpuaarch64) for FPC_HAS_INTERNAL_ABS_INT64
git-svn-id: trunk@43598 -
2019-11-27 22:15:23 +00:00
florian
7000d82dcd * do not convert cmp 0,... into test ...,... before the post pass of the peephole optimizer
as this conversion might result in missing further optimizer opportunities

git-svn-id: trunk@43596 -
2019-11-26 22:09:34 +00:00
florian
7e6eeebdf0 o patch by J. Gareth Moreton, seeks to improve maintainability, safety and efficiency
in the peephole optimizer by slightly modifying some function headers based
    on their intended purpose, resolves #36353
    * Non-virtual methods and class methods that don't need to access any fields from
      the current object are now static methods, thus removing the hidden "Self"
      parameter and reducing overhead. This includes a large number of
      frequently-used functions such as SkipEntryExitMarker and SuperRegistersEqual.
    * GetNextInstruction, GetLastInstruction, SkipEntryExitMarker and
      SkipLabels have had their 'var' parameter changed to an 'out' parameter because
      they shouldn't depend on its input value. This will cause the compiler to throw warnings
      if you start using the value without initialising it first, and may open up optimisation
      opportunities in the future (e.g. storing written values in a temporary register
      and only writing it to the actual variable when the routine exits).

git-svn-id: trunk@43595 -
2019-11-26 22:09:33 +00:00
Jonas Maebe
5800ac6213 * fix conversion from Objective-C class/protocol to tvarrec (store in
vPointer) (mantis #36362)

git-svn-id: trunk@43594 -
2019-11-26 21:24:56 +00:00
florian
cf0716123c * avoid overflow error
git-svn-id: trunk@43593 -
2019-11-26 19:39:04 +00:00
florian
af107ca8fe o patch by J. Gareth Moreton, resolves #36355
+ This patch serves to extend the JMP -> RET optimisation in OptPass2JMP by also doing the same
      for JMP -> MOV/RET, since there are often cases where the result (e.g. EAX) is set just
      prior to the function exiting.
    * RemoveDeadCodeAfterJump will now drop out if it detects SEH information -
      this stops exception information from being stripped if it is called on the final RET instruction.

git-svn-id: trunk@43592 -
2019-11-25 21:15:41 +00:00
svenbarth
d98e551882 + add a generic variant of TValue.IsType
* extended test

git-svn-id: trunk@43591 -
2019-11-25 21:13:37 +00:00
florian
fb4b1cbf35 * warn only in delphi mode if an explicit enumeration value exceeds the range, relaxes r43191
git-svn-id: trunk@43590 -
2019-11-25 20:58:20 +00:00
florian
3edc0560b0 * patch by Benjamin Rosseaux: TEvent.WaitFor on *nix uses Monotonic Clock now
git-svn-id: trunk@43589 -
2019-11-25 20:58:18 +00:00
svenbarth
97eefb6ac3 - the error recovery handling is no longer required
git-svn-id: trunk@43588 -
2019-11-25 20:28:29 +00:00
svenbarth
5b71ba2a9b * treat a missing genericdef with no symname set as an internal error
git-svn-id: trunk@43587 -
2019-11-25 20:28:26 +00:00
svenbarth
ef6c9e930b * correctly handle the genericdef being a procdef, otherwise no code will be generated (and no error either :/ )
+ added test

git-svn-id: trunk@43586 -
2019-11-25 20:28:23 +00:00
michael
6a36bec296 * Better explanation of connection
git-svn-id: trunk@43585 -
2019-11-25 14:24:38 +00:00
michael
bcee247240 * Simple, read-only example, no authentication
git-svn-id: trunk@43584 -
2019-11-25 14:14:19 +00:00
Jonas Maebe
0802edb710 * fix Linux/i386 and Win32 after r43578
git-svn-id: trunk@43583 -
2019-11-25 07:55:57 +00:00
svenbarth
be99031570 * rework checking for compiler files in .gitignore: ignore all ppc* files in the compiler directories except those with known extensions (*.lpi and *.pas, though for the later there currently is none)
git-svn-id: trunk@43582 -
2019-11-24 21:52:22 +00:00