mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-10-24 05:37:41 +02:00
| .. | ||
| m68k | ||
| new | ||
| utils | ||
| aasm.pas | ||
| ag68kgas.pas | ||
| ag68kmit.pas | ||
| ag68kmot.pas | ||
| ag68kmpw.pas | ||
| ag386att.pas | ||
| ag386bin.pas | ||
| ag386int.pas | ||
| ag386nsm.pas | ||
| aopt386.pas | ||
| assemble.pas | ||
| browcol.pas | ||
| browlog.pas | ||
| catch.pas | ||
| cg68kadd.pas | ||
| cg68kcal.pas | ||
| cg68kcnv.pas | ||
| cg68kcon.pas | ||
| cg68kflw.pas | ||
| cg68kinl.pas | ||
| cg68kld.pas | ||
| cg68kmat.pas | ||
| cg68kmem.pas | ||
| cg68kset.pas | ||
| cg386add.pas | ||
| cg386cal.pas | ||
| cg386cnv.pas | ||
| cg386con.pas | ||
| cg386flw.pas | ||
| cg386inl.pas | ||
| cg386ld.pas | ||
| cg386mat.pas | ||
| cg386mem.pas | ||
| cg386set.pas | ||
| cga68k.pas | ||
| cgai386.pas | ||
| cobjects.pas | ||
| comphook.pas | ||
| compiler.pas | ||
| comprsrc.pas | ||
| cpuasm.pas | ||
| cpubase.pas | ||
| cpuinfo.pas | ||
| cresstr.pas | ||
| csopt386.pas | ||
| daopt386.pas | ||
| depend | ||
| dmisc.pas | ||
| errord.msg | ||
| errore.msg | ||
| errores.msg | ||
| errorf.msg | ||
| errorn.msg | ||
| errorr.msg | ||
| export.pas | ||
| files.pas | ||
| gdb.pas | ||
| gendef.pas | ||
| globals.pas | ||
| globtype.pas | ||
| hcgdata.pas | ||
| hcodegen.pas | ||
| htypechk.pas | ||
| i386att.inc | ||
| i386atts.inc | ||
| i386ins.dat | ||
| i386int.inc | ||
| i386op.inc | ||
| i386prop.inc | ||
| i386tab.inc | ||
| import.pas | ||
| innr.inc | ||
| link.pas | ||
| make.cmd | ||
| Makefile | ||
| Makefile.fpc | ||
| mdppc386.bat | ||
| messages.pas | ||
| mppc68k.bat | ||
| mppc386.bat | ||
| msgidx.inc | ||
| msgtxt.inc | ||
| og386.pas | ||
| og386cff.pas | ||
| og386dbg.pas | ||
| og386elf.pas | ||
| options.pas | ||
| opts68k.pas | ||
| opts386.pas | ||
| owar.pas | ||
| owbase.pas | ||
| parser.pas | ||
| pass_1.pas | ||
| pass_2.pas | ||
| pbase.pas | ||
| pdecl.pas | ||
| pexports.pas | ||
| pexpr.pas | ||
| pmodules.pas | ||
| popt386.pas | ||
| pp.pas | ||
| ppc.dpr | ||
| ppheap.pas | ||
| ppovin.pas | ||
| ppu.pas | ||
| pstatmnt.pas | ||
| psub.pas | ||
| psystem.pas | ||
| ptconst.pas | ||
| ptype.pas | ||
| ra68kmot.pas | ||
| ra386.pas | ||
| ra386att.pas | ||
| ra386dir.pas | ||
| ra386int.pas | ||
| rautils.pas | ||
| README | ||
| scandir.inc | ||
| scanner.pas | ||
| script.pas | ||
| switches.pas | ||
| symconst.pas | ||
| symdef.inc | ||
| symdefh.inc | ||
| symppu.inc | ||
| symsym.inc | ||
| symsymh.inc | ||
| symtable.pas | ||
| systems.pas | ||
| t_go32v1.pas | ||
| t_go32v2.pas | ||
| t_linux.pas | ||
| t_os2.pas | ||
| t_win32.pas | ||
| tcadd.pas | ||
| tccal.pas | ||
| tccnv.pas | ||
| tccon.pas | ||
| tcflw.pas | ||
| tcinl.pas | ||
| tcld.pas | ||
| tcmat.pas | ||
| tcmem.pas | ||
| tcset.pas | ||
| temp_gen.pas | ||
| tgen68k.pas | ||
| tgeni386.pas | ||
| todo.txt | ||
| tokendat.pas | ||
| tokens.dat | ||
| tokens.pas | ||
| tpexcept.pas | ||
| tree.pas | ||
| types.pas | ||
| verbose.pas | ||
| version.pas | ||
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