From d4af9e6a1c0090e4ee9b1199adf2144636997f03 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 6 Aug 2025 21:14:00 -0700 Subject: [PATCH] perl: Disable strict aliasing with clang clang-21+ compiled perl ends up with segfults in various places if this optimization is enabled panic: del_backref, svp=0 at /usr/lib/perl5/5.40.2/warnings.pm line 622. Compilation failed in require at /usr/lib/perl5/5.40.2/Getopt/Std.pm line 4. The crash starts at frame #0 in Perl_sv_kill_backrefs() at sv.c:6420 called during magic cleanup (Perl_magic_killbackrefs) Signed-off-by: Khem Raj Signed-off-by: Mathieu Dubois-Briand --- meta/recipes-devtools/perl/perl_5.40.2.bb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/meta/recipes-devtools/perl/perl_5.40.2.bb b/meta/recipes-devtools/perl/perl_5.40.2.bb index c3bcbf053d..1df1467d42 100644 --- a/meta/recipes-devtools/perl/perl_5.40.2.bb +++ b/meta/recipes-devtools/perl/perl_5.40.2.bb @@ -50,6 +50,10 @@ export ENC2XS_NO_COMMENTS = "1" CFLAGS += "-D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" +# Perl built with clang runs into sefaults with clang-21+ +# https://github.com/llvm/llvm-project/issues/152241 +CFLAGS:append:toolchain-clang = " -fno-strict-aliasing" + do_configure:prepend() { rm -rf ${B} cp -rfp ${S} ${B} -- 2.47.3