Compiler development articles/id
│
English (en) │
Bahasa Indonesia (id) │
Saat ini versi FPC yang sedang dikembangkan adalah 2.3.1. Internal kompilator didokumentasikan di halaman FPC internals yang berkembang.
Umum
Hidupkan gaya baru smartlinking (freebsd,linux)
- in i_*.pas menambah seksi tf_smartlink_ke field flags dari rekaman deskripsi platform untuk OS/CPU combo anda (dalam kasus saya i_bsd.pas, rekaman system_i386_freebsd_info)
- in ogelf.pas menggulung ke bawah, dan menambahkan af_smartlink_sections ke field flags pada as_i386_elf32_info
- jalankan "(g)make all OPT='-Aas -k--gc-sections' di tingkat atas untuk membangun menggunakan rutin baru smartlinking.
C++ linking
Lihat http://rvelthuis.bei.t-online.de/articles/articles-cppobjs.htm
Catatan bahwa FPC tidak mempunyai ofset VMT negatif karerna keterbatasan GNU LD.
Fundamen C++ di atas <-> OPas bergantung pada antarmuka COM : (dikutip dari 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
Lihat juga daftar platform.
Passing Pascal Types to C Routines