From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: san_ignore_object not found at link time Date: Sat, 01 Aug 2020 21:32:26 +0300 Message-ID: <83h7tmcj45.fsf@gnu.org> References: <20200801141014.51E78C21C82@raman-glaptop.localdomain> <83wo2ictyz.fsf@gnu.org> <83tuxmctmo.fsf@gnu.org> <20200801153823.GA55369@breton.holly.idiocy.org> <83k0yicl01.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="17349"; mail-complaints-to="usenet@ciao.gmane.io" Cc: alan@idiocy.org, emacs-devel@gnu.org, raman@google.com To: Philipp Stephani Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Aug 01 20:33:24 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1k1wJv-0004Q0-V4 for ged-emacs-devel@m.gmane-mx.org; Sat, 01 Aug 2020 20:33:23 +0200 Original-Received: from localhost ([::1]:40284 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1k1wJv-0000B7-1a for ged-emacs-devel@m.gmane-mx.org; Sat, 01 Aug 2020 14:33:23 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:41124) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1k1wJG-0008AV-PS for emacs-devel@gnu.org; Sat, 01 Aug 2020 14:32:42 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:39884) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1k1wJF-0008Cx-UC; Sat, 01 Aug 2020 14:32:41 -0400 Original-Received: from [176.228.60.248] (port=4352 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1k1wJF-000326-A3; Sat, 01 Aug 2020 14:32:41 -0400 In-Reply-To: (message from Philipp Stephani on Sat, 1 Aug 2020 20:29:29 +0200) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:253389 Archived-At: > From: Philipp Stephani > Date: Sat, 1 Aug 2020 20:29:29 +0200 > Cc: Alan Third , raman , > Emacs developers > > > alloc.c: In function 'mark_maybe_object': > > alloc.c:4641:14: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > > 4641 | void *po = (char *) ((intptr_t) (char *) XLP (obj) > > | ^ > > > > This is a 32-bit build --with-wide-int, in case it matters, where > > EMACS_INT is a 64-bit data type. > > This is due to the unrelated commit a2323c7ccb. (I just happened to > push both commits at the same time.) > It looks like LISP_WORD_TAG in a wide int build is a 64-bit number, so > that the entire expression gets widened to a 64-bit number. However, > since it's cast back to a pointer, the value has to fit in 32 bits. The pointer is there, you just cannot safely extract it by casting to a narrower data type. You need to explicitly mask the MSBs by shifting or some other bit fiddling.