FPC New Features Trunk
Free Pascal Compiler - User Changes (Release Notes)
User Changes:
2.2.0 | 2.2.2 | 2.2.4 | 2.4.0 | 2.4.2 | 2.4.4 | 2.6.0 | 2.6.2 | 2.6.4 | 3.0 | 3.0.2 | 3.0.4 | 3.2.0 | 3.2.2 | 3.2.4 | trunk (current development)
New Features:
2.4.2 | 2.4.4 | 2.6.0 | 2.6.2 | 3.0.0 | 3.2.0 | 3.2.2 | trunk (current development)
From the Free Pascal wiki, page "FPC New Features Trunk", as the Internet Archive kept it on 2026-09-26, last changed on 2026-09-23. 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.
Edited on wiki.freepascal.org by 25 people, 2010–2024
From the official wiki's backup of 26 May 2024: who edited this page there, and when. Edits made there after that date were not recorded, and the earlier versions are not shown here; the main page says why.
| When | Who | What changed |
|---|---|---|
| Jonas | initial version of page listing new features | |
| Maciejkaczkowski | Better support for Delphi-compatible classes = | |
| Jonas | language corrections (minor) | |
| Jonas | Language changes: Constref parameter modifier | |
| Jonas | Constref parameter modifier (minor) | |
| Jonas | Constref parameter modifier (minor) | |
| Jonas | documented ARM Thumb-2 and VFP support | |
| Jonas | + iPhoneSim target | |
| Jonas | Language changes: nested procvar support | |
| Jonas | language changes -> language (minor) | |
| Jonas | Language: ISO Standard Pascal compatibility mode | |
| Jonas | Language: &-escaping of keywords | |
| Jonas | Language: univ parameters in macpas mode | |
| Jonas | Language: CExtended | |
| Jonas | link FPC_New_Features_2.4.2 page | |
| Jonas | Language: non-local goto support | |
| Jonas | Support for the iPhoneSim target: cocoall is not compiled for darwin/arm or iphonesim/i386 (these targets require a self-generated uikit.pas instead) (minor) | |
| Jonas | Language: Support for SAR | |
| Jonas | Language: Bitscan intrinsics, changes the wording of the SAR intrinsic description a bit | |
| Jonas | =Bitscan intrinsics: removed superfluous = (minor) | |
| Jonas | Bitscan intrinsics: fixed link to SAR (minor) | |
| Jonas | Bitscan intrinsics (minor) | |
| Jonas | (minor) | |
| Paul Ishenin | Custom deprecated messages | |
| Paul Ishenin | Language | |
| Jonas | Advanced record syntax (minor) | |
| Jonas | Custom deprecated messages (minor) | |
| Jonas | Advanced record syntax (minor) | |
| Jonas | Scoped enumerations (minor) | |
| Jonas | ARM systems (minor) | |
| Paul Ishenin | Language | |
| Jonas | Support for nested procedural variables (minor) | |
| Jonas | Generic records and arrays (minor) | |
| Paul Ishenin | Generic records and arrays | |
| Paul Ishenin | Advanced record syntax | |
| Jonas | Support for VFPv2 and VFPv3 (minor) | |
| PascalDragon | Added section about helper types | |
| FPK | New Boolean types | |
| Vincent | Boolean16, Boolean32 and Boolean32 types: Added Boolean64 | |
| Jonas | Boolean16, Boolean32 and Boolean64 types (minor) | |
| Jonas | Boolean16, Boolean32 and Boolean64 types (minor) | |
| AlexVinS | Boolean16, Boolean32 and Boolean64 types: + stub | |
| AlexVinS | Delphi-like namespaces units (minor) | |
| Paul Ishenin | namespaces, dynamic array constructors | |
| AlexVinS | Support for the iPhoneSim target | |
| AlexVinS | Support for the iPhoneSim target | |
| Paul Ishenin | removed 2.6.0 features | |
| Jonas | Darwin/Mac OS X: + Support for specifying and querying the deployment version | |
| Jonas | Support for specifying and querying the deployment version (minor) | |
| Jonas | Support for specifying and querying the deployment version | |
| Jonas | Support for specifying and querying the deployment version (minor) | |
| Vincent | Text replace - "delphi>" to "syntaxhighlight>" (minor) | |
| Jonas | Support for specifying and querying the deployment version (minor) | |
| Jonas | Support for specifying and querying the deployment version (minor) | |
| Jonas | JVM and AIX targets | |
| Jonas | New compiler targets (minor) | |
| Jonas | + -Oorderfields optimization | |
| Jonas | Class field reordering: mention optimization level -O4 (minor) | |
| Jonas | Code generator: + document -Oodeadvalues (minor) | |
| Jonas | Code generator: + document -Oofastmath (minor) | |
| Jonas | Code generator (minor) | |
| AlexVinS | Support for specifying and querying the deployment version (minor) | |
| Jonas | Class field reordering: clarify that reordering can only be disabled at a class level, not at an individual field level (minor) | |
| BigChimp | Delphi-like namespaces units: grammar | |
| Jonas | ||
| Jonas | (minor) | |
| PascalDragon | Added feature "type helper" | |
| PascalDragon | Added feature "Default" | |
| PascalDragon | adjusted formatting (minor) | |
| BigChimp | Added 64 bit odbc support by Laco | |
| Jonas | TODBCConnection (odbcconn) Support for 64 bit ODBC: changed format to the one used by the other items on this page | |
| BigChimp | TDBF Visual FoxPro support | |
| BigChimp | Added pas2jni | |
| BigChimp | About this page | |
| BigChimp | TDBF support for Visual FoxPro files (minor) | |
| BigChimp | Units and packages: Zip64 format | |
| BigChimp | TZipper support for zip64 format: language (minor) | |
| Jonas | Code generator: + describe new constant propagation and dead store elimination optimizations in trunk | |
| Jonas | Units and packages: + Multiple codepage and unicode support for most file-related RTL routines | |
| Jonas | Multiple codepage and unicode support for most file-related RTL routines (minor) | |
| Jonas | Pas2jni utility added: reformatted | |
| Jonas | Language: + Support for codepage-aware strings | |
| Bart | Dead store elimination (minor) | |
| Jonas | Dead store elimination: mention that -Oodfa isn't finished yet (minor) | |
| Jonas | New ''iosxlocale'' unit | |
| Jonas | Removing the calculation of dead values: removed duplicate (minor) | |
| FPK | Dead store elimination | |
| FPK | Node dfa for liveness analysis | |
| BigChimp | TDBF support for Visual FoxPro files: added filter fix | |
| BigChimp | TDBF support for Visual FoxPro files (minor) | |
| BigChimp | TDBF, bufdataset (and descendents) allow escaped delimiters in string expression filter (minor) | |
| BigChimp | Units and packages: autoinc support bufdataset | |
| PascalDragon | Update type helper description because of new modeswitch | |
| PascalDragon | markup correction (minor) | |
| Jonas | Support for codepage-aware strings (minor) | |
| Leledumbo | Support for type helpers: fix mailing list announcement link (minor) | |
| BigChimp | Units and packages: sql parser | |
| BigChimp | SQL parser/generator improvements (minor) | |
| BigChimp | SQL parser/generator improvements: No SET TERM/AUTODDL support | |
| BigChimp | SQL parser/generator improvements: warning re set term | |
| BigChimp | TZipper support for zip64 format: 2gb limit | |
| Jonas | Language | |
| Jonas | Language: removed objective-pascal dialect again, it was already in 2.6 (minor) | |
| Yurysidorov | New Pas2jni utility (minor) | |
| Jonas | Language: Support for interfacing with C ''blocks'' functionality | |
| Jonas | Node dfa for liveness analysis (minor) | |
| PascalDragon | Corrected remark regarding type helper modeswitch | |
| Jonas | (Mac) OS X/iOS: new iosxwstr unit | |
| Jonas | New compiler targets: Aarch64 target | |
| Jonas | New compiler targets: Support for the Linux/ppc64le target | |
| Socke | New Features from other versions: Template:Navbar Lazarus Release Notes | |
| Socke | + Category:Release Notes | |
| Jonas | Removed new features in 3.0 | |
| Jonas | Support for the AArch64 target: Mention newly added Linux support | |
| Jonas | New iosxwstr unit (minor) | |
| Jonas | Support for the Linux/ppc64le target (minor) | |
| Nickysn | All systems | |
| Nickysn | ||
| Nickysn | i8086-msdos | |
| Nickysn | i8086-msdos | |
| Jonas | GDB/MI support: enabled by default now (minor) | |
| Nickysn | i8086-msdos | |
| Nickysn | FarAddr internal function | |
| Nickysn | New compiler targets | |
| Nickysn | Support for the i8086-win16 (16-bit Windows) target | |
| Nickysn | Support for the i8086-win16 (16-bit Windows) target | |
| PascalDragon | Documented the default namespace feature | |
| Nickysn | i8086-msdos | |
| PascalDragon | Document support for Insert() with dynamic arrays | |
| PascalDragon | Documented that insertion index is zero based | |
| PascalDragon | Document support for Delete() with dynamic arrays | |
| PascalDragon | Document support for Concat() with dynamic arrays | |
| PascalDragon | Document support for "+" operator for dynamic arrays | |
| PascalDragon | Documented support for dynamic array constants and variable initializations | |
| PascalDragon | Dynamic Array constants and variable initialization | |
| PascalDragon | Document support for dynamic array constructors | |
| FTurtle | Typo (minor) | |
| PascalDragon | Documented modeswitch ArrayOperators | |
| PascalDragon | Documented extension of $Push and $Pop | |
| PascalDragon | Documented class threadvar sections for class and record types | |
| PascalDragon | Added subversion revisions | |
| Alextp | More settings supperted by $Push/$Pop: typo | |
| PascalDragon | Documented generic functions | |
| PascalDragon | Documented management operators | |
| PascalDragon | Documented Rtti unit | |
| PascalDragon | Documented method RTTI for interfaces | |
| PascalDragon | Method RTTI for interfaces | |
| Marcov | Units (minor) | |
| Jonas | Language: Volatile intrinsic | |
| Jonas | Language: noinline modifier | |
| PascalDragon | Documented interface type helpers | |
| Bart | Support for helper types extending interface types: fixed typo | |
| CuriousKit | Vectorcall introduction | |
| CuriousKit | Moved vectorcall to its own section for x86_64-win64 (minor) | |
| Bart | Units | |
| Bart | Registry unit: remark about TRegIniFile | |
| Bart | Registry unit | |
| PascalDragon | Documented multi helpers modeswitch | |
| PascalDragon | Fixed missing color (minor) | |
| Jonas | Fixed mailing archive links as provided on the talk page (minor) | |
| Jonas | New compiler targets | |
| Jonas | Support for code generation through LLVM | |
| Bart | Support for code generation through LLVM: typo | |
| PascalDragon | Documented Custom Attributes feature | |
| PascalDragon | Extended documentation for custom attributes a bit more | |
| PascalDragon | Set language of syntax highlighter | |
| PascalDragon | Set language of syntax highlighter | |
| BenGrasset | Rtti unit | |
| Jonas | Support for custom attributes | |
| Jonas | Removed FPC 3.2 new features | |
| Jonas | (minor) | |
| PascalDragon | Documented new IsManagedType intrinsic | |
| PascalDragon | IsManagedType was merged to 3.2 | |
| PascalDragon | Documented constant parameters in generics | |
| PascalDragon | Documented IsConstValue intrinsic | |
| Bi0T1N | Registry unit | |
| Bart | Support for "IsConstValue" intrinsic: typo | |
| Jonas | ||
| Jonas | Support for code generation through LLVM (minor) | |
| Jonas | (minor) | |
| Jonas | Moved "Naming of Threads" from User Changes page here | |
| Jonas | Naming of Threads (minor) | |
| Jonas | Support for macOS/AArch64: Added link to build instructions (minor) | |
| Jonas | About this page | |
| PascalDragon | Documented new daemon related functionality | |
| PascalDragon | = Additional control codes on Windows (minor) | |
| PascalDragon | Documented fpcres that can now compile RC files | |
| Trev | Compiler: Added %currentRoutine% preprocessor directive | |
| Kai Burghardt | Undo revision 139440 by Trev (talk): moved content to User Changes 3.2.0 | |
| Jonas | Support for "volatile" intrinsic (minor) | |
| PascalDragon | Documented that Copy can be used with Open Array parameters | |
| PascalDragon | Documented array constructor for static arrays | |
| Jonas | Support for code generation through LLVM | |
| Kai Burghardt | Support for constant parameters in generics: add note that asm-blocks do not work | |
| Kai Burghardt | Support for constant parameters in generics: add note that `result` needs to be used | |
| Jonas | Removed edits to section about support for constant parameters in generics again, they are unrelated to the constant parameter support. Please add them to a general Generics page instead | |
| Jonas | Language: "Align" modifier support for record definitions | |
| Jonas | "Align" modifier support for record definitions (minor) | |
| Jonas | ||
| Trev | Additional control codes on Windows: Highlight typo | |
| Jonas | (minor) | |
| Bi0T1N | Move NameThreadForDebugging implementation to 3.2.2 | |
| Jonas | Darwin/macOS: Support for symbolicating Dwarf backtraces | |
| Bi0T1N | Mention NameThreadForDebugging for macOS | |
| Nickysn | New compiler targets: - WebAssembly | |
| Nickysn | New compiler targets: - Z80 | |
| Bi0T1N | Mention support for binary literals in Delphi mode | |
| Bi0T1N | Add Digit Separator support | |
| Alextp | typo | |
| Nickysn | Units | |
| Nickysn | Unicode support | |
| Nickysn | Units | |
| Nickysn | Units | |
| Nickysn | Units | |
| Nickysn | TStream methods for RawByteString and UnicodeString | |
| PascalDragon | Fix typo | |
| PascalDragon | Documented forward declarations for generic classes and interfaces | |
| PascalDragon | Swapped order of commit and example | |
| Runewalsh | Alignment of 16 has nothing special (I checked). (minor) | |
| Ccrause | Support for "volatile" intrinsic: Change URL to gitlab (minor) | |
| Alextpp | Support for multiple active helpers per type: fix URL | |
| Alextpp | fix 3 URLs | |
| Bi0T1N | Add Function References and Anonymous Functions | |
| Bi0T1N | Support for Function References and Anonymous Functions | |
| Bi0T1N | Add LLVM Address Sanitizer | |
| Jonas | Support for address sanitize (asan) through LLVM | |
| PascalDragon | Documented type helper extension | |
| Bi0T1N | Add Extended RTTI | |
| Bi0T1N | Unicode RTL | |
| Maxim | "Align" modifier support for record definitions: - fixed a link to example |
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
