peter 2e1b024ec9 * released pecoff for win32 as default 26 anni fa
..
new a184e5ff43 * well, more changes, especially parts of secondload ported 26 anni fa
Makefile 249d19c540 * better messagefile recompiling 26 anni fa
aasm.pas 460464ff24 * seperate OPTimizer INFO pointer field in tai object 26 anni fa
ag386bin.pas f34e2067eb * don't write .o and link if errors occure during assembling 26 anni fa
ag386int.pas db7cb66807 * fixed condition writing 26 anni fa
ag386nsm.pas db7cb66807 * fixed condition writing 26 anni fa
ag68kgas.pas f986459350 * don't count ait_marker for lineinfo 27 anni fa
ag68kmit.pas 337f054764 section order changed to get closer output from coff writer 26 anni fa
ag68kmot.pas 58bfc3ac78 * some m68k fixes (still not compilable !) 26 anni fa
ag68kmpw.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
aopt386.pas 4590ff9524 + some comments 26 anni fa
assemble.pas 4841b4236c * updated messages 26 anni fa
browcol.pas adc2a8397d * fixed crash 26 anni fa
browlog.pas f379498229 + BrowserLog for browser.log generation 27 anni fa
catch.pas b49c75e37b * mssing endif added 26 anni fa
cg386add.pas 7b64448f59 problem with EAX being overwritten before used in A_MULL code fixed 26 anni fa
cg386cal.pas 611da2d24e * merged nasm compiler 26 anni fa
cg386cnv.pas e9da9f168e explicit type conv to pobject checked with cond TESTOBJEXT2 26 anni fa
cg386con.pas 1c96916943 * generic write_float and str_float 26 anni fa
cg386flw.pas 611da2d24e * merged nasm compiler 26 anni fa
cg386inl.pas 1c96916943 * generic write_float and str_float 26 anni fa
cg386ld.pas 1c96916943 * generic write_float and str_float 26 anni fa
cg386mat.pas 89405ceeed + positive number MOD power of 2 now done with AND instruction 26 anni fa
cg386mem.pas 611da2d24e * merged nasm compiler 26 anni fa
cg386set.pas 0ffdaa141a * Changed longword to cardinal 26 anni fa
cg68kadd.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
cg68kcal.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
cg68kcnv.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
cg68kcon.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
cg68kflw.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
cg68kinl.pas 5f410c2cd3 * all formaldefs are now a sinlge definition 26 anni fa
cg68kld.pas a5f0168fbb * wrong stabs info corrected once again !! 27 anni fa
cg68kmat.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
cg68kmem.pas 1b4990c597 * #0 char removed 27 anni fa
cg68kset.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
cga68k.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
cobjects.pas 7f578ca55b * indexarray.delete resets pointer after dispose 26 anni fa
comphook.pas 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
compiler.pas 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
comprsrc.pas 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
csopt386.pas 460464ff24 * seperate OPTimizer INFO pointer field in tai object 26 anni fa
cws.txt 99db27959b - all stuff moved to docs\internal.tex 27 anni fa
daopt386.pas 26fa893ed7 * seperate OPTimizer INFO pointer field in tai object 26 anni fa
depend 7f720c64ef Added compiler call 27 anni fa
dmisc.pas 47fd93dfa5 * more fixes to get it with delphi running 26 anni fa
errord.msg f07799a2ef More changes by Alexander Stohr 26 anni fa
errorn.msg 19f6b92bc0 + better info for impossible type conversion in calln 26 anni fa
export.pas a1f1003555 * some range check bugs fixed (still not working !) 27 anni fa
files.pas 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
gdb.pas 611da2d24e * merged nasm compiler 26 anni fa
gendef.pas 6a802e85d7 * released valintern 26 anni fa
globals.pas 253ba04a57 * a delphi compiled compiler recompiles ppc 26 anni fa
globtype.pas 884c517b18 * release storenumber,double_checksum 26 anni fa
hcgdata.pas 884c517b18 * release storenumber,double_checksum 26 anni fa
hcodegen.pas 611da2d24e * merged nasm compiler 26 anni fa
htypechk.pas b107bae0b3 * overloaded conversion has lower priority 26 anni fa
i386asm.pas 4841b4236c * updated messages 26 anni fa
i386base.pas 611da2d24e * merged nasm compiler 26 anni fa
i386tab.inc 611da2d24e * merged nasm compiler 26 anni fa
import.pas b4045fe57e + support for dll variables 27 anni fa
innr.inc dc1f9b5bbb * addr() internal 26 anni fa
insns.dat 2d3524bd9e * init 26 anni fa
lin_targ.pas 10d97a9144 * bugs related to mangledname solved 26 anni fa
link.pas 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
m68k.pas 7e40231ad7 * some dll support for win32 27 anni fa
make.cmd 8aaf209cec + Make script to make compiler under OS/2. 27 anni fa
makecfg 2850b57930 * makecfg inserted 26 anni fa
mdppc386.bat 47fd93dfa5 * more fixes to get it with delphi running 26 anni fa
messages.pas 2e5f9a420a * fixed endless loop with replace $1 with $1 26 anni fa
mppc386.bat 47fd93dfa5 * more fixes to get it with delphi running 26 anni fa
mppc68k.bat 0e8616ed1f + temporary variables now in temp_gen.pas unit 27 anni fa
msgidx.inc 02364c2124 + hint where a duplicate sym is already defined 26 anni fa
msgtxt.inc 02364c2124 + hint where a duplicate sym is already defined 26 anni fa
nasmconv.pas 611da2d24e * merged nasm compiler 26 anni fa
og386.pas e9381eca00 * added alignment code for .bss 26 anni fa
og386cff.pas f34e2067eb * don't write .o and link if errors occure during assembling 26 anni fa
og386dbg.pas 6f8985406a * output is more like as 2.9.1 26 anni fa
og386elf.pas 611da2d24e * merged nasm compiler 26 anni fa
opts386.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
opts68k.pas 1b369bb4bb + globtype,tokens,version unit splitted from globals 27 anni fa
os2_targ.pas 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
owar.pas f34e2067eb * don't write .o and link if errors occure during assembling 26 anni fa
owbase.pas f34e2067eb * don't write .o and link if errors occure during assembling 26 anni fa
parser.pas 884c517b18 * release storenumber,double_checksum 26 anni fa
pass_1.pas 611da2d24e * merged nasm compiler 26 anni fa
pass_2.pas 8836c26503 * several bugs regarding -Or fixed 26 anni fa
pbase.pas d27b21891b * changes of Bruessel: 26 anni fa
pdecl.pas baa08b8bab * fixed crash 26 anni fa
pexports.pas 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
pexpr.pas a62eb5e144 * first fix for a problem with method pointer properties, still doesn't work 26 anni fa
pmodules.pas f34e2067eb * don't write .o and link if errors occure during assembling 26 anni fa
popt386.pas ddc47d6753 + remove the segment prefixes from LEA instructions 26 anni fa
pp.pas 71ae948727 + method message handlers which contain an explicit self can't be called 26 anni fa
ppc.dpr 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
ppheap.pas 699b53f316 * ppheap init code can be called before any getmem 26 anni fa
ppovin.pas f9b1534e17 * a FPC compiled compiler checks now also in debug mode in assigned 26 anni fa
ppu.pas 47fd93dfa5 * more fixes to get it with delphi running 26 anni fa
pstatmnt.pas 4841b4236c * updated messages 26 anni fa
psystem.pas 1c96916943 * generic write_float and str_float 26 anni fa
ptconst.pas 1c96916943 * generic write_float and str_float 26 anni fa
ra386.pas 4841b4236c * updated messages 26 anni fa
ra386att.pas 1c96916943 * generic write_float and str_float 26 anni fa
ra386dir.pas 4841b4236c * updated messages 26 anni fa
ra386int.pas 4841b4236c * updated messages 26 anni fa
ra68kmot.pas 1ace0dc9b8 * moved some tables from ra386*.pas -> i386.pas 27 anni fa
rautils.pas 1c96916943 * generic write_float and str_float 26 anni fa
readme 440ddf23be + internal asm 26 anni fa
scandir.inc bc90408c3e + better preproc stack checking and report 26 anni fa
scanner.pas 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
script.pas 94b52a3d7f + smartlinking works (only case jumptable left todo) 27 anni fa
switches.pas acb84c0c88 + cs_typed_const_not_changeable added but not implemented yet ! 26 anni fa
symconst.inc d27b21891b * changes of Bruessel: 26 anni fa
symdef.inc 2bb065a00a + MessagePos() which is enhanced Message() function but also gets the 26 anni fa
symdefh.inc 2bb065a00a + MessagePos() which is enhanced Message() function but also gets the 26 anni fa
symppu.inc 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
symsym.inc 75aea84e80 * small message fixes 26 anni fa
symsymh.inc 884c517b18 * release storenumber,double_checksum 26 anni fa
symtable.pas 8e6fc5fcf0 * one more unitsym problem fix 26 anni fa
systems.pas 2e1b024ec9 * released pecoff for win32 as default 26 anni fa
tcadd.pas 1c96916943 * generic write_float and str_float 26 anni fa
tccal.pas 75aea84e80 * small message fixes 26 anni fa
tccnv.pas a6fd03d7f7 * fixed order of arguments for incompatible types message 26 anni fa
tccon.pas 611da2d24e * merged nasm compiler 26 anni fa
tcflw.pas 611da2d24e * merged nasm compiler 26 anni fa
tcinl.pas 1c96916943 * generic write_float and str_float 26 anni fa
tcld.pas 1c96916943 * generic write_float and str_float 26 anni fa
tcmat.pas 1c96916943 * generic write_float and str_float 26 anni fa
tcmem.pas 611da2d24e * merged nasm compiler 26 anni fa
tcset.pas 611da2d24e * merged nasm compiler 26 anni fa
temp_gen.pas 611da2d24e * merged nasm compiler 26 anni fa
tgen68k.pas 6b807957b1 + resetregistercount, resetusableregisters 27 anni fa
tgeni386.pas 611da2d24e * merged nasm compiler 26 anni fa
todo.txt d27b21891b * changes of Bruessel: 26 anni fa
tokens.pas d27b21891b * changes of Bruessel: 26 anni fa
tpexcept.pas 78d13ec796 * changes to compile it with Delphi 4.0 26 anni fa
tree.pas 1c96916943 * generic write_float and str_float 26 anni fa
types.pas 0136ebb82b + ungettempoftype(pdef) boolean function 26 anni fa
verbose.pas 2bb065a00a + MessagePos() which is enhanced Message() function but also gets the 26 anni fa
version.pas a09375865f * daniels patches against the latest versions 27 anni fa
win_targ.pas 611da2d24e * merged nasm compiler 26 anni fa

