maciej-izak
e4565378db
* Allow for "record constraint" in Delphi mode more types like: ordinal, float, classical objects, enumerations (instead of just record). Delphi compatibility. Fix for mantis #24073 .
...
git-svn-id: trunk@35739 -
2017-04-05 13:12:30 +00:00
Mattias Gaertner
07c98e816f
pastojs: external class bracket accessor
...
git-svn-id: trunk@35738 -
2017-04-05 07:35:52 +00:00
Mattias Gaertner
972b24286d
fcl-passrc: added test for unit of only external stuff does not generate a hint
...
git-svn-id: trunk@35737 -
2017-04-05 07:35:14 +00:00
Mattias Gaertner
4bce2e2b4d
pastojs: remove empty $impl
...
git-svn-id: trunk@35736 -
2017-04-04 23:00:14 +00:00
Mattias Gaertner
2afaeb60de
fcl-passrc: nicer error message when calling property proc var with wrong args
...
git-svn-id: trunk@35735 -
2017-04-04 22:59:33 +00:00
nickysn
321876252b
+ enabled the rol/ror intrinsic on i8086
...
git-svn-id: trunk@35734 -
2017-04-04 22:37:58 +00:00
nickysn
0b1a54f924
* on 16-bit CPUs, avoid the unnecessary 32-bit conversion of the right shl/shr
...
parameter, when the operation is 32-bit (even when the operation is 32-bit,
the shift count is only 16-bit on 16-bit CPUs, so using 32-bits is wasting an
extra register and an extra instruction to initialize it)
git-svn-id: trunk@35733 -
2017-04-04 21:01:20 +00:00
Mattias Gaertner
2810dc5b44
pastojs: class const
...
git-svn-id: trunk@35732 -
2017-04-04 20:59:00 +00:00
Mattias Gaertner
5c9c8024be
fcl-passrc:
...
pasresolver: class const
pasuseanalyzer: no hints for abstract method
git-svn-id: trunk@35731 -
2017-04-04 20:58:29 +00:00
nickysn
b957b65ec8
* generate better i8086 code for 64-bit shl/shr, by masking the shift count by 63
...
git-svn-id: trunk@35730 -
2017-04-04 17:58:00 +00:00
Mattias Gaertner
6bb2dcf350
pastojs: updated error strings
...
git-svn-id: trunk@35729 -
2017-04-04 17:25:58 +00:00
Mattias Gaertner
58791a0b5c
fcl-passrc: fixed checking proc arg base type from different units, fixed scanner eof row, fixed fail test messages
...
git-svn-id: trunk@35728 -
2017-04-04 17:25:15 +00:00
nickysn
6580dfee39
* generate better i386 code for 64-bit shl/shr, by masking the shift count by
...
63, instead of comparing it to 64 and branching. Note that, although this
changes the behaviour of 64-bit shifts by values larger than 64 (when stored
in a variable), it actually makes them consistent with both the code,
generated on x86_64, as well as with 64-bit shift by constant on i386 itself.
git-svn-id: trunk@35727 -
2017-04-04 16:28:54 +00:00
nickysn
76cb419241
* use 16-bit 386+ instructions (shld,shrd) for performing fast 32-bit
...
shl/shr/sar on i8086, in a_op_const_reg, when the target CPU is set to 80386
or later
git-svn-id: trunk@35726 -
2017-04-04 14:40:29 +00:00
nickysn
0ab4f01668
* implemented fast (loopless) 32-bit shift by constant for 8086 as well
...
git-svn-id: trunk@35725 -
2017-04-03 21:04:59 +00:00
maciej-izak
8391b73206
* Virtual methods cannot be declared as static (static virtual method has no sense).
...
+ added tests
git-svn-id: trunk@35724 -
2017-04-03 20:45:52 +00:00
nickysn
0f2ad7b712
* generate faster (i.e. loopless) code for 32-bit shl/shr/sar by const on 186+
...
git-svn-id: trunk@35723 -
2017-04-03 20:37:21 +00:00
maciej-izak
ee4ae1254f
undo accidental commit (r35721) :/
...
git-svn-id: trunk@35722 -
2017-04-03 17:10:20 +00:00
maciej-izak
b4b87a841c
git-svn-id: trunk@35721 -
2017-04-03 17:08:01 +00:00
Mattias Gaertner
e71ac95b69
fcl-passrc: pasuseanalyzer: no hint assigned but never used for out argument
...
git-svn-id: trunk@35720 -
2017-04-03 15:52:36 +00:00
Mattias Gaertner
dac17860c4
fcl-passrc: pasresolver: when accessing a record member, access the record too
...
git-svn-id: trunk@35719 -
2017-04-03 15:20:55 +00:00
Mattias Gaertner
457d23a151
fcl-passrc: pasresolver: check proc type or proc var
...
git-svn-id: trunk@35718 -
2017-04-03 13:01:50 +00:00
maciej-izak
322720236c
+ added missing dwarf constants: DW_FORM_sec_offset, DW_FORM_exprloc and DW_FORM_flag_present
...
git-svn-id: trunk@35717 -
2017-04-03 10:42:27 +00:00
Mattias Gaertner
e9791ceffc
pas2js: started pass property by reference
...
git-svn-id: trunk@35716 -
2017-04-03 07:56:29 +00:00
Mattias Gaertner
632b973ed6
fcl-passrc: comments, analyzer option paoKeepPublished
...
git-svn-id: trunk@35715 -
2017-04-03 07:55:49 +00:00
Mattias Gaertner
bceb016f5f
pastojs: added array params to external class 'Array' [integer]:jsvalue, 'Object' [string]:jsvalue
...
git-svn-id: trunk@35714 -
2017-04-02 18:54:04 +00:00
Mattias Gaertner
d4c801b708
fcl-passrc: pasresolver: allow adding custom arram params
...
git-svn-id: trunk@35713 -
2017-04-02 18:52:17 +00:00
Mattias Gaertner
fcbfa0899f
pastojs: nested proc var
...
git-svn-id: trunk@35711 -
2017-04-02 11:27:07 +00:00
Mattias Gaertner
f23862e8de
fcl-passrc: pasresolver: proc type modifier is nested
...
git-svn-id: trunk@35710 -
2017-04-02 11:26:25 +00:00
Mattias Gaertner
255870d371
fcl-passrc: pasresolver: fixed searching units recursively
...
git-svn-id: trunk@35709 -
2017-04-01 20:53:22 +00:00
Mattias Gaertner
4e0fd4de53
fcl-passrc: store access type of accessing default property
...
git-svn-id: trunk@35708 -
2017-04-01 20:21:39 +00:00
florian
4504648ec1
* initialize maskvalue to fix compilation with -O3+
...
git-svn-id: trunk@35707 -
2017-04-01 19:03:35 +00:00
michael
cbb5bbbc27
* Patch from Mattias Gaertner: Arrays can be null (test)
...
git-svn-id: trunk@35706 -
2017-04-01 18:22:59 +00:00
michael
d4d31508c3
* Patch from Mattias Gaertner: Arrays can be null
...
git-svn-id: trunk@35705 -
2017-04-01 18:22:28 +00:00
michael
ad99d1b015
* Patch from Mattias Gaertner
...
- function copy(array,start=0,count=max): array
- procedure insert(item,var array,const position)
- procedure delete(var array,const start,count)
- allow type casting array of jsvalue to any array
git-svn-id: trunk@35704 -
2017-04-01 16:00:32 +00:00
michael
9e39442dbc
* Fix from Mattias Gaertner for System.Delete() use analyses.
...
git-svn-id: trunk@35703 -
2017-04-01 15:59:57 +00:00
michael
945b0aa98b
* Fix from Mattias Gaertner:
...
- children of a const record are const too
- external class instance cannot access static members
- option to treat open arrays as dynamic arrays
- made rrfReadable consistent on class types
- const dynarray param: elements are writable
git-svn-id: trunk@35702 -
2017-04-01 15:59:10 +00:00
joost
3b58c328c7
* Reading the fppkg-settings should not depend on the global
...
OnGetApplicationName event
git-svn-id: trunk@35701 -
2017-04-01 10:01:29 +00:00
joost
b52d6874d2
* Added more logging on why packages are installed
...
git-svn-id: trunk@35700 -
2017-03-31 19:49:36 +00:00
joost
20c9a16fa9
* Do not install packages into a repository that does not allow new
...
packages, also not when they are installed from their original source.
git-svn-id: trunk@35699 -
2017-03-31 19:36:57 +00:00
joost
a3f43a3661
* Try to fix plugins as fast as possible, so that as many packages
...
are compiled with the plugins
git-svn-id: trunk@35698 -
2017-03-31 18:54:54 +00:00
michael
aade79cff4
* Patch from Mattias Gaertner to fix use of Forward defined Classes
...
git-svn-id: trunk@35697 -
2017-03-31 15:15:10 +00:00
michael
a9f13acd81
* Patch from Mattias Gaertner:
...
- type cast array to array with same dimensions and element types
- allow type casting string to external class name 'String'
- allow type casting array to external class name 'Array'
- allow assigning any array to an array of jsvalue
git-svn-id: trunk@35696 -
2017-03-31 11:33:44 +00:00
michael
03e6268a3d
* Patch from Mattias Gaertner: type cast array to array with same dimensions and element types
...
git-svn-id: trunk@35695 -
2017-03-31 11:32:58 +00:00
michael
92cca391aa
* Remove debug writeln
...
git-svn-id: trunk@35694 -
2017-03-31 06:58:16 +00:00
michael
88bd388bb6
* Patch from Mattias Gaertner
...
- concat(array1,array2,...)
- jsvalue = and <>
- allow no other string type except String
- allow no other float type except Double
git-svn-id: trunk@35693 -
2017-03-31 06:53:24 +00:00
michael
ba7d698b1d
* Patch from Mattias Gaertner:
...
- intrinsics:
function concat(array1,array2,...): array
function copy(array): array, copy(a,start), copy(a,start,end)
insert(item; var array; index: integer)
delete(var array; start, count: integer)
- unified type mismatch errors and report types with paths if needed
git-svn-id: trunk@35692 -
2017-03-31 06:52:48 +00:00
michael
f2aebcd595
* Patch from Mattias Gaertner
...
* fixed checking semicolon after a procedure
git-svn-id: trunk@35691 -
2017-03-31 06:51:31 +00:00
lacak
85c9167f40
fcl-db: sqldb: storage specifiers for Options properties
...
git-svn-id: trunk@35690 -
2017-03-31 06:32:24 +00:00
marco
7e2cffdb87
* fix compilation.
...
git-svn-id: trunk@35689 -
2017-03-30 17:04:52 +00:00