michael 99cdd6795a Latest changes from Michail Baikov 26 tahun lalu
..
m68k e525797c51 * updated copyright to 2000 26 tahun lalu
new a2318ce5ec * regenerated 26 tahun lalu
utils 4a4a24b6e8 * log truncated 26 tahun lalu
Makefile a2318ce5ec * regenerated 26 tahun lalu
Makefile.fpc fe4d62cf91 * ppuclean target, which is used by for the ide compiling so a new 26 tahun lalu
README 00cd43e466 * refer to prog manual instead of cws 26 tahun lalu
aasm.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ag386att.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ag386bin.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ag386int.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ag386nsm.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ag68kgas.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ag68kmit.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ag68kmot.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ag68kmpw.pas 4a4a24b6e8 * log truncated 26 tahun lalu
aopt386.pas 4a4a24b6e8 * log truncated 26 tahun lalu
assemble.pas 4a4a24b6e8 * log truncated 26 tahun lalu
browcol.pas 4a4a24b6e8 * log truncated 26 tahun lalu
browlog.pas 4a4a24b6e8 * log truncated 26 tahun lalu
catch.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg386add.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg386cal.pas 7ff7b4c2c3 * added regallocs for esi 26 tahun lalu
cg386cnv.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg386con.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg386flw.pas 05e486a068 * big update for exception handling code generation: possible mem holes 26 tahun lalu
cg386inl.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg386ld.pas 7ff7b4c2c3 * added regallocs for esi 26 tahun lalu
cg386mat.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg386mem.pas 7ff7b4c2c3 * added regallocs for esi 26 tahun lalu
cg386set.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kadd.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kcal.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kcnv.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kcon.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kflw.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kinl.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kld.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kmat.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kmem.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cg68kset.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cga68k.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cgai386.pas 05e486a068 * big update for exception handling code generation: possible mem holes 26 tahun lalu
cobjects.pas 4a4a24b6e8 * log truncated 26 tahun lalu
comphook.pas 4a4a24b6e8 * log truncated 26 tahun lalu
compiler.pas 4a4a24b6e8 * log truncated 26 tahun lalu
comprsrc.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cpuasm.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cpubase.pas 4a4a24b6e8 * log truncated 26 tahun lalu
cpuinfo.pas e525797c51 * updated copyright to 2000 26 tahun lalu
cresstr.pas e525797c51 * updated copyright to 2000 26 tahun lalu
csopt386.pas 9e85007190 * fixed stupid typo! 26 tahun lalu
daopt386.pas 8a40388de3 * fixed bug due to lack of support for top_symbol operands 26 tahun lalu
depend e525797c51 * updated copyright to 2000 26 tahun lalu
dmisc.pas 4a4a24b6e8 * log truncated 26 tahun lalu
errord.msg 98abf80f1f * updated German message file 26 tahun lalu
errore.msg 85087cf8c2 * -gl option added 26 tahun lalu
errores.msg e525797c51 * updated copyright to 2000 26 tahun lalu
errorf.msg e525797c51 * updated copyright to 2000 26 tahun lalu
errorn.msg e525797c51 * updated copyright to 2000 26 tahun lalu
errorr.msg 99cdd6795a Latest changes from Michail Baikov 26 tahun lalu
export.pas 4a4a24b6e8 * log truncated 26 tahun lalu
files.pas 3385467467 * dont' check for ppl files as they aren't used atm. 26 tahun lalu
gdb.pas 4a4a24b6e8 * log truncated 26 tahun lalu
gendef.pas 4a4a24b6e8 * log truncated 26 tahun lalu
globals.pas 5aec5872b6 * addpath fixed with list of paths when inserting at the beginning 26 tahun lalu
globtype.pas 4a4a24b6e8 * log truncated 26 tahun lalu
hcgdata.pas 4a4a24b6e8 * log truncated 26 tahun lalu
hcodegen.pas 4a4a24b6e8 * log truncated 26 tahun lalu
htypechk.pas 4a4a24b6e8 * log truncated 26 tahun lalu
i386att.inc 67589c0532 * fixed typo 26 tahun lalu
i386atts.inc 80e64da3df * fixed fpu suffix parsing for att reader 26 tahun lalu
i386ins.dat 80e64da3df * fixed fpu suffix parsing for att reader 26 tahun lalu
i386int.inc 67589c0532 * fixed typo 26 tahun lalu
i386op.inc 67589c0532 * fixed typo 26 tahun lalu
i386prop.inc 0a2e7859d2 * Jcc doesn't destroy anything (instead of everyting) 26 tahun lalu
i386tab.inc 80e64da3df * fixed fpu suffix parsing for att reader 26 tahun lalu
import.pas 4a4a24b6e8 * log truncated 26 tahun lalu
innr.inc 4a4a24b6e8 * log truncated 26 tahun lalu
link.pas 4a4a24b6e8 * log truncated 26 tahun lalu
make.cmd e525797c51 * updated copyright to 2000 26 tahun lalu
mdppc386.bat 47fd93dfa5 * more fixes to get it with delphi running 27 tahun lalu
messages.pas 4a4a24b6e8 * log truncated 26 tahun lalu
mppc386.bat e53aceb9be + floating point register variables !! 26 tahun lalu
mppc68k.bat 0e8616ed1f + temporary variables now in temp_gen.pas unit 27 tahun lalu
msgidx.inc 85087cf8c2 * -gl option added 26 tahun lalu
msgtxt.inc 85087cf8c2 * -gl option added 26 tahun lalu
og386.pas 4a4a24b6e8 * log truncated 26 tahun lalu
og386cff.pas 4a4a24b6e8 * log truncated 26 tahun lalu
og386dbg.pas 4a4a24b6e8 * log truncated 26 tahun lalu
og386elf.pas 4a4a24b6e8 * log truncated 26 tahun lalu
options.pas 5aec5872b6 * addpath fixed with list of paths when inserting at the beginning 26 tahun lalu
opts386.pas 4a4a24b6e8 * log truncated 26 tahun lalu
opts68k.pas 4a4a24b6e8 * log truncated 26 tahun lalu
owar.pas 4a4a24b6e8 * log truncated 26 tahun lalu
owbase.pas 4a4a24b6e8 * log truncated 26 tahun lalu
parser.pas 4a4a24b6e8 * log truncated 26 tahun lalu
pass_1.pas 4a4a24b6e8 * log truncated 26 tahun lalu
pass_2.pas 05e486a068 * big update for exception handling code generation: possible mem holes 26 tahun lalu
pbase.pas 4a4a24b6e8 * log truncated 26 tahun lalu
pdecl.pas 4a4a24b6e8 * log truncated 26 tahun lalu
pexports.pas 4a4a24b6e8 * log truncated 26 tahun lalu
pexpr.pas 4a4a24b6e8 * log truncated 26 tahun lalu
pmodules.pas 4a4a24b6e8 * log truncated 26 tahun lalu
popt386.pas 4a4a24b6e8 * log truncated 26 tahun lalu
pp.pas 05e486a068 * big update for exception handling code generation: possible mem holes 26 tahun lalu
ppc.dpr e525797c51 * updated copyright to 2000 26 tahun lalu
ppheap.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ppovin.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ppu.pas 4a4a24b6e8 * log truncated 26 tahun lalu
pstatmnt.pas 4a4a24b6e8 * log truncated 26 tahun lalu
psub.pas 4a4a24b6e8 * log truncated 26 tahun lalu
psystem.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ptconst.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ptype.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ra386.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ra386att.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ra386dir.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ra386int.pas 4a4a24b6e8 * log truncated 26 tahun lalu
ra68kmot.pas 4a4a24b6e8 * log truncated 26 tahun lalu
rautils.pas 4a4a24b6e8 * log truncated 26 tahun lalu
scandir.inc 4a4a24b6e8 * log truncated 26 tahun lalu
scanner.pas 4a4a24b6e8 * log truncated 26 tahun lalu
script.pas 4a4a24b6e8 * log truncated 26 tahun lalu
switches.pas 4a4a24b6e8 * log truncated 26 tahun lalu
symconst.pas 99fe175be6 * added st_default stringtype 26 tahun lalu
symdef.inc 12d4917565 * avoid stack overflow in tref.done (bug 846) 26 tahun lalu
symdefh.inc 4a4a24b6e8 * log truncated 26 tahun lalu
symppu.inc 4a4a24b6e8 * log truncated 26 tahun lalu
symsym.inc 12d4917565 * avoid stack overflow in tref.done (bug 846) 26 tahun lalu
symsymh.inc 4a4a24b6e8 * log truncated 26 tahun lalu
symtable.pas 12d4917565 * avoid stack overflow in tref.done (bug 846) 26 tahun lalu
systems.pas 4a4a24b6e8 * log truncated 26 tahun lalu
t_go32v1.pas 4a4a24b6e8 * log truncated 26 tahun lalu
t_go32v2.pas 4a4a24b6e8 * log truncated 26 tahun lalu
t_linux.pas 1612077d8d * -Xt option to link staticly against c libs 26 tahun lalu
t_os2.pas 4a4a24b6e8 * log truncated 26 tahun lalu
t_win32.pas 83c82663f2 * fixed group() writing 26 tahun lalu
tcadd.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tccal.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tccnv.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tccon.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tcflw.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tcinl.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tcld.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tcmat.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tcmem.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tcset.pas 4a4a24b6e8 * log truncated 26 tahun lalu
temp_gen.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tgen68k.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tgeni386.pas 88652eee6b * esi is never deallocated anymore in methods 26 tahun lalu
todo.txt 51f8c5a754 * lineifno 26 tahun lalu
tokendat.pas e525797c51 * updated copyright to 2000 26 tahun lalu
tokens.dat dc4b6d1710 * regenerated, it was broken by a previous commit 26 tahun lalu
tokens.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tpexcept.pas 4a4a24b6e8 * log truncated 26 tahun lalu
tree.pas 4a4a24b6e8 * log truncated 26 tahun lalu
types.pas 4a4a24b6e8 * log truncated 26 tahun lalu
verbose.pas 4a4a24b6e8 * log truncated 26 tahun lalu
version.pas 4a4a24b6e8 * log truncated 26 tahun lalu

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 compile/modify the compiler, please read first the
programmers manual.


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.
12/05/99 rtl/utils/ directory moved to utils/. Moved the utils only needed
for compiler development to compiler/utils/
13/05/99 Classes are now only allowed in the ObjFpc or Delphi mode. Use
{$mode objfpc} or {$mode delphi}. Or from commandline -S2 or -Sd
16/05/99 Remove options -Up (use now -Fu) and -Fg (use now -Fl)
17/05/99 Redesign of ansistring temporary handling, please report
any problems
17/05/99 Most stuff of the objpas unit is now in the system unit
because the new temporary ansistring handling support
exceptions and exceptions need the class OOP model
18/05/99 The compiler will stop directly if there are errors in the
commandline parameters
16/08/99 DLL are relocatable by default (need to strip symbols)
-WN make non relocatable DLL (which can retain debug info)
for both type of DLL the prefered image base can be specified
with -WB1100000 for instance to get image base at $11000000.
08/09/99 pointer addition/substraction (only available in fpc,objfpc mode)
now uses the size of the type the pointer points to, just like
inc(),dec() already did. Now inc(p) is the same as p:=p+1.
But old code can be broken by this when there is a p:=p+4 then
it's now parsed like: p:=p+4*sizeof(type). To get the old situation
you can use typecasting: p:=ptype(pointer(p)+4).
08/09/99 class/object field return their offsets in the object/class. You
must access them self with loading the object/class pointer and
then create a reference where you add the field
07/11/99 Small change to property writing in PPU => all units
exporting classes with properties must be recompiled
(no new unit format, so be careful) (FK)
08/11/99 PP variable in Makefiles changed to FPC
14/11/99 makefile.fpc is not available anymore. You must now use fpcmake
which is available from the utils/. There is also an example
Makefile.fpc