readme

This directory contains the sources of the Free Pascal Compiler

To recompile the compiler, use the batch file
mppc386.bat

If you want to build a m68k version to cross compile from i386 to m68k
use the batch file
mppc68k.bat

If you want to modify the compiler, please read first the compiler
writer's guide (cws.txt) in that directory.


Changes in the syntax or semantic of FPC:
-----------------------------------------
28/01/99 implicit conversion from boolean to integer is not possible
anymore (solved several bugs) but this could lead to errors
on previously accepted code (PM)
01/02/99 c styled comments are supported (/* ... */), mainly
for the Sibyl sources of Medigo (FK)
02/02/99 class destructors take now two parameters: flag
if the helper routine should free the instance and
self pointer (FK)
22/02/99 PROTECTED and PRIVATE have now the same behavior
as in TP
09/03/99 small records and arrays passed by value to a function are now directly copied
into a 4 bytes parameter (needed for C and DLL calls) (PM)
11/03/99 the makefile.fpc is now also needed for the compiler and RTL, you can
find it in the base.zip package (PFV)
24/03/99 new directives UNITPATH,INCLUDEPATH,OBJECTPATH,LIBRARYPATH to
set the searchpaths where to find the files for that module (PFV)
25/03/99 new directive STATIC +/- or on/off , works like -St commandline
switch
02/04/99 rtl/cfg/ directory has been removed, it's not used anymore
15/04/99 FINALIZATION is supported
21/04/99 Default assembler for i386 changed to AT&T instead of direct
25/04/99: initialized vars supported in Delphi mode (only $J+ mode)
getting the address of an untyped const is now
forbidden as in BP
27/04/99 New unit format PPU016, you need to recompile all older units
01/05/99 Internal assembler. Assembler readers now support MMX,KNI
instructions.