[From nobody Mon May  4 05:21:05 2026
Received: (at submit) by bugs.debian.org; 19 Feb 2024 22:41:11 +0000
X-Spam-Checker-Version: SpamAssassin 3.4.6-bugs.debian.org_2005_01_02
 (2021-04-09) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-13.7 required=4.0 tests=BAYES_00,
 BODY_INCLUDES_PACKAGE,DKIM_SIGNED,DKIM_VALID,FOURLA,FROMDEVELOPER,
 HAS_PACKAGE,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_NONE,
 T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no
 version=3.4.6-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 28; hammy, 149; neutral, 54; spammy,
 1. spammytokens:0.936-+--view hammytokens:0.000-+--XDebbugsCc,
 0.000-+--X-Debbugs-Cc, 0.000-+--HX-ME-Sender:xms,
 0.000-+--HX-ME-Proxy:xmx, 0.000-+--H*RU:10.202.2.44
Return-path: &lt;dkogan@debian.org&gt;
Received: from wfout7-smtp.messagingengine.com ([64.147.123.150]:58401)
 by buxtehude.debian.org with esmtps
 (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.94.2) (envelope-from &lt;dkogan@debian.org&gt;) id 1rcCJx-009iXD-S1
 for submit@bugs.debian.org; Mon, 19 Feb 2024 22:41:11 +0000
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailfout.west.internal (Postfix) with ESMTP id A8CE01C000AC
 for &lt;submit@bugs.debian.org&gt;; Mon, 19 Feb 2024 17:35:04 -0500 (EST)
Received: from mailfrontend2 ([10.202.2.163])
 by compute4.internal (MEProxy); Mon, 19 Feb 2024 17:35:04 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:message-id
 :mime-version:reply-to:subject:subject:to:to:x-me-proxy
 :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=
 1708382104; x=1708468504; bh=yxU6rIGrfhe4MpafZI/GqUC6tmFMRswGIuV
 LclXPBtY=; b=QhJNQDAyqMVYx74loWMAoOSxWhpBi5JAnH2xUFPXrCf1hijiFLp
 ySlDPyDSyWAM/BgQAiWwmeIpf4SBytiBadLwv6J3HgetXK97nPZRJixhYMDVz7k9
 E6lHI6GrAeDnq0x9Z8QjIDF/ih6mc0WzNWDqm/lh+eOaeI12eKvY9iQighqollHN
 YOKuHZgm/qqHBO2RCAYOuHrbF+h/eqdjS9bCWra4g5KU7lNdmHK1YBT+yajpl7SB
 mupsVsK2/pjH+5eTCg1xrkDydeVItEPa+X49cIiV30mRzHymdmp8jAQvCuq9BevS
 EYC8E374dLAbfBxliNXVhWgEj3zf9FC281A==
X-ME-Sender: &lt;xms:l9fTZYYj0pFwfZh0w2D_ytleQnPnsc7Cqgzalj4JYF3lCaau4Fuzqg&gt;
 &lt;xme:l9fTZTag4R1khnYUZnAWxKOT7OdGTEt3K5oTHAKyrE6k7P0k1mt3E_WY4hy816nfD
 -JGtdn8zIayAwMz&gt;
X-ME-Received: &lt;xmr:l9fTZS8TKuwEN3LXocjli4sreXNtCIGVhpvHSxoOrYGXVmwGDoljVex2&gt;
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdekgdduieduucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkgggtsehttdertddttd
 dtnecuhfhrohhmpeffihhmrgcumfhoghgrnhcuoegukhhoghgrnhesuggvsghirghnrdho
 rhhgqeenucggtffrrghtthgvrhhnpefgkeeugeeuueekudetveetheejudeuhffhgfduje
 fhuedufffhuedthfehheffffenucffohhmrghinhepmhgrihhlqdgrrhgthhhivhgvrdgt
 ohhmnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug
 hkohhgrghnseguvggsihgrnhdrohhrgh
X-ME-Proxy: &lt;xmx:l9fTZSrRXRGtt8YcI2JcLU_MDKgwKh5QB2-IuCUbWLpc_OCX6z6n2g&gt;
 &lt;xmx:l9fTZTqP2SnWpmbFF-eqirOdGAMnXvR-9Vm3Q3CPglqM_nEON2VUQg&gt;
 &lt;xmx:l9fTZQS0rh5XkgyIqq4TUt6aQl6eddBw0lrgboEg1K102gaM03JZ2Q&gt;
 &lt;xmx:mNfTZSTHbrK7Z9zs3WLDLGnJanFmC6stnuC8SJMXZkgoY9HPUFXtEE6d2Pk&gt;
Feedback-ID: if8c1469c:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA for
 &lt;submit@bugs.debian.org&gt;; Mon, 19 Feb 2024 17:35:03 -0500 (EST)
From: Dima Kogan &lt;dkogan@debian.org&gt;
To: Debian Bug Tracking System &lt;submit@bugs.debian.org&gt;
Subject: libeigen3-dev: linking objects compiled with different flags may
 cause crashes
Date: Mon, 19 Feb 2024 14:34:59 -0800
Message-ID: &lt;87plwsaxrg.fsf@secretsauce.net&gt;
MIME-Version: 1.0
Content-Type: text/plain
X-Greylist: delayed 360 seconds by postgrey-1.36 at buxtehude;
 Mon, 19 Feb 2024 22:41:08 UTC
Delivered-To: submit@bugs.debian.org

Package: libeigen3-dev
Version: 3.4.0-4
Severity: normal
X-Debbugs-Cc: none, Dima Kogan &lt;dkogan@debian.org&gt;

Hello. I'm making this report to track the report in this mailing list
thread:

  https://www.mail-archive.com/debian-science@lists.debian.org/msg13666.html

In short: there's a known issue in Eigen that can create crashing
binaries when using a very reasonable workflow. A description of the
issue and minimized reproducer are here:

  https://www.mail-archive.com/debian-science@lists.debian.org/msg13710.html

I propose to patch this in Debian and/or talk to Eigen upstream to
eliminate the cause of the crash. A proposed patch appears here:

  https://www.mail-archive.com/debian-science@lists.debian.org/msg13857.html

In my view, a questionable design choice in C++ allows the user to
create crashing code, and Eigen expoloits this design choice to make
this crashing possible.

We cannot fix C++, but we can fix Eigen. The issue is that a templated
function defined in a header generates a (weak symbol) copy of this
function in EACH compile unit, and the linker then picks an arbitrary
copy from the many compile units it is given. It is thus imperative that
each copy is compatible with every other copy. Eigen breaks this
requirement by using the preprocessor to select incompatible behaviors
that might crash when linked together. The proposed patch eliminates
this preprocessor-based variability.
]