User Changes 3.2.2

From Lazarus wiki
Jump to navigationJump to search

English (en) 中文(中国大陆) (zh_CN)

About this page

Listed below are intentional changes made to the FPC compiler (3.2.2) since the previous release that may break existing code. The list includes reasons why these changes have been implemented, and suggestions for how you might adapt your code if you find that previously working code has been adversely affected by these recent changes.

The list of new features that do not break existing code can be found here.

Please add revision numbers to the entries from now on. This facilitates moving merged items to the user changes of a release.

All systems

Usage Changes

Language changes

Implementation changes

  • Old behaviour: TBufferedFileStream.Seek(0,soBeginning) returned -1.
  • New behaviour: Now TBufferedFileStream.Seek(0,soBeginning) returns 0.
  • Reason: Delphi-compatibility
  • svn: 48282
Fix matching of Boyer-Moore algorithm for periodicity
  • Old behaviour: Pattern "abcab" and the text "abcabcabcabcabcabcab" indicates matches at positions 1, 7, and 13.
  • New behaviour: Now the pattern "abcab" and the text "abcabcabcabcabcabcab" indicates matches at positions 1, 4, 7, 10 and 13.
  • svn: 48752
  • Old behaviour: If SeekEof did not find the end of the file, it tried to restore the input to its original state/position.
  • New behaviour: Data consumed by SeekEof while looking for the end of the file (such as spaces) will remain consumed.
  • Reason: improved TP/BP/Delphi compatibility
  • svn: 46946

Unit changes


The Darwin targets corresponding to iOS have been renamed to iOS

  • Old behaviour: The Darwin/ARM and Darwin/AArch64 (ARM64) targets generated code for iOS running on those architectures.
  • New behaviour: The Darwin/AArch64 (ARM64) target generates code for macOS running on AArch64. To generate code for iOS, use the new iOS target (-Tios)
  • Reason for change: The switch of the macOS platform to AArch64
  • svn: 45762

Previous release notes