From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.devel Subject: Re: Tramp and fixnum (was: Making 'eq' == 'eql' in bignum branch) Date: Sun, 26 Aug 2018 08:34:25 -0700 Organization: UCLA Computer Science Department Message-ID: <81bdf4a7-cfa7-40c6-af17-f4f6d6fd8518@cs.ucla.edu> References: <29f933ac-a6bf-8742-66a7-0a9d6d3e5a88@disroot.org> <8e0320d9-e0d0-2b57-57cc-2df4399f133c@cs.ucla.edu> <87lgaio7xd.fsf@tromey.com> <877em1cb0i.fsf@tromey.com> <765767b2-d2e5-a9a6-f724-d58ecf4847bb@cs.ucla.edu> <76081b5d-8c10-0a37-2c97-d4864c0faa80@cs.ucla.edu> <09153aed-361d-4f82-d9ac-b502314769ae@cs.ucla.edu> <83lg91dqd4.fsf@gnu.org> <87pny59tz9.fsf_-_@gmx.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: blaine.gmane.org 1535297592 29364 195.159.176.226 (26 Aug 2018 15:33:12 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 26 Aug 2018 15:33:12 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 Cc: emacs-devel@gnu.org To: Michael Albinus Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Aug 26 17:33:07 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ftx2J-0007Vv-Ij for ged-emacs-devel@m.gmane.org; Sun, 26 Aug 2018 17:33:07 +0200 Original-Received: from localhost ([::1]:49446 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ftx4P-0006Qb-IO for ged-emacs-devel@m.gmane.org; Sun, 26 Aug 2018 11:35:17 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51118) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ftx3l-0006QW-H4 for emacs-devel@gnu.org; Sun, 26 Aug 2018 11:34:38 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ftx3g-0004M6-AW for emacs-devel@gnu.org; Sun, 26 Aug 2018 11:34:37 -0400 Original-Received: from zimbra.cs.ucla.edu ([131.179.128.68]:60726) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1ftx3g-0004LA-3W for emacs-devel@gnu.org; Sun, 26 Aug 2018 11:34:32 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id A31C516081D; Sun, 26 Aug 2018 08:34:30 -0700 (PDT) Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id dO3OpNVThpQc; Sun, 26 Aug 2018 08:34:29 -0700 (PDT) Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id D6E0A1610A0; Sun, 26 Aug 2018 08:34:29 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id pHAKdoADFkaj; Sun, 26 Aug 2018 08:34:29 -0700 (PDT) Original-Received: from [192.168.1.9] (cpe-23-242-74-103.socal.res.rr.com [23.242.74.103]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id B563416081D; Sun, 26 Aug 2018 08:34:29 -0700 (PDT) In-Reply-To: <87pny59tz9.fsf_-_@gmx.de> Content-Language: en-US X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 131.179.128.68 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:228934 Archived-At: Michael Albinus wrote: >> * net/tramp-sh.el contains some assumptions that file sizes and other >> attributes that don't fit into fixnums are converted to floats by the >> underlying drivers. This assumption won't be true of list-attributes, >> and presumably shouldn't be true of tramp's other drivers (though I >> don't know the details here; I'm handwaving a bit). > > Could you pls explain in more detail what you believe is wrong? A > pointer to a suspicious code snippet would help. > > What do you mean with `list-attributes'? Maybe `file-attributes'? Yes, sorry, I meant 'file-attributes'. The fishy-looking code is in tramp-convert-file-attributes. Here's one snippet: (when (and (floatp (nth 2 attr)) (<= (nth 2 attr) most-positive-fixnum)) (setcar (nthcdr 2 attr) (round (nth 2 attr)))) Although this snippet shouldn't hurt, it should be unnecessary once file-attributes is fixed to not return floats. And in the meantime, the "(<= (nth 2 attr) most-positive-fixnum)" is unnecessary since file-attributes never returns a float less than or equal to most-positive-fixnum. There are three snippets like this. The main offender is the inode converter in that function, which splits integers into three parts, whereas it should simply keep the integers as-is since they don't overflow any more.