Forum > Free Pascal
Preparing FPC 3.2.4, point out road blocks now
AlexTP:
Can you apply this fix, made in Git 2 years ago?
https://gitlab.com/freepascal.org/fpc/source/-/commit/48b97514193933e20c354a459c1cb37ca8edeb6c
It fixes also this issue
https://gitlab.com/freepascal.org/fpc/source/-/issues/41117
marcov:
To my best knowledge, the last merge was September 23th:
https://gitlab.com/freepascal.org/fpc/source/-/commits/release_3_2_4-branch
PascalDragon:
--- Quote from: korba812 on January 21, 2025, 12:27:05 pm ---Please consider adding COM-related patches to new release and, if possible, to fixes branch:
https://gitlab.com/freepascal.org/fpc/source/-/issues/41009
https://gitlab.com/freepascal.org/fpc/source/-/issues/41005
--- End quote ---
These are not even in main yet, so it's very unlikely that they be in 3.2.4.
--- Quote from: korba812 on January 21, 2025, 12:27:05 pm ---https://gitlab.com/freepascal.org/fpc/source/-/commit/ac510d391f9d784a00275836715a25a41331460f
--- End quote ---
That can maybe be merged after the RC.
--- Quote from: AlexTP on January 23, 2025, 06:06:59 pm ---Can you apply this fix, made in Git 2 years ago?
https://gitlab.com/freepascal.org/fpc/source/-/commit/48b97514193933e20c354a459c1cb37ca8edeb6c
--- End quote ---
That can maybe also be merged after the RC.
--- Quote from: Thaddy on January 21, 2025, 02:32:36 pm ---Just release. Other than what is already known at least on my platforms ( quite a lot) I haven't found anything serious. Is the problem just release nanament?
Surely one minor platform can not Withhold a point release!
--- End quote ---
Yes, the issue is release management, because major targets are still missing.
cpicanco:
Hi everyone, great work! You’re all awesome!
I was testing Lazarus RC2 (https://forum.lazarus.freepascal.org/index.php/topic,69820.60.html) and encountered an issue with a project that compiles without problems in the trunk but fails to compile in RC2 due to differences between FPC trunk and FPC 3.2.2. Would you recommend addressing these issues for FPC 3.2.4?
1) In Generics.Default, FPC trunk uses const (instead of constref) in TComparer.Compare:
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} --- TComparer<T> = class(TInterfacedObject, IComparer<T>) public class function Default: IComparer<T>; static; function Compare(constref ALeft, ARight: T): Integer; virtual; abstract; overload; class function Construct(const AComparison: TOnComparison<T>): IComparer<T>; overload; class function Construct(const AComparison: TComparisonFunc<T>): IComparer<T>; overload; end;
2) FPC 3.2.2 do not propagate String helpers for ShortString's. Hence:
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---// one may change thisTObject.ClassName.Replace('T', ''); // to thisString(TObject.ClassName).Replace('T', '');
3) I am getting an internal error 200510032, and also "Undefined symbol: .Lj2139" when trying to use .ToInteger helper with a specialized TDictionary:
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---program rc2test; {$mode objfpc}{$H+} uses {$IFDEF UNIX} cthreads, {$ENDIF} Classes, SysUtils, Generics.Collections; procedure DoIt; type TMyDictionary = specialize TDictionary<string, string>; var MyDictionary : TMyDictionary; begin MyDictionary := TMyDictionary.Create; try MyDictionary.Add('Key', '1'); WriteLn(MyDictionary['Key'].ToInteger); finally MyDictionary.Free; end; end; begin DoIt; ReadLn;end.
I managed to compile it doing some refactoring:
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---var s1 : string; begin s1 := MyDictionary['Numeric']; WriteLn(s1.ToInteger);end;
4) TEvent.Create, from syncobjs unit is not overloaded in FPC 3.2.2, so one must create it explicitly. FPC 3.3.1 will call "BasicEventCreate(nil, True,False,'')" when using the overloaded constructor.
PeterBB:
I've just noticed that there is a release candidate (beta) here
https://downloads.freepascal.org/fpc/beta/3.2.4-rc1/
Navigation
[0] Message Index
[#] Next page
[*] Previous page