Le 09/06/2021 à 00:31, Martin Frb via fpc-devel a écrit :
I have the following issue. A testcase (LazDebuggerFp/test) works fine. Except for 3.2.0 and 3.2.2 (win 64) with -O3 or -O2 In detail: - It works in 32 bit 3.2.2 -- O3 - It works in 64 bit 3.0.4 / 3.3.1 -- O1 O2 and O3 (My 3.3.1 is 2 weeks old.) - It works in 64 bit LINUX 3.2.2 -- O3 - It works in 64 bit 3.2.0 / 3.2.2 -- O1 - It works in 64 bit 3.2.2 -- O3 with {$implicitexceptions off} in several units * It does not work in 64bit 3.2.0 / 3.2.2 -O2 or O3 with default {$implicitexceptions ON} Yes, it could be a bug in my code, but at this point, my primary suspicion points to a different origin for the trouble. I could not find the faulty code yet. I suspect that it is a random memory write (dangling pointer) that causes an error long after. And given that I can't use valgrind.... So anyone can thing of any bug fixed (as it works with 3.3.1), that may not have been merged? I have not checked 3.2.1 yet. / Will be a while, I am away a couple of days.
Martin, could you check if this relates to bug #38973? https://bugs.freepascal.org/view.php?id=38973 This bug also does not show in current trunk. If you get the same pattern of failures, it is most probably related to this wrong optimization. Pierre _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel