Commit Graph

450 Commits

Author SHA1 Message Date
Mattias Gaertner
1215cafb4e pastojs: range check string index
git-svn-id: trunk@38835 -
2018-04-24 18:01:53 +00:00
Mattias Gaertner
268ffcb854 pastojs: range check array index
git-svn-id: trunk@38834 -
2018-04-24 17:42:31 +00:00
Mattias Gaertner
65ae09a914 pastojs: range check char:=, char parameter
git-svn-id: trunk@38831 -
2018-04-24 11:51:49 +00:00
Mattias Gaertner
63032c796f pas2js: docs
git-svn-id: trunk@38826 -
2018-04-23 17:25:14 +00:00
Mattias Gaertner
73310ac57f pastojs: jsvalue:=currency
git-svn-id: trunk@38808 -
2018-04-22 11:35:58 +00:00
Mattias Gaertner
0601b437a4 pas2js: added option -JoUseStrict
git-svn-id: trunk@38793 -
2018-04-19 12:42:00 +00:00
Mattias Gaertner
2945f4a3c9 pas2js: changed TGuid to record
git-svn-id: trunk@38792 -
2018-04-19 12:16:03 +00:00
pierre
69376efa26 Regenerated Makefile's after addition of ppas and ppaslink script removal in rev 38745
git-svn-id: trunk@38748 -
2018-04-12 15:20:27 +00:00
Mattias Gaertner
e1ead17c77 pas2js: simplify
git-svn-id: trunk@38721 -
2018-04-09 22:36:10 +00:00
Mattias Gaertner
77cf535e21 pas2js: version 0.9.15
git-svn-id: trunk@38715 -
2018-04-08 15:37:03 +00:00
Mattias Gaertner
bb13e36c80 pas2js: docs: fixed typo
git-svn-id: trunk@38712 -
2018-04-08 13:05:14 +00:00
Mattias Gaertner
5140e1b022 pas2js: docs: interfaces JS
git-svn-id: trunk@38711 -
2018-04-08 12:59:12 +00:00
Mattias Gaertner
c2fe9080d6 pas2js: docs: guid
git-svn-id: trunk@38710 -
2018-04-08 12:20:58 +00:00
Mattias Gaertner
eb0992a79e pas2js: docs about class interfaces
git-svn-id: trunk@38708 -
2018-04-08 09:05:48 +00:00
Mattias Gaertner
52b1649b8f pas2js: utility functions for com interfaces
git-svn-id: trunk@38697 -
2018-04-06 10:38:37 +00:00
Mattias Gaertner
0fa83eade8 pas2js: rtl.js: added corba interface helper functions
git-svn-id: trunk@38652 -
2018-03-30 15:16:09 +00:00
Mattias Gaertner
97e74fe6fd pas2js: fixed typo
git-svn-id: trunk@38577 -
2018-03-19 18:31:34 +00:00
michael
4972a9fbb8 * Allow use of mime.types on windows
git-svn-id: trunk@38566 -
2018-03-18 18:16:48 +00:00
Mattias Gaertner
fe8f7a9876 pas2js: docs: property getter array element not supported
git-svn-id: trunk@38508 -
2018-03-12 16:55:54 +00:00
Mattias Gaertner
3508070d10 pas2js: set version 0.9.6
git-svn-id: trunk@38438 -
2018-03-06 17:52:07 +00:00
Mattias Gaertner
dd246f5698 pas2js: docs
git-svn-id: trunk@38436 -
2018-03-06 14:09:54 +00:00
Mattias Gaertner
fc805c4bd2 pas2js: marker for checking writeln statements
git-svn-id: trunk@38139 -
2018-02-06 13:50:18 +00:00
Mattias Gaertner
17c010b9a3 pas2js: catch jswriter exceptions
git-svn-id: trunk@38114 -
2018-02-04 18:49:06 +00:00
Mattias Gaertner
b8710d8fec fcl-passrc: fixed stConstDef for class local const
git-svn-id: trunk@38097 -
2018-02-01 17:48:44 +00:00
Mattias Gaertner
32fee98477 pas2js: docs: anonymous functions
git-svn-id: trunk@38095 -
2018-02-01 12:55:53 +00:00
Mattias Gaertner
1955a5bd1a pas2js: docs: reference to
git-svn-id: trunk@38094 -
2018-02-01 12:40:52 +00:00
Mattias Gaertner
d580402916 pastojs: set version 0.9.0
git-svn-id: trunk@38087 -
2018-01-31 13:07:49 +00:00
Mattias Gaertner
d139b3e8f1 pas2js: docs
git-svn-id: trunk@38078 -
2018-01-29 17:45:53 +00:00
Mattias Gaertner
898b566837 pas2js:: rtl.js: add Math.trunc only if used
git-svn-id: trunk@38059 -
2018-01-27 14:15:36 +00:00
michael
0ef3fc2f29 * Math.trunc polyfill
git-svn-id: trunk@38051 -
2018-01-26 20:33:42 +00:00
Mattias Gaertner
bd37d43f1c pas2js: search case insensitive by default
git-svn-id: trunk@38046 -
2018-01-25 21:36:01 +00:00
Mattias Gaertner
ade2779f93 pas2js: doc about -JmXSSIHeader
git-svn-id: trunk@38039 -
2018-01-25 14:17:03 +00:00
michael
7d355ffffc call rtl function cloneset with fully qualified name
git-svn-id: trunk@38036 -
2018-01-25 13:58:39 +00:00
Mattias Gaertner
ef7d13d112 pas2js: fixed srcmap header
git-svn-id: trunk@38033 -
2018-01-25 10:42:23 +00:00
Mattias Gaertner
c98c70548a fcl-js: srcmap: disable safety header by default, because not supported by Firefox
git-svn-id: trunk@38029 -
2018-01-25 09:06:54 +00:00
Mattias Gaertner
eebfb65131 pas2js: added option -Jmxssiheader
git-svn-id: trunk@38028 -
2018-01-25 09:01:57 +00:00
Mattias Gaertner
32f4d9e3a5 pas2js: range check int:=
git-svn-id: trunk@38011 -
2018-01-19 17:00:20 +00:00
Mattias Gaertner
afb4add9c7 fcl-passrc: renamed bsMethodCallChecks to bsObjectChecks
git-svn-id: trunk@38008 -
2018-01-19 09:35:29 +00:00
Mattias Gaertner
df61c3fa0d pas2js: -CR
git-svn-id: trunk@38005 -
2018-01-19 00:54:36 +00:00
Mattias Gaertner
89382e0929 pas2js: rtl.js isExt with check for instance
git-svn-id: trunk@38003 -
2018-01-19 00:03:08 +00:00
Mattias Gaertner
b54ca867b1 pas2js: rtl.js: set functions: remove hasOwnProperty - other properties are not enumerable, added rtl.checkMethodCall
git-svn-id: trunk@37999 -
2018-01-18 21:43:47 +00:00
Mattias Gaertner
5bccc69f6a pas2js: docs
git-svn-id: trunk@37998 -
2018-01-18 17:23:35 +00:00
Mattias Gaertner
700b2fdb03 pas2js: doc
git-svn-id: trunk@37993 -
2018-01-18 12:36:16 +00:00
Mattias Gaertner
1d4d34a52e pas2jslib: added SetPas2JSReadDirCallBack, AddPas2JSDirectoryEntry
git-svn-id: trunk@37967 -
2018-01-14 15:45:35 +00:00
Mattias Gaertner
70bc4e62ed pas2js: updated compileserver.lpi
git-svn-id: trunk@37904 -
2018-01-04 14:42:25 +00:00
michael
d9f733bada * Re-add Pas2jsLibCompiler to uses clause
git-svn-id: trunk@37881 -
2017-12-30 10:45:24 +00:00
michael
40cc1d3731 * Compile server
git-svn-id: trunk@37874 -
2017-12-29 19:08:29 +00:00
michael
364620fd73 * Use only project file
git-svn-id: trunk@37873 -
2017-12-29 19:07:47 +00:00
michael
00da85bea1 * Correct uses clause
git-svn-id: trunk@37872 -
2017-12-29 19:07:05 +00:00
Mattias Gaertner
9e01c15005 pas2jsL clean up
git-svn-id: trunk@37845 -
2017-12-28 15:11:27 +00:00
michael
73b65f5a15 * Restrict list of OSes to same list as in pastojs package
git-svn-id: trunk@37837 -
2017-12-28 08:57:08 +00:00
michael
4a566ceec1 * Move compiler files to package.
* Separate lib compiler from library file.

