[fpc-pascal] FPC 3.2.2 (In)complete Boolean Evaluation on 32bit MacOS
Pierre Muller
pierre at freepascal.org
Mon Jun 7 23:59:33 CEST 2021
Hi all,
I took the liberty to report a bug issue about this problem,
which I was able to reproduce on x86_64 3.2.2 release compiler.
See
https://bugs.freepascal.org/view.php?id=38973
for more details,
Thanks for reporting,
Pierre Muller
Le 30/05/2021 à 15:47, Tobias Giesen via fpc-pascal a écrit :
> Hello,
> it seems that the newest 32-bit FPC sometimes creates complete Boolean Evaluation
> rather than partial, which causes my application to crash. My context is like this:
>
> type BOOL=LongBool;
> PBOOL=^LongBool;
>
> function DoSomething(const Cancel:PBOOL=nil);
> begin
> if Assigned(Cancel) and Cancel^ then
> Exit;
> end;
>
> This crashes because Cancel and Cancel^ are always evaluated, even if Cancel is nil.
>
> It works fine in 64-bit.
>
> Is this a known problem?
>
> Cheers,
> Tobias
>
>
> _______________________________________________
> fpc-pascal maillist - fpc-pascal at lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
>
More information about the fpc-pascal
mailing list