Commit Graph

50341 Commits

Author SHA1 Message Date
svenbarth
abc4cf21d1 * fix compiling the 64-bit compiler with a 32-bit one
git-svn-id: trunk@35654 -
2017-03-24 15:47:36 +00:00
michael
872ed2af11 * Patch from Mattias Gaertner:
* added more global JS identifiers to reserved word list

git-svn-id: trunk@35653 -
2017-03-24 12:11:04 +00:00
michael
f12c8a8adc * Patch from Mattias Gaertner
- fixed procedure modifier public
  - fixed setting pmPublic when 'public' behind a procedure starts a class
    visibility section

git-svn-id: trunk@35652 -
2017-03-24 12:10:22 +00:00
michael
510352e121 * Patch from Mattias Gaertner: when an if-statement has an else always use {} for the BTrue
git-svn-id: trunk@35651 -
2017-03-24 12:09:38 +00:00
joost
9d6ff959f4 * Clear packages to avoid duplicates on a re-scan
git-svn-id: trunk@35650 -
2017-03-23 22:12:04 +00:00
florian
971280f082 + tarmcasenode.genjmptreeentry
git-svn-id: trunk@35649 -
2017-03-23 21:37:12 +00:00
michael
2d2a93de1d * Install pasuseanalyzer
git-svn-id: trunk@35648 -
2017-03-23 20:57:28 +00:00
florian
1ae90bce53 * commented how the limit for a case jmp tree had been determined
git-svn-id: trunk@35647 -
2017-03-23 18:35:48 +00:00
florian
e8f7c9dfdd + test for large case statements
git-svn-id: trunk@35646 -
2017-03-23 17:57:31 +00:00
florian
d5754cf47c * create jmp trees for really big case statements
git-svn-id: trunk@35645 -
2017-03-23 17:50:53 +00:00
michael
3148129d6f * Fix bug #31587
git-svn-id: trunk@35644 -
2017-03-23 15:22:07 +00:00
michael
cfa5a354cb * Patch from Mattias Gaertner
- class external:
    - JS object or function as ancestor
    - does not descend from TObject
    - all members become external. case sensitive
    - has no hidden values like $class, $ancestor, $unitname, $init, $final
    - can be ancestor of a pascal class (not descend from TObject).
    - pascal class descendant can override methods
    - property works as normal, replaced by getter and setter
    - class-of
    - class var/function: works as in JS.
    - is and as operators
    - destructor forbidden
    - constructor must not be virtual
    - constructor 'new' -> new extclass(params)
    - identifiers are renamed to avoid clashes with external names
    - call inherited

git-svn-id: trunk@35643 -
2017-03-23 15:03:57 +00:00
michael
298043354b * Patch from Mattias Gaertner
- external classes
  - option to allow is-operator with class-of
  - more extendable

git-svn-id: trunk@35642 -
2017-03-23 15:03:09 +00:00
michael
d9a21a8071 * Patch from Mattias Gaertner
- a.b.c is now stored as (a.b).c, which makes restructuring easier.
  - fixed closing a type section before a procedure is parsed.

git-svn-id: trunk@35641 -
2017-03-23 15:02:19 +00:00
michael
676b25cc93 * Patch from Mattias Gaertner to fix new (a())()
git-svn-id: trunk@35640 -
2017-03-23 15:01:16 +00:00
michael
406c7caa6f * External var does not need, but allows semicolon after var type
git-svn-id: trunk@35639 -
2017-03-22 20:31:29 +00:00
michael
f7db076989 * Allow external fields also for non-external classes is externalclass modeswitch is active
git-svn-id: trunk@35638 -
2017-03-22 20:12:33 +00:00
michael
0f40ccd45f * external class namespace is optional, external fields in class follow variable syntax
git-svn-id: trunk@35637 -
2017-03-22 17:27:05 +00:00
michael
b4787e1b47 * Fix support for external classes, initial implementation of external properties
git-svn-id: trunk@35636 -
2017-03-21 10:16:34 +00:00
michael
545fa038f4 * Added support for external classes
git-svn-id: trunk@35635 -
2017-03-21 06:55:28 +00:00
Károly Balogh
a405b5a150 m68k: improve getreferencestring function a bit
git-svn-id: trunk@35634 -
2017-03-20 23:48:28 +00:00
michael
44c5fe99c9 * Patch from Mattias Gaertner:
jswriter: 
    fixed some empty lines 
  pasresolver: 
    procedure str, function str
  fppas2js: 
    procedure str,function str
    write less empty blocks
    target platform browser and nodejs

git-svn-id: trunk@35633 -
2017-03-20 23:29:53 +00:00
marco
a2d397c064 * pmethod declaration, patch from mantis #31576 by Silvio
git-svn-id: trunk@35632 -
2017-03-20 21:19:20 +00:00
michael
a1303eecde * Fixed from Mattias Gaertner
pasresolver: checking all varargs arguments
  pasresolver: checking arguments are readable
  fppas2js: fixed using externals from other units

