Wiki copymirror

This is a mirror of the wiki at pascal.chat. Editing, history and sign-in are there.

Compiler development articles

Bahasa Indonesia ยท English

Warning-icon.png

Warning: As of 2021-May-21. the current compiler version is 3.2.2, so it is possible some of the details listed below may have changed.

The current FPC version under developement is 2.5.1. Compiler internals are documented at the evolving FPC internals page.

General

How to start

FPC internals

Language related articles

Coding style

Porting Free Pascal

Testing FPC

Enable new style smartlinking (FreeBSD, Linux)

C++ linking

Note that FPC doesn't have negative VMT offsets due to GNU LD limitations.

The fundament of above C++ <-> OPas lies in COM interfaces: (quote from Rudy Velthuis)

"Well, all compilers must be able to create COM interfaces. Since in C++, these are simply pure abstract classes, and Delphi must have the same layout, for many reasons, they are all compatible. In fact, a pure abstract class pointer points to a structure of which the first entry is a VMT. This is also how interfaces are built"

Processor dependent

See also platform list.

Passing Pascal Types to C Routines

i386

PIC information

PowerPC

PPC Calling conventions

Internal Linker

Internal Linker

Packages

Packages


From the Free Pascal wiki, page "Compiler development articles", as the Internet Archive kept it on 2026-01-02, last changed on 2021-06-11. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Revision 2, last changed by WikiArchive .