From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Andreas =?UTF-8?Q?R=C3=B6hler?= Newsgroups: gmane.emacs.bugs Subject: bug#33375: 27.0.50; Nested function definitions Date: Thu, 15 Nov 2018 08:01:41 +0100 Message-ID: References: <3de36fb2-d7e6-347e-79ec-c38950aca174@easy-emacs.de> <835zwz8y77.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Trace: blaine.gmane.org 1542264917 10525 195.159.176.226 (15 Nov 2018 06:55:17 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 15 Nov 2018 06:55:17 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux i686; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 Cc: 33375@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Nov 15 07:55:13 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1gNBYV-0002aT-U8 for geb-bug-gnu-emacs@m.gmane.org; Thu, 15 Nov 2018 07:55:12 +0100 Original-Received: from localhost ([::1]:36494 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gNBac-0006Xw-5C for geb-bug-gnu-emacs@m.gmane.org; Thu, 15 Nov 2018 01:57:22 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:50000) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gNBaO-0006Xf-LF for bug-gnu-emacs@gnu.org; Thu, 15 Nov 2018 01:57:09 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gNBaJ-00029I-0I for bug-gnu-emacs@gnu.org; Thu, 15 Nov 2018 01:57:08 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:48605) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gNBaH-00028W-Qw for bug-gnu-emacs@gnu.org; Thu, 15 Nov 2018 01:57:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gNBaH-0004Y0-MX for bug-gnu-emacs@gnu.org; Thu, 15 Nov 2018 01:57:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Andreas =?UTF-8?Q?R=C3=B6hler?= Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 15 Nov 2018 06:57:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 33375 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 33375-submit@debbugs.gnu.org id=B33375.154226496617407 (code B ref 33375); Thu, 15 Nov 2018 06:57:01 +0000 Original-Received: (at 33375) by debbugs.gnu.org; 15 Nov 2018 06:56:06 +0000 Original-Received: from localhost ([127.0.0.1]:52863 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gNBZN-0004Wh-Oz for submit@debbugs.gnu.org; Thu, 15 Nov 2018 01:56:05 -0500 Original-Received: from mout.kundenserver.de ([212.227.126.130]:55397) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gNBZL-0004WC-5y for 33375@debbugs.gnu.org; Thu, 15 Nov 2018 01:56:04 -0500 Original-Received: from [192.168.178.35] ([88.130.98.58]) by mrelayeu.kundenserver.de (mreue012 [212.227.15.167]) with ESMTPSA (Nemesis) id 1N30VJ-1fKFhR04OD-013N3k; Thu, 15 Nov 2018 07:55:56 +0100 In-Reply-To: <835zwz8y77.fsf@gnu.org> Content-Language: en-US X-Provags-ID: V03:K1:nu820Ivn8lR6Z0vogw6YjqmgJHxtmXc/Ug5GXylKb+Alc5XFLYq dxc3rqoPDvv2RCZ0mNRFXLYKOqEYGxD50fOb8ZB9Y/UoblxL6rDDqgmc+IIqNfhP0XcGnYr hfZJJaTe7YPxqHzUnhQSEHM9ctQ4WmHr1pt0igDkRNirWhYkw7iN5rsif/6YhFWC2a20mJV H8kW3blz6yVdKoOe5lWVg== X-UI-Out-Filterresults: notjunk:1;V01:K0:WnWjA7sVEP4=:3GrQJAkM9q4A7LdBAF3DtE puHC6lco1RBOCgKXO7sDwlQA9YCf7ax05Fg5KqYJe6zYTPUI2vc5Jv5JC3OdL9d/UBZZUNSuQ g+i1RjBSgnMhpzrzoNKmQ4Nd2M/qwawuLPahVSEPmyZ2DwwzkRotW5smK0kVvPjZhEIQenV3u eiIWHVLvL12PePYv+UvM+E5LjUfg+qIkHXzorCaTfw2qBU6mcep38QF8wXQnqYFYHuvGYSPGe AcA1yybYRiqnaIVh0k5t1cX/ag99uqz0hk86XmbGqmeqDN8lJi/I93yl+yIBXcCodkDuNjQsQ 1Pe9eM1ZDAHxEXZpJC4SRbI8BpqmRk2dq6IkjAJOiMWrZYNboTlN5E214cNdji7FjYlKWYKYj dDsrGgA2gKUCqkTLxmx7e0Uqq5XiqYUs6fckSGDb98UZccW+OCyk6UVt6c/yRQG4wtP0ltWet KuuVrHqmC+KuiXuff1aS75A6aGUbapJ6jXNhlhAMU018pAga2xJOnF6wpAXjy8w9LvE5DVwxu iuQDtZj+2Af3pD30YXhi2xK5I+eKrzD4QuJsrBc2MvnmFMudOFrxhoubNSoJxZbqS/K43Kcr+ hs4gMW1oE05BQ6ZoQFUzqI7qdrPOM+jivRN30zJx4iPTAc89+ZUhATzcxPipeE2VaNNtePIV1 o1KnYvtYQDl6EdOXQcZ340Osp6msmyUy/7rIL2drdLxBN/NZ9EcXlotn8ClhBupToma9LsPXC jAqPCPBKP6YEQT1XMEap3V6BsCY0xz7CnqMgLHW7tD3zl9ZFbGoGv8vApzc4HprXbHW2BRHa X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:152403 Archived-At: On 14.11.2018 16:40, Eli Zaretskii wrote: >> From: Andreas Röhler >> Date: Wed, 14 Nov 2018 11:06:52 +0100 >> >> (defun foo1 () >> "[Some docu] >> >> (defun other-foo " >> (interactive) >> ;; defining another function inside >> (defun foo2 () >> (interactive) >> (message "%s" "Foo2") >> ;; another syntactically correct function just badly indented >> (defun foo3 () >> (interactive) >> (message "%s" "Foo3")) >> ) >> (message "%s" "Foo1")) >> >> ;;;; >> Results of evaluation: >> >> (foo1) ==> "Foo1" >> (foo2) ==> foo3 ? >> (foo3) ==> "Foo3" > > Why do you think there's anything wrong here? AFAICT, each evaluation > returns the last sexp evaluated in the respective function. foo1 and > foo3 have a call to 'message' as the last sexp, so they return the > message string, but foo2's last sexp evaluates a defun form, so you > get the result of that, which is the function foo3. IMO, this is > expected and correct behavior. > Basically these forms were made to display a beginning-of-defun bug. See tests in previous posts. What puzzles me when evaluating: (setq a (foo2)) a ==> foo3 (call-interactively 'foo2) ==> foo3 But M-x foo2 RET messages "Foo2"