marco
cffc8317fa
* mantis #35013 library parts. Allow embedded objects.
...
git-svn-id: trunk@42594 -
2019-08-06 12:00:25 +00:00
Mattias Gaertner
481126fc80
fcl-passrc: local var, implassign
...
git-svn-id: trunk@42592 -
2019-08-06 08:07:35 +00:00
pierre
6c87348b86
Add mode and optimizer switches names, and check that no unknown switch is set
...
git-svn-id: trunk@42591 -
2019-08-06 06:32:52 +00:00
nickysn
321e4d5837
* convert the internal name from IMPDEF records to upper case if the
...
CaseSensitiveSymbols option is off
git-svn-id: trunk@42590 -
2019-08-06 00:44:00 +00:00
nickysn
295daf4a7f
+ recognize stack segments and fill the total stack size in the NewExe header
...
git-svn-id: trunk@42589 -
2019-08-06 00:40:43 +00:00
nickysn
a86623b97a
+ initialize the flags for the code and data segments in the NewExe header
...
git-svn-id: trunk@42588 -
2019-08-06 00:23:31 +00:00
nickysn
7132973847
+ added the missing NewExe segment attributes as properties to the
...
TNewExeSection class and create the NewExe segment table into the .exe file.
Not all of the properties are initialized yet, though.
git-svn-id: trunk@42587 -
2019-08-05 17:08:18 +00:00
Mattias Gaertner
fb27e7f4c3
fcl-image: write tif: use compression number DeflateAdobe, not obsolete DeflateZLib
...
git-svn-id: trunk@42586 -
2019-08-05 16:54:17 +00:00
pierre
c74007b580
Revert wrong part in commit 42580: reinstate 'override FPC=' for cycle targets
...
git-svn-id: trunk@42585 -
2019-08-05 13:33:12 +00:00
nickysn
d7c24c05d0
+ fill the segment table start offset in the NewExe header
...
git-svn-id: trunk@42584 -
2019-08-05 13:30:01 +00:00
pierre
0167ddf44c
Reorganize token buffer output to be able to use it for generics and inlined functions
...
git-svn-id: trunk@42583 -
2019-08-05 09:15:12 +00:00
pierre
7b0d2febd7
Do not use -Sew (turn warnings into errors) if CYCLELEVEL is equal to 1
...
git-svn-id: trunk@42582 -
2019-08-05 09:02:16 +00:00
pierre
5a3883b1ab
Fix internal error by using same code to set checkoverflow variable as in powerpc/nppcadd unit
...
git-svn-id: trunk@42581 -
2019-08-05 08:50:37 +00:00
pierre
754b1bd930
Add PPUDUMP variable to be able to specify explicit version of ppudump program, defaulting to ppudump executable in SEARCHPATH
...
git-svn-id: trunk@42580 -
2019-08-05 08:10:02 +00:00
pierre
d6c5a1799c
Avoid range check error when compiled -Criot option
...
git-svn-id: trunk@42579 -
2019-08-05 06:47:51 +00:00
Mattias Gaertner
16752a8fba
fcl-passrc: resolver: specialize proc implementation
...
git-svn-id: trunk@42578 -
2019-08-04 17:21:48 +00:00
Mattias Gaertner
5e81d57f39
pastojs: test generic empty class
...
git-svn-id: trunk@42577 -
2019-08-03 19:08:33 +00:00
Mattias Gaertner
be1fdc4667
fcl-passrc: pass TypeParams when creating type, and resolve forward generic class
...
git-svn-id: trunk@42576 -
2019-08-03 19:08:05 +00:00
Jonas Maebe
6b9f2114f1
* test from mantis #35897 , already fixed
...
git-svn-id: trunk@42575 -
2019-08-03 13:52:46 +00:00
Jonas Maebe
46afcbb362
* an incomplete case statement is not an error in ISO Pascal (mantis #35910 )
...
* give a compile-time error in ISO/Extended Pascal if the compiler can prove
the case selector value is not handled, and a warning in other modes
(mantis #35915 )
o trigger the case node simplification at the end of the case node typecheck
pass, like for other nodes
git-svn-id: trunk@42574 -
2019-08-03 13:47:27 +00:00
Jonas Maebe
ce598c15ec
* factored out the conditions under which add nodes need to perform
...
overflow checks
o in particular ensure that cpu-specific overrides don't perform overflow
checks when nf_internal is set
git-svn-id: trunk@42573 -
2019-08-03 12:19:50 +00:00
nickysn
c70f2c63cd
+ set the initial SS:SP in the NewExe header
...
git-svn-id: trunk@42572 -
2019-08-03 01:04:32 +00:00
nickysn
dbafff24fe
+ fill the program entry point address in the NewExe header
...
git-svn-id: trunk@42571 -
2019-08-03 00:59:02 +00:00
nickysn
901dde5fa5
+ fill the auto data segment number in the NewExe header
...
git-svn-id: trunk@42570 -
2019-08-03 00:42:56 +00:00
nickysn
34b3af7e92
* reset CurrMemPos after each NewExeSection to ensure each segment starts at 0 offset
...
git-svn-id: trunk@42569 -
2019-08-02 23:22:59 +00:00
nickysn
868030b3fe
+ adapted TOmfObjSection.MemPosStr to output segment:offset for NewExe executables
...
git-svn-id: trunk@42568 -
2019-08-02 23:01:39 +00:00
nickysn
2c176be2fd
+ adapted TOmfObjSymbol.AddressStr to show correct segment:offset for NewExe files as well
...
git-svn-id: trunk@42567 -
2019-08-02 22:47:44 +00:00
nickysn
b739d79f9b
* combine the data, bss, stack and heap into the same NewExe segment
...
git-svn-id: trunk@42566 -
2019-08-02 16:53:16 +00:00
nickysn
1258439767
+ added an TNewExeSection.MemPosStr override that outputs a segment:offset string
...
git-svn-id: trunk@42565 -
2019-08-02 16:14:54 +00:00
nickysn
3ebcef32ba
+ introduced TExeSection.MemPosStr - a virtual method for converting the
...
section's memory position to string for the linker map file. This can be
overriden e.g. for segmented exe formats.
git-svn-id: trunk@42564 -
2019-08-02 16:05:37 +00:00
nickysn
8e436e6335
+ add a segment number (MemBasePos) to TNewExeSection
...
git-svn-id: trunk@42563 -
2019-08-02 14:47:19 +00:00
nickysn
30e7406be3
* override MemPos_Start for the NewExe exe output and perform the whole MemPos
...
stage inside of it, because the linker script contains only dummy section
names and thus none of the sections get their MemPos set, while using the
default implementation
git-svn-id: trunk@42562 -
2019-08-02 14:32:40 +00:00
nickysn
c32ddf42eb
* create NewExe sections, corresponding to 64kb segments
...
git-svn-id: trunk@42561 -
2019-08-02 14:20:02 +00:00
svenbarth
6952ab5baf
* fix for Mantis #35918 : don't set the mangledname for the attribute's constructor function; let the compiler do its job instead
...
git-svn-id: trunk@42560 -
2019-08-02 14:07:17 +00:00
svenbarth
3d585db43d
* fix for Mantis #35906 : use more accurate modified time from the FindData on Windows for the Timestamp
...
git-svn-id: trunk@42559 -
2019-08-02 13:16:17 +00:00
svenbarth
7809930b08
* fix for Mantis #35903 : apply patch by J. Gareth Moreton to update the copyright year to 2019
...
git-svn-id: trunk@42558 -
2019-08-02 13:16:14 +00:00
svenbarth
50fec47b9a
* fix for Mantis #35919 : apply patch by Maciej Izak
...
git-svn-id: trunk@42557 -
2019-08-02 13:16:09 +00:00
svenbarth
e8a7661bcf
* fix for Mantis #35921 : apply patch by Maciej Izak
...
git-svn-id: trunk@42556 -
2019-08-02 13:16:07 +00:00
pierre
3195b64599
Add .NOTPARALLEL for beos and haiku RTLs
...
git-svn-id: trunk@42555 -
2019-08-02 11:21:43 +00:00
nickysn
83afeb2e93
+ added dummy overrides for TInternalLinkerWin16.GetCodeSize, .GetDataSize and
...
.GetBssSize, because the default ones crash
git-svn-id: trunk@42554 -
2019-08-01 16:49:08 +00:00
nickysn
5d01d53a96
* don't crash in TOmfObjSection.MemPosStr if MZExeUnifiedLogicalSegment isn't set
...
git-svn-id: trunk@42553 -
2019-08-01 16:44:46 +00:00
nickysn
93a08aaebd
+ write the NewExe header in TNewExeOutput.writeData
...
git-svn-id: trunk@42552 -
2019-08-01 16:43:39 +00:00
nickysn
d10fb705e4
+ added an TNewExeOutput.Order_ObjSectionList override and sort obj sections by
...
class name first, then by name, then by initial order
git-svn-id: trunk@42551 -
2019-08-01 15:52:19 +00:00
pierre
b768673e96
Also recompile rtl using FPCFPMAKE before bootstrapping in fpmkunit directory (helps for cross-compilation)
...
git-svn-id: trunk@42550 -
2019-08-01 14:59:52 +00:00
pierre
d6d3e171ce
Try to fix alignment issues in RTTI code for 64-bit targets which require proper alignment
...
git-svn-id: trunk@42549 -
2019-08-01 14:46:56 +00:00
Jonas Maebe
62218e823f
* synchronised with r442 of the universal interfaces:
...
o fixed iOS/simulator compilation
git-svn-id: trunk@42548 -
2019-07-31 19:30:51 +00:00
nickysn
2c4c34ef9b
+ split the win16 executable into sections
...
git-svn-id: trunk@42547 -
2019-07-31 15:09:02 +00:00
nickysn
05c420fad5
+ create a TNewExeSection class
...
git-svn-id: trunk@42546 -
2019-07-31 13:47:14 +00:00
nickysn
83861799ae
+ also add and resolve import symbols coming from OMF object modules
...
git-svn-id: trunk@42545 -
2019-07-31 13:32:43 +00:00
Mattias Gaertner
583ec13074
fcl-passrc: resolve specialized class
...
git-svn-id: trunk@42544 -
2019-07-31 11:09:39 +00:00