fpc/compiler
florian d27b21891b * changes of Bruessel:
+ message handler can now take an explicit self
     * typinfo fixed: sometimes the type names weren't written
     * the type checking for pointer comparisations and subtraction
       and are now more strict (was also buggy)
     * small bug fix to link.pas to support compiling on another
       drive
     * probable bug in popt386 fixed: call/jmp => push/jmp
       transformation didn't count correctly the jmp references
     + threadvar support
     * warning if ln/sqrt gets an invalid constant argument
1999-04-28 06:01:54 +00:00
..
new
aasm.pas * storenumber works 1999-04-21 09:43:28 +00:00
ag68kgas.pas
ag68kmit.pas section order changed to get closer output from coff writer 1999-03-10 13:25:42 +00:00
ag68kmot.pas * some m68k fixes (still not compilable !) 1999-03-04 13:55:39 +00:00
ag68kmpw.pas
ag386cof.pas
ag386int.pas * ifdef USE_OP3 released (changed into ifndef NO_OP3) 1999-04-17 22:16:55 +00:00
ag386nsm.pas * ifdef USE_OP3 released (changed into ifndef NO_OP3) 1999-04-17 22:16:55 +00:00
aopt386.pas * fix for crash when the first instruction of a sequence that gets 1999-04-18 17:57:17 +00:00
assemble.pas * fixed bugs 212,222,225,227,229,231,233 1999-03-24 23:16:42 +00:00
browcol.pas * fixed set loading 1999-04-15 09:01:32 +00:00
browlog.pas
catch.pas * mssing endif added 1999-01-28 19:42:03 +00:00
cg68kadd.pas
cg68kcal.pas
cg68kcnv.pas
cg68kcon.pas
cg68kflw.pas
cg68kinl.pas * all formaldefs are now a sinlge definition 1999-04-07 15:31:12 +00:00
cg68kld.pas
cg68kmat.pas
cg68kmem.pas
cg68kset.pas
cg386add.pas * fixes for tempansi 1999-04-19 09:39:01 +00:00
cg386cal.pas * fix for TESTOBJEXT code 1999-04-25 22:33:19 +00:00
cg386cnv.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
cg386con.pas * zero length string were generated multiple times 1999-04-07 15:16:43 +00:00
cg386flw.pas * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
cg386inl.pas * better read/write array 1999-04-26 18:28:12 +00:00
cg386ld.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
cg386mat.pas * more regalloc fixes (still not complete) 1999-04-16 13:42:23 +00:00
cg386mem.pas * farpointerdef moved into pointerdef.is_far 1999-04-26 18:29:54 +00:00
cg386set.pas * more regalloc fixes (still not complete) 1999-04-16 13:42:23 +00:00
cga68k.pas
cobjects.pas * storenumber works 1999-04-21 09:43:28 +00:00
comphook.pas
compiler.pas * storenumber works 1999-04-21 09:43:28 +00:00
comprsrc.pas
csopt386.pas * assembler writers fixed for ag386bin 1999-02-26 00:48:13 +00:00
cws.txt
daopt386.pas * fix for crash when the first instruction of a sequence that gets 1999-04-18 17:57:17 +00:00
depend
dmisc.pas
errorn.msg + better info for impossible type conversion in calln 1999-01-29 11:34:50 +00:00
export.pas
files.pas * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
gdb.pas * fixed comment in directive 1999-03-17 10:52:38 +00:00
gendef.pas * released valintern 1999-03-26 00:05:26 +00:00
globals.pas * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
globtype.pas * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
hcgdata.pas * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
hcodegen.pas * storenumber works 1999-04-21 09:43:28 +00:00
htypechk.pas * small tp7 fix 1999-04-26 09:30:46 +00:00
i386.pas * ifdef USE_OP3 released (changed into ifndef NO_OP3) 1999-04-17 22:16:55 +00:00
import.pas
innr.inc * addr() internal 1999-04-17 13:10:23 +00:00
lin_targ.pas
link.pas * Bug fixed in linking: compiling files on another drive than the one you 1999-04-25 14:31:48 +00:00
m68k.pas
make.cmd
Makefile * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
messages.pas
mppc68k.bat
mppc386.bat
msgidx.inc * changes of Bruessel: 1999-04-28 06:01:54 +00:00
msgtxt.inc * changes of Bruessel: 1999-04-28 06:01:54 +00:00
opts68k.pas
opts386.pas
os2_targ.pas
parser.pas * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
pass_1.pas * ag386bin doesn't use i386.pas anymore 1999-02-22 02:44:07 +00:00
pass_2.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
pbase.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
pdecl.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
pexports.pas * released valintern 1999-03-26 00:05:26 +00:00
pexpr.pas * farpointerdef moved into pointerdef.is_far 1999-04-26 18:29:54 +00:00
pmodules.pas * fixed double .o file insertion 1999-04-26 23:22:42 +00:00
popt386.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
pp.pas * give include file name on error 1999-01-27 13:05:41 +00:00
ppc.dpr
ppheap.pas
ppovin.pas * a FPC compiled compiler checks now also in debug mode in assigned 1999-03-17 22:23:19 +00:00
ppu.pas * farpointerdef moved into pointerdef.is_far 1999-04-26 18:29:54 +00:00
pstatmnt.pas * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
psystem.pas * better read/write array 1999-04-26 18:28:12 +00:00
ptconst.pas + code for initialized vars in Delphi mode 1999-04-25 22:42:16 +00:00
ra68kmot.pas
ra386att.pas * redesigned record offset parsing to support nested records 1999-04-26 23:26:12 +00:00
ra386dir.pas * assembler inlining working for ag386bin 1999-03-31 13:55:03 +00:00
ra386int.pas * redesigned record offset parsing to support nested records 1999-04-26 23:26:12 +00:00
rautils.pas * redesigned record offset parsing to support nested records 1999-04-26 23:26:12 +00:00
readme * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
scandir.inc + better preproc stack checking and report 1999-04-07 14:36:44 +00:00
scanner.pas + better preproc stack checking and report 1999-04-07 14:36:44 +00:00
script.pas
switches.pas + cs_typed_const_not_changeable added but not implemented yet ! 1999-04-25 22:34:58 +00:00
symconst.inc * changes of Bruessel: 1999-04-28 06:01:54 +00:00
symdef.inc * changes of Bruessel: 1999-04-28 06:01:54 +00:00
symdefh.inc * farpointerdef moved into pointerdef.is_far 1999-04-26 18:29:54 +00:00
symppu.inc * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
symsym.inc * changes of Bruessel: 1999-04-28 06:01:54 +00:00
symsymh.inc * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
symtable.pas * farpointerdef moved into pointerdef.is_far 1999-04-26 18:29:54 +00:00
systems.pas * released valintern 1999-03-26 00:05:26 +00:00
tcadd.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
tccal.pas * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
tccnv.pas * release storenumber,double_checksum 1999-04-26 13:31:24 +00:00
tccon.pas * updates for ag386bin 1999-02-22 02:14:59 +00:00
tcflw.pas * fixed bugs 212,222,225,227,229,231,233 1999-03-24 23:16:42 +00:00
tcinl.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
tcld.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
tcmat.pas * updates for ag386bin 1999-02-22 02:14:59 +00:00
tcmem.pas * farpointerdef moved into pointerdef.is_far 1999-04-26 18:29:54 +00:00
tcset.pas * forgot firstpass after array->set conversion 1999-04-14 15:00:13 +00:00
temp_gen.pas + added warning for unreleased ANSI temp 1999-04-19 09:30:48 +00:00
tgen68k.pas
tgeni386.pas ra386att.pas 1999-04-21 16:31:40 +00:00
todo.txt * changes of Bruessel: 1999-04-28 06:01:54 +00:00
tokens.pas * changes of Bruessel: 1999-04-28 06:01:54 +00:00
tpexcept.pas
tree.pas * wrong log fro v1.73 corrected 1999-04-21 21:45:31 +00:00
types.pas + ungettempoftype(pdef) boolean function 1999-04-19 09:29:51 +00:00
verbose.pas + added -vz for assembler specifc comments 1999-04-21 07:41:06 +00:00
version.pas
win_targ.pas * typo correction 1999-04-07 14:18:32 +00:00

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