git-svn-id: trunk@37835 -
2017-12-27 17:12:19 +00:00
michael
44b2419d5e * Config file in home dir has . prepended on unix
git-svn-id: trunk@37828 -
2017-12-27 09:29:28 +00:00
Mattias Gaertner
df5a9333a7 pas2js: bool switches $hints, $notes, $warnings
git-svn-id: trunk@37823 -
2017-12-26 22:24:05 +00:00
Mattias Gaertner
94b485a56e pas2js: docs
git-svn-id: trunk@37818 -
2017-12-26 14:56:57 +00:00
Mattias Gaertner
3b37083979 pas2js: allow $ScopedEnums
git-svn-id: trunk@37817 -
2017-12-26 14:46:38 +00:00
Mattias Gaertner
c64562e80c pas2js: docs
git-svn-id: trunk@37814 -
2017-12-26 10:48:51 +00:00
Mattias Gaertner
d3553337ca pas2js: doc about enumerators
git-svn-id: trunk@37808 -
2017-12-25 12:02:20 +00:00
Mattias Gaertner
17b4e63d05 pas2jslib: compile with 3.0.4
git-svn-id: trunk@37807 -
2017-12-25 12:02:02 +00:00
Mattias Gaertner
a9bf0ed28c pas2js 0.8.41
git-svn-id: trunk@37806 -
2017-12-25 10:12:10 +00:00
michael
cb4b68b574 * version 40
git-svn-id: trunk@37797 -
2017-12-24 13:55:14 +00:00
michael
68ed736c93 * Add .pas file read callback
git-svn-id: trunk@37794 -
2017-12-24 12:34:31 +00:00
michael
cb46e21bc3 * Correctly observe result of FileRead callback
git-svn-id: trunk@37793 -
2017-12-24 12:33:08 +00:00
Mattias Gaertner
656ddcccf7 pas2js: added OnReadFile hook
git-svn-id: trunk@37792 -
2017-12-24 10:12:59 +00:00
Mattias Gaertner
3165651bfd pas2js: docs
git-svn-id: trunk@37790 -
2017-12-24 09:31:14 +00:00
Mattias Gaertner
25d44b3637 pas2js: docs: class constructor
git-svn-id: trunk@37784 -
2017-12-22 18:30:05 +00:00
Mattias Gaertner
e00e7d9cfd pas2js: fixed handlign error on first token of used unit
git-svn-id: trunk@37782 -
2017-12-21 22:24:06 +00:00
Mattias Gaertner
b307930443 pas2js: updated cfg
git-svn-id: trunk@37779 -
2017-12-21 22:08:37 +00:00
Mattias Gaertner
8edb5541a3 pas2js: comment
git-svn-id: trunk@37769 -
2017-12-20 00:34:56 +00:00
Mattias Gaertner
effbafabd2 pas2js: fixed globbing * ignoring . and ..
git-svn-id: trunk@37765 -
2017-12-19 11:46:35 +00:00
Mattias Gaertner
8d36c0d64e pas2js: added -i -iD -iSO -iSP -TO -iTP
git-svn-id: trunk@37754 -
2017-12-18 13:23:46 +00:00
michael
3496256179 * Added library version of pas2js
git-svn-id: trunk@37752 -
2017-12-17 08:27:27 +00:00
michael
8342c502c5 * Initial check-in of pas2js changes
git-svn-id: trunk@37749 -
2017-12-16 15:55:10 +00:00
pierre
d18627f0af * Update all fpcsrc Makefile's using latest fpcmake version 2017-09-21 rev 37286
git-svn-id: trunk@37462 -
2017-10-16 00:27:27 +00:00
Károly Balogh
04dee0fc04 regenerated Makefiles for m68k-macos target
git-svn-id: trunk@37034 -
2017-08-22 11:16:42 +00:00
michael
cccff83bab * Fix compilation
git-svn-id: trunk@36817 -
2017-08-02 11:11:54 +00:00
pierre
2371755b4f Regenerate with sparc64-linux target
git-svn-id: trunk@36391 -
2017-06-01 13:40:25 +00:00
pierre
17b2671213 Regenerate all Makefile's after changes related to FPCDIR checks
git-svn-id: trunk@35833 -
2017-04-18 14:15:47 +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
michael
78e7f59982 * Patch from Mattias Gaertner
- external vars
    - untyped parameters
    - varargs
    - SetLength(s,len) is now converted to s.length=len
    - destructor now clears references
    - dynamic arrays now are never null.
      - anArr:=nil  becomes  anArr = []
      - anArr=nil becomes anArr.length==0
      - passing nil to an array parameter passes []
      - length(anArr) becomes anArr.length
      - High(anArr) becomes anArr.length-1
    - sets now uses references when assigning and passing to a parameter.
      Far less clone operations.