git-svn-id: trunk@35631 -
2017-03-20 07:31:39 +00:00
lacak
2e58447447 fcl-db: base: typo
git-svn-id: trunk@35630 -
2017-03-19 18:54:07 +00:00
lacak
93a528cd7a fcl-db: tests: test for bug #31532
git-svn-id: trunk@35629 -
2017-03-19 17:49:58 +00:00
lacak
4582b56506 fcl-db: base: cosmetic
git-svn-id: trunk@35628 -
2017-03-19 17:16:48 +00:00
maciej-izak
dcf172dee4 rtl-generics: speed up quadratic probe function. If the hash table size is a prime number and load factor is < 0.5 then the probe function p(k,i)=(h(k)+sqr(i)) is sufficient.
git-svn-id: trunk@35627 -
2017-03-19 16:00:11 +00:00
sergei
2357ca1fe6 * Fixed size suffix generated for CVTSI2SS, CVTSI2SD, VCVTSI2SS, VCVTSI2SD instructions. Mantis #31550.
* tasm2.pp already detected this bug if run with -al option. Added a copy of tasm2.pp and configured it with -al, so it is run daily on all suitable machines.

git-svn-id: trunk@35626 -
2017-03-19 10:29:28 +00:00
michael
051f8568b3 * Fix nested comments (* *) style
git-svn-id: trunk@35625 -
2017-03-19 09:44:58 +00:00
michael
d831c57883 * Force stop now first sends stop, then shutdown signals (bug ID 19510)
git-svn-id: trunk@35624 -
2017-03-18 22:33:30 +00:00
michael
2469aa48c1 * Patch from Mario Ray Mahardika to remove need for TypeCasts (bug ID 30252)
git-svn-id: trunk@35623 -
2017-03-18 19:38:37 +00:00
michael
cd03ec93fe * Patch from Karl-Michael Schindler (Bug ID 30402)
git-svn-id: trunk@35622 -
2017-03-18 18:11:18 +00:00
michael
cfbf1820e1 * Fix bug ID #31540 (again?)
git-svn-id: trunk@35621 -
2017-03-18 17:01:45 +00:00
michael
68bb9bef2c * Optimize fpc_AnsiStr_Compare to not use exception frame unless codepages differ
git-svn-id: trunk@35620 -
2017-03-18 14:38:50 +00:00
michael
2714a06e77 * Small optimization for comparing nil strings.
git-svn-id: trunk@35619 -
2017-03-18 14:22:57 +00:00
michael
b0ad48c877 * Fix bug #31532
git-svn-id: trunk@35618 -
2017-03-18 14:14:33 +00:00
michael
72c8dc8a65 * Fix bug #31560
git-svn-id: trunk@35617 -
2017-03-18 14:08:03 +00:00
michael
90f3ec2e3b * Fix bug ID #31559: methods of generic classes
git-svn-id: trunk@35616 -
2017-03-18 08:53:06 +00:00
michael
b517ab7906 * Patch from Mattias Gaertner:
- ability to omit declarations
  - removed obsolete code
  + Test unit for optimizations

git-svn-id: trunk@35615 -
2017-03-17 21:28:11 +00:00
michael
309c0115f7 * Patch from Mattias Gaertner:
* Whole Program optimization

git-svn-id: trunk@35614 -
2017-03-17 21:26:18 +00:00
michael
ef82aff9cd * Patch from Mattias Gaertner:
- nicer error handling for resourcestrings
  - resolve 'Result' element always to declaration

git-svn-id: trunk@35613 -
2017-03-17 21:25:35 +00:00
michael
4f24dfb71a * Fix bug #31483
git-svn-id: trunk@35612 -
2017-03-17 18:30:12 +00:00
michael
5bbf299c22 * Fix bug #31555, disbablefile locking
git-svn-id: trunk@35611 -
2017-03-17 07:58:59 +00:00
maciej-izak
154216788e rtl-generics: Override TOpenAddressingQP<OPEN_ADDRESSING_CONSTRAINTS>.FindBucketIndex for quadratic probing to omit infinite loop (for ContainsKey). Small refactoring for FindBucketIndexOrTombstone (no functional change).
git-svn-id: trunk@35610 -
2017-03-16 21:01:14 +00:00
maciej-izak
cc5027cd75 rtl-generics: remove unused "m" parameter from "Probe" methods for memory expanders related to dictionaries.
git-svn-id: trunk@35609 -
2017-03-16 17:22:43 +00:00
maciej-izak
52ec13613b rtl-generics: Fix critical issue (infinity loop) for quadratic probing. Table size must be a prime number.
git-svn-id: trunk@35608 -
2017-03-16 14:53:41 +00:00
michael
c213a4187a * Fix bug ID #21458
git-svn-id: trunk@35607 -
2017-03-16 13:48:38 +00:00
maciej-izak
e089e19a7d rtl-generics: Change visibility of method TDeamortizedDArrayCuckooMap<CUCKOO_CONSTRAINTS>.UpdateItemsThreshold from private to protected
git-svn-id: trunk@35606 -
2017-03-16 13:41:08 +00:00
pierre
984f9ff25e Regenerate Makefiel using trunk fpcmake with -Tall option to avoid failure on unsupported targets
git-svn-id: trunk@35605 -
2017-03-16 09:32:36 +00:00