From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: [RFC, PATCH] shrink struct vectorlike_header #2 Date: Wed, 07 Nov 2012 22:08:47 -0500 Message-ID: References: <50766A2C.8070705@yandex.ru> <50994448.6020602@yandex.ru> <509A76F7.3050105@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1352344132 31615 80.91.229.3 (8 Nov 2012 03:08:52 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 8 Nov 2012 03:08:52 +0000 (UTC) Cc: Emacs development discussions To: Dmitry Antipov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Nov 08 04:09:02 2012 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TWIUH-0002rP-Un for ged-emacs-devel@m.gmane.org; Thu, 08 Nov 2012 04:09:02 +0100 Original-Received: from localhost ([::1]:51469 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TWIU8-0005FU-Hq for ged-emacs-devel@m.gmane.org; Wed, 07 Nov 2012 22:08:52 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:55729) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TWIU6-0005FN-5g for emacs-devel@gnu.org; Wed, 07 Nov 2012 22:08:50 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TWIU5-0006WT-AR for emacs-devel@gnu.org; Wed, 07 Nov 2012 22:08:50 -0500 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.182]:8211) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TWIU5-0006WM-6W for emacs-devel@gnu.org; Wed, 07 Nov 2012 22:08:49 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av0EAG6Zu0/O+LEi/2dsb2JhbABEtBGBCIIVAQEEAVYjBQsLDiYSFBgNJIgcBboJkEQDiEKVd4R6gViDBw X-IronPort-AV: E=Sophos;i="4.75,637,1330923600"; d="scan'208";a="206716161" Original-Received: from 206-248-177-34.dsl.teksavvy.com (HELO pastel.home) ([206.248.177.34]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 07 Nov 2012 22:08:47 -0500 Original-Received: by pastel.home (Postfix, from userid 20848) id 9149759780; Wed, 7 Nov 2012 22:08:47 -0500 (EST) In-Reply-To: <509A76F7.3050105@yandex.ru> (Dmitry Antipov's message of "Wed, 07 Nov 2012 18:57:59 +0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 206.248.154.182 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:154724 Archived-At: > I agree that your code looks better, but it causes 'dereferencing > type-punned pointer will break strict-aliasing rules' warning > (and so error if --enable-gcc-warnings, gcc 4.7.2). I doubt (*(struct Lisp_Vector **)((char *) v + header_size)) is any better. I guess it just defeats gcc's detection of the problem. Maybe someone like Paul might have an idea how to solve this "cleanly"? In the mean time, feel free to use your code, but please add my code in comment with a note about why we don't use it. Stefan