git-svn-id: trunk@35505 -
2017-03-01 17:41:16 +00:00
michael
0da38fd281 * Patch from Mattias Gaertner:
- local const: declare as local var in singleton parent function 
  - give procedure overloads in module unique names by appending $1, $2, ...
  - give nested procedure overloads unique names by appending $1, $2, ...
  - give reintroduced/overloaded class members unique names by appending $1, $2, ...
  - record operators = and <>
  - static arrays
    - range: enumtype
    - init as arr = rtl.arrayNewMultiDim([dim1,dim2,...],value)
    - init with expression from const array
    - length(1-dim array)
    - low(1-dim array), high(1-dim array)
  - property TargetProcessor
  - ECMAScript6:
    - use 0b for binary literals, and 0o for octal literals

git-svn-id: trunk@35491 -
2017-02-28 13:23:49 +00:00
michael
2d36af85bb * Patch from Mattias Gaertner with various improvements:
+ changed varname/funcname properties to string, saving many conversion
  + array of record
  + pass by reference
    - pass local var to a var/out parameter
    - pass variable to a var/out parameter
    - pass reference to a var/out parameter
    - pass array element to a var/out parameter
  + proc types
    - implemented as immutable wrapper function
    - assign := nil, proctype (not clone), @function, @method
    - call  explicit and implicit
    - compare equal and notequal with nil, proctype, address, function
    - assigned(proctype)
    - pass as argument
    - methods
    - mode delphi: proctype:=proc
    - mode delphi: functype=funcresulttype
  + class-of
    - assign :=   nil, var
    - call class method
    - call constructor
    - operators =, <>
    - class var, property, method
    - Self in class method
    - typecast

