Commit Graph

52543 Commits

Author SHA1 Message Date
svenbarth
ff44f51292 * generate an internal error to avoid infinite loops if nothing changed during a loop pass to write the debug info of remaining defs
git-svn-id: trunk@37968 -
2018-01-14 16:43:46 +00:00
Mattias Gaertner
1d4d34a52e pas2jslib: added SetPas2JSReadDirCallBack, AddPas2JSDirectoryEntry
git-svn-id: trunk@37967 -
2018-01-14 15:45:35 +00:00
michael
56fae4697a * Accidentally removed keyword virtual from loadfromfile
git-svn-id: trunk@37966 -
2018-01-14 11:52:13 +00:00
michael
cbc50c5fe6 * Restore signature of loadfromstream/loadfromfile, make default delphi compatible
git-svn-id: trunk@37965 -
2018-01-14 10:11:56 +00:00
florian
5c4b1737c4 * in the generate_code normally imaginary registers are used, so just resize the register to 8 bit, the register allocator takes care of the rest
git-svn-id: trunk@37964 -
2018-01-13 22:05:38 +00:00
florian
823c77e6cc * avoid overflow error in ispowerof2 for -2^bitsize, the routine does not handle negative values
git-svn-id: trunk@37963 -
2018-01-13 22:03:29 +00:00
michael
5c1df42fa4 * Fix bug #32871
git-svn-id: trunk@37962 -
2018-01-13 18:21:44 +00:00
Jonas Maebe
d35377fdee * workaround for debug info for interface method wrappers: give them the
line number information of the method declaration if it's in the current
    unit, and otherwise the first line of the current unit (mantis #14399)

git-svn-id: trunk@37961 -
2018-01-13 16:54:22 +00:00
Mattias Gaertner
393b74380c pas2jslib: added readdir callbacks
git-svn-id: trunk@37960 -
2018-01-13 14:08:46 +00:00
Mattias Gaertner
38837bde9b pas2jslib: added readdir callbacks
git-svn-id: trunk@37959 -
2018-01-13 13:40:03 +00:00
Mattias Gaertner
4af3029bba pas2js: callback for read directory
git-svn-id: trunk@37958 -
2018-01-13 13:02:23 +00:00
Mattias Gaertner
42ce6db215 pastojs: platform independent globbing
git-svn-id: trunk@37957 -
2018-01-13 12:37:01 +00:00
Mattias Gaertner
cb2101388d pastojs: added cache for directories
git-svn-id: trunk@37956 -
2018-01-13 11:39:07 +00:00
michael
f455b6f4df * Made FindMatchesBoyerMoore a function, returns true if matches are found (Bug ID 32928)
git-svn-id: trunk@37955 -
2018-01-13 11:07:28 +00:00
michael
f6a08a2c74 * Patch from Ondrej Pokorny to allow correct nodefault/stored for strings
git-svn-id: trunk@37954 -
2018-01-13 10:22:16 +00:00
michael
29badfe5af * Patch from Martok to allow unregistering image handlers (Bug ID 32973)
git-svn-id: trunk@37953 -
2018-01-13 10:04:41 +00:00
michael
b4375fd37a * Fix bug ID #33012 (duplicate module), patch from Sven Barth
git-svn-id: trunk@37952 -
2018-01-13 10:01:10 +00:00
michael
f930d186f0 * Patch from Ondrej Pokorny to set prepared in Prepare (bug ID 33010)
git-svn-id: trunk@37951 -
2018-01-13 09:57:30 +00:00
florian
4a98fcb9d3 * patch by J. Gareth Moreton: reorganises the produced machine code for large unsigned divisions, resolves #32984
git-svn-id: trunk@37950 -
2018-01-12 22:03:52 +00:00
svenbarth
16fb199902 * allow port to be specified on command line
* use a standard port as default

git-svn-id: trunk@37949 -
2018-01-12 16:14:25 +00:00
svenbarth
84632a39e0 + add a variant of the echo example based on FPC's HTTP server
git-svn-id: trunk@37948 -
2018-01-12 16:01:58 +00:00
lacak
a4354e3801 fcl-db: sqldb: use ISO-8601 format for DateTime literals, which is not locale dependant and supported by PostgreSQL,MSSQL,MySQL,Sqlite. Bug #32979
git-svn-id: trunk@37947 -
2018-01-12 14:08:33 +00:00
florian
52aa40c3b0 * remove explicit cast to int64 to avoid an internalerror 200706094, resolves #33004
git-svn-id: trunk@37946 -
2018-01-11 21:02:39 +00:00
florian
1a69c49e81 * fix range check errors by explicit casts
git-svn-id: trunk@37945 -
2018-01-11 21:00:18 +00:00
marco
af85960d62 * East Asian locales era patch from Mantis #33003
git-svn-id: trunk@37944 -
2018-01-11 10:29:32 +00:00
maciej-izak
8aaa3c0fd5 + added additional OpaquePointer type for the system unit (mantis #32977).
git-svn-id: trunk@37942 -
2018-01-09 21:45:03 +00:00
florian
724b822b54 * patch based on a proposal by J. Gareth Moreton to reduce register usage
git-svn-id: trunk@37941 -
2018-01-09 21:32:18 +00:00
maciej-izak
f719f81c06 + added new types for the system unit: opaque data type (TOpaqueData) and related opaque pointer (POpaqueData) (mantis #32977)
git-svn-id: trunk@37940 -
2018-01-09 21:18:26 +00:00
florian
11a3d8762a * patch by J. Gareth Moreton:
- Moved the part that emits the CMOV command outside of the if-else block, because it's the same in both branches and was just duplicated code.
  - Moved a comment about powers of 2 to be right before the correct if-else block.
  - Added a couple of comments to explain what the algorithm is doing to obtain the remainder.
  - Added missing "writeln('ok');" (since 'tmoddiv3.pp' has it) and program header to 'tmoddiv4.pp'.
  - Changed program name from "testfile2" to "tmoddiv3" in 'tmoddiv3.pp'.

git-svn-id: trunk@37939 -
2018-01-09 20:04:49 +00:00
Jonas Maebe
4014f900cb * fixed get_iso_range_type() for non-integer orddefs (belongs with r37934)
git-svn-id: trunk@37938 -
2018-01-09 19:03:36 +00:00
Károly Balogh
7c3702d3b0 palmos: make it easy to disable certain features, also disable some which are not needed now. hello, world! is about 6K with these settings, about 5K smaller than otherwise
git-svn-id: trunk@37937 -
2018-01-09 15:17:10 +00:00
Károly Balogh
31ad24023f palmunits: few tweaks to the palmcube example. don't loop for no reason, handle the return values of syshandleevent as expected, somewhat less stack use
git-svn-id: trunk@37936 -
2018-01-09 11:33:59 +00:00
Jonas Maebe
5f7d3e16f5 * increase comment nesting level when "(*" is followed by another '*'
(mantis #32019)

git-svn-id: trunk@37935 -
2018-01-07 21:05:50 +00:00
Jonas Maebe
a2217cedd5 * evaluate the lower and upper bounds of for-loops in ISO mode using the
ISO-defined range type, instead of using the type of the iteration
    variable (mantis #24318)

git-svn-id: trunk@37934 -
2018-01-07 18:51:53 +00:00
Károly Balogh
8d3cf05b73 palmunits: optimized palmcube slightly, and added offscreen rendering to eliminate flickering on real devices
git-svn-id: trunk@37933 -
2018-01-07 18:31:40 +00:00
florian
9915de038f * build x86-64 with optimizer as well, it is unclear, why -dNOOPT was added
git-svn-id: trunk@37932 -
2018-01-07 16:23:15 +00:00
Károly Balogh
d03e0d3bfb palmos: bail out earlier when we're not in NormalLaunch mode, should fix Fatal Exception crash when installing the app on a real device using HotSync
git-svn-id: trunk@37931 -
2018-01-07 16:17:00 +00:00
Jonas Maebe
0f0bdabb89 * if an absolute typeconversion changes the size, make the source not
regable. Normally this is done when the absolute typeconversion node
    gets created, but the size can sometimes still change afterwards (e.g.
    when removing superfluous 64 bit type conversions) (mantis #32160)

git-svn-id: trunk@37930 -
2018-01-07 15:37:23 +00:00
florian
8714ddafa5 * fix pathes of IDE package
* cosmetic changes (indention)
* cross IDE gets now the CPU name as a prefix
* cross IDE units are build into a seperate dir, so after a full build, a cross IDE can be easily build

git-svn-id: trunk@37929 -
2018-01-07 14:56:44 +00:00
Jonas Maebe
53bef8d202 * fixed calculation of high parameter for arrays with non-integer bounds
(mantis #32645)

git-svn-id: trunk@37928 -
2018-01-07 13:01:14 +00:00
Jonas Maebe
ae087b92d7 * when creating a unique type alias for an object, class or interface,
create a child object/class/interface instead of a copy of the original.
    This fixes override/inheritance checks, and is also Delphi-compatible

git-svn-id: trunk@37927 -
2018-01-07 12:25:16 +00:00
florian
3ce7927096 * made the ide a package, so it can be build in parallel with the other packages, reasons:
- lowers build times
  - ide is not that important anymore than years before
  - other utils like pastojs are also located in the packages tree

git-svn-id: trunk@37926 -
2018-01-06 20:22:30 +00:00
Jonas Maebe
2919d97f91 * support asssigning @class.classmethod to a procvar of object in FPC modes
(mantis #14103)

git-svn-id: trunk@37925 -
2018-01-06 17:47:44 +00:00
Károly Balogh
256c7d4144 palmunits: added the rotating cube example, PalmOS edition. tested to work down to OS3.0
git-svn-id: trunk@37924 -
2018-01-06 15:53:59 +00:00
Károly Balogh
d04a4f3ec3 palmunits: updated hello example, so no coordinates are hardwired. added a copyright header
git-svn-id: trunk@37923 -
2018-01-06 15:52:52 +00:00
florian
81b2cf5d65 * slightly modified patch by J. Gareth Moreton: Optimization for 'mod' on i386/x86-64, resolves #32945
git-svn-id: trunk@37922 -
2018-01-06 14:58:28 +00:00
Jonas Maebe
1934285c20 * don't convert "int64(sint32) * cardinal_const" into a 32x32->64
multiplication (mantis #32046)

git-svn-id: trunk@37921 -
2018-01-06 13:44:03 +00:00
pierre
bdd3b4e695 * Move rtl.cfg content to system.cfg
+ New rtl.cfg containg non-feature options of former file (i8086 only)
  * Use system.cfg for system unit compilation
  + add @rtl.cfg option for i8086 CPU

git-svn-id: trunk@37920 -
2018-01-06 12:27:28 +00:00
florian
6d072872d0 * fix compilation with 3.0.x and -Oonodedfa enabled after r37887
git-svn-id: trunk@37919 -
2018-01-06 11:26:19 +00:00
Károly Balogh
7e630686e0 * do not use a wildcard while deleting smartlinked objects after linking stage in a script, conflicts with script filename quoting on Unix at least
git-svn-id: trunk@37918 -
2018-01-06 10:19:21 +00:00