List of changes for 32-bit compiler ppc386 <2.0 to ppc386 3.2.2 lazarus / 1-Linux ---------------------------------------------------------------------- dryzone · 2025-03-08 06:13 I am busy upgrading old but extremely important 32-bit programs to the newest compiler. These were 32-bit programs and keep it like that so I installed ppc386 ver 3.2.2 which is seemingly the latest. Problem: 1) Currently the code compiles and the binary executes flawlessly when compiled with ppc < 2.0 compiler. 2) As soon as I compile the code with any compiler >2.0 , the binary throw3s run-time errors. Is there any available list of changes made from version ppc386 <2.0 to Version 2. or even up to Version 3.2.2 I guess the changes from <2.0 to 2.0  would be sufficient as the problem starts happening right there with the 2.0 compiler. I cannot seem to find any changelogs generally available. Thanks ---------------------------------------------------------------------- bytebites · 2025-03-08 07:08 Changes by version: https://wiki.freepascal.org/User_Changes_2.2.0 ---------------------------------------------------------------------- dsiders · 2025-03-08 07:13 Quote from: dryzone on March 08, 2025, 07:13:18 amI am busy upgrading old but extremely important 32-bit programs to the newest compiler. These were 32-bit programs and keep it like that so I installed ppc386 ver 3.2.2 which is seemingly the latest. Problem: 1) Currently the code compiles and the binary executes flawlessly when compiled with ppc < 2.0 compiler. 2) As soon as I compile the code with any compiler >2.0 , the binary throw3s run-time errors. Is there any available list of changes made from version ppc386 <2.0 to Version 2. or even up to Version 3.2.2 I guess the changes from <2.0 to 2.0  would be sufficient as the problem starts happening right there with the 2.0 compiler. I cannot seem to find any changelogs generally available. Thanks Release Notes https://wiki.freepascal.org/Category:Release_Notes User Changes https://wiki.freepascal.org/Category:FPC_User_Changes_by_release ---------------------------------------------------------------------- WooBean · 2025-03-08 07:41 Just looked into a possible cause of problems. My guess is floating point constants - https://wiki.freepascal.org/Use r_Changes_2.2.0#Floating_point_constants. ---------------------------------------------------------------------- MarkMLl · 2025-03-08 08:11 (a) what OS? (b) what sort of problems? (c) the one that really bit me was the gross change to FileExists(). MarkMLl ---------------------------------------------------------------------- marcov · 2025-03-08 10:25 Quote from: dryzone on March 08, 2025, 07:13:18 am1) Currently the code compiles and the binary executes flawlessly when compiled with ppc < 2.0 compiler. With what compiler exactly does it work? With 1.0.x or with 1.9.x ?  1.9.x are betas for 2.0, but were in wide use and packaged with Lazarus. If it is 1.0.x, you are out of luck. Most of the compiler was rewritten from 1.0.x to 2.0.x over longer than 5 years and probably thousands of commits, and the history is to complex to glean something from it. I assume even a compiler developer would frown at that task. You can't even do a binary search, since specially during the 1999-2002 period the development branch that would become 2.0 was often too unstable. Quote2) As soon as I compile the code with any compiler >2.0 , the binary throw3s run-time errors. I suggest you start debugging your application. That will be easier than starting to delve into ancient compiler internals. QuoteIs there any available list of changes made from version ppc386 <2.0 to Version 2. or even up to Version 3.2.2 As said that is a near complete rewrite. The complete history (CVS,SVN,GIT eras) was imported into GIT, including various FIXES_* branches. I guess the changes from <2.0 to 2.0  would be sufficient as the problem starts happening right there with the 2.0 compiler.