git-svn-id: trunk@35472 -
2017-02-22 20:59:23 +00:00
michael
7702ebb261 * Patch from Mattias Gaertner; SetCharAt
git-svn-id: trunk@35429 -
2017-02-12 15:17:12 +00:00
michael
f5b76b62fe * Patch from Mattias Gaertner:
- set operator functions
  - dyn array can be null

git-svn-id: trunk@35418 -
2017-02-10 23:26:14 +00:00
michael
eaa02f2f88 * Basic RTL for pas2js generated programs
git-svn-id: trunk@35384 -
2017-02-04 11:31:55 +00:00
nickysn
5306ee552b * regenerated makefiles with latest fpcmake
git-svn-id: trunk@34008 -
2016-06-18 01:00:45 +00:00
nickysn
a58dd988a4 * regenerate makefiles after the fpcmake update
git-svn-id: trunk@34002 -
2016-06-17 22:05:59 +00:00
nickysn
e83f3d2978 * updated all the remaining makefiles that 'fpcmake -r' missed
git-svn-id: trunk@31527 -
2015-09-05 11:21:36 +00:00
nickysn
2e3cb70489 * regenerated makefiles after adding the win16 target
git-svn-id: trunk@31525 -
2015-09-05 11:02:54 +00:00
joost
46906833f1 * Re-generated makefile's
git-svn-id: trunk@31318 -
2015-08-12 19:47:44 +00:00
joost
ac87da7c42 * Filter the Makefile's unit searchpaths from the fpmake command line.
To void cluttering the .fpm file

git-svn-id: trunk@31317 -
2015-08-12 19:15:14 +00:00
Károly Balogh
77bdd83bfc AROS/x86_64: regenerated Makefiles
git-svn-id: trunk@31177 -
2015-06-29 00:09:06 +00:00
Jonas Maebe
89418d23e5 * regenerated Makefiles with Linux/AArch64 support
git-svn-id: trunk@30891 -
2015-05-20 20:15:10 +00:00
Jonas Maebe
fa328436ab * regenerated for iphonesim/x86-64
git-svn-id: trunk@29974 -
2015-02-23 22:56:41 +00:00
Jonas Maebe
3d01d4ceb1 * regenerated with Darwin/AArch64 support
git-svn-id: trunk@29950 -
2015-02-23 22:54:53 +00:00
marco
d407b668d1 * version updated to 3.1.1
git-svn-id: trunk@29399 -
2015-01-04 21:09:04 +00:00
joost
d53da9192b * Renamed pas2js package to utils-pas2js, for consistency
git-svn-id: trunk@29397 -
2015-01-04 20:46:57 +00:00
joost
fcade9d8b8 * Re-generated utils-Makefile.fpcs and Makefiles
git-svn-id: trunk@29394 -
2015-01-04 20:37:29 +00:00
Károly Balogh
da7efb8607 AROS: regenerated Makefiles to support i386-aros
git-svn-id: trunk@28438 -
2014-08-17 23:16:47 +00:00
michael
181892cc5f * First implementation of pas2js converter program
git-svn-id: trunk@27476 -
2014-04-05 09:19:55 +00:00