Nous l'avions annoncée dès septembre 2019, nous l'attendions donc depuis longtemps : la version majeure 3.2 du compilateur Free Pascal est enfin disponible au téléchargement !
Pour celles et ceux qui ne le connaîtraient pas, Free Pascal est un compilateur Pascal 32, 64 et 16 bits à vocation professionnelle. Développé en open source depuis plus de vingt-sept ans par une large communauté de développeurs bénévoles très actifs, il est réputé pour sa grande stabilité, sa vitesse de compilation et un code produit très performant. Il peut cibler de nombreuses architectures de processeur : Intel x86 (y compris 8086), AMD64 / x86-64, PowerPC, PowerPC64, SPARC, ARM, AArch64, MIPS et la machine virtuelle Java. Les systèmes d'exploitation pris en charge incluent Linux, FreeBSD, Haiku, Mac OS X/iOS/iPhoneSimulator/Darwin, DOS (16 et 32 bits), Windows 32, Windows 64, WinCE, OS/2, MorphOS, Nintendo GBA, Nintendo DS, Nintendo Wii, Android , AIX et AROS. De plus, la prise en charge de l'architecture Motorola 68k est disponible dans les versions de développement.
En plus des habituelles corrections de bogues et de la prise en charge de nouvelles cibles (AArch64, Linux/ppc64le, Android/x86_64 et même Windows 16 bits), Free Pascal 3.2 apporte entre autres les améliorations générales suivantes :
- prise en compte des espaces de nommage par défaut ;
- nombreuses améliorations concernant les tableaux dynamiques (insertion, suppression, concaténation, opérateur d'addition, constantes, initialisation des variables dès leur déclaration, constructeurs) ;
- extension des directives $Push et $Pop pour $MinEnumSize, $PackSet et $PackRecords ;
- section class threadvar dans les déclarations de classes et d'enregistrements ;
- amélioration et extension des types génériques, y compris pour les routines hors des classes ;
- nouveaux opérateurs pour la gestion des types enregistrements (Initialize, Copy, AddRef, Finalize) ;
- extension RTTI et assistances de types pour les interfaces d'objets ;
- nouvelles unités : rtl-generics (génériques), rtti (à titre expérimental !), ProcessUnicode (version Unicode de TProcess) ;
- la classe TRegistry supporte totalement Unicode ;
- le paquet CHM a été réécrit pour éliminer des bogues et améliorer ses performances.
Comme le développement de la branche 3.0 du compilateur s'est étendu sur cinq ans (!), cette nouvelle version est fortement recommandée pour les développements futurs. Il est fort probable que les EDI fondés sur ce compilateur (Lazarus, Code Typhon), vont rapidement proposer son intégration.
Pour la liste complète des modifications, c'est ici (en anglais).
Pour les changements affectant les programmes anciens, c'est ici (en anglais).
Pour le téléchargement du compilateur, c'est là que ça se passe.
Source : Équipe Free Pascal
Et vous ?
Allez-vous utiliser cette version majeure de Free Pascal ?
Que pensez-vous des améliorations apportées ?
Partager