unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Andreas Röhler" <andreas.roehler@easy-emacs.de>
To: Noam Postavsky <npostavs@gmail.com>
Cc: 33375@debbugs.gnu.org
Subject: bug#33375: 27.0.50; Nested function definitions
Date: Thu, 15 Nov 2018 16:04:30 +0100	[thread overview]
Message-ID: <f5134a3f-de3d-87a7-a237-10e2408cd782@easy-emacs.de> (raw)
In-Reply-To: <87d0r6h604.fsf@gmail.com>

On 15.11.2018 13:36, Noam Postavsky wrote:
> Andreas Röhler <andreas.roehler@easy-emacs.de> writes:
> 
>> What puzzles me when evaluating:
>>
>>
>> (setq a (foo2))
>> a ==> foo3
>> (call-interactively 'foo2) ==> foo3
>>
>> But M-x foo2 RET messages "Foo2"
> 
> The last value form in `foo2' returns `foo3'.  The last `message' call
> displays "Foo2".  Calling a command via M-x doesn't use the return
> value, so you see only the last message.  Note that evaluating (foo2)
> also messages "Foo2" (you can see it in *Messages*), it's just covered
> by the subsequent message showing the return value

Okay, thanks, that makes sense.

Still another observation. Open the test below, evaluations tells
"foo1" as expected but than inner foo2 is not known.

Debugger entered--Lisp error: (wrong-type-argument commandp foo2)
   call-interactively(foo2)
   eval((call-interactively 'foo2) nil)
   elisp--eval-last-sexp(nil)
   eval-last-sexp(nil)
   funcall-interactively(eval-last-sexp nil)
   call-interactively(eval-last-sexp nil nil)
   command-execute(eval-last-sexp)

---

(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"))


;; (call-interactively 'foo2) ==> Error ...

---

In GNU Emacs 27.0.50 (build 2, i686-pc-linux-gnu, GTK+ Version 3.14.5)
  of 2018-11-09 built
Repository revision: 4f0e54223a60a34818365475440e023747eab7e9
Windowing system distributor 'The X.Org Foundation', version 11.0.11604000
System Description: Debian GNU/Linux 8 (jessie)

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Mark set
foo1
Entering debugger...

Configured using:
  'configure --with-modules --enable-checking
  --enable-check-lisp-object-type --with-mailutils'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY INOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS GMP

Important settings:
   value of $LANG: de_DE.utf8
   value of $XMODIFIERS: @im=ibus
   locale-coding-system: utf-8-unix

Major mode: Debugger

Minor modes in effect:
   diff-auto-refine-mode: t
   tooltip-mode: t
   global-eldoc-mode: t
   electric-indent-mode: t
   mouse-wheel-mode: t
   tool-bar-mode: t
   menu-bar-mode: t
   file-name-shadow-mode: t
   global-font-lock-mode: t
   font-lock-mode: t
   blink-cursor-mode: t
   auto-composition-mode: t
   auto-encryption-mode: t
   auto-compression-mode: t
   buffer-read-only: t
   line-number-mode: t
   transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv format-spec rfc822 mml mml-sec
password-cache epa derived epg epg-config gnus-util rmail rmail-loaddefs
time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util
mail-prsvr mail-utils help-fns radix-tree cl-print debug backtrace
help-mode find-func cl-loaddefs cl-lib vc-git diff-mode easymenu
easy-mmode dired dired-loaddefs elec-pair mule-util tooltip eldoc
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win
x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow isearch timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932
hebrew greek romanian slovak czech european ethiopic indian cyrillic
chinese composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads dbusbind inotify dynamic-setting system-font-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty
make-network-process emacs)

Memory information:
((conses 8 160231 10300)
  (symbols 24 35005 2)
  (strings 16 59254 1919)
  (string-bytes 1 1109200)
  (vectors 8 16469)
  (vector-slots 4 534758 16220)
  (floats 8 56 113)
  (intervals 28 366 8)
  (buffers 528 14)
  (heap 1024 42785 1036))







  reply	other threads:[~2018-11-15 15:04 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-14  9:39 bug#33375: 27.0.50; Nested function definitions Andreas Röhler
2018-11-14 10:06 ` Andreas Röhler
2018-11-14 11:46   ` Andreas Röhler
2018-11-14 15:40   ` Eli Zaretskii
2018-11-15  7:01     ` Andreas Röhler
2018-11-15 12:36       ` Noam Postavsky
2018-11-15 15:04         ` Andreas Röhler [this message]
2018-11-15 15:05           ` Eli Zaretskii
2018-11-15 15:14             ` Andreas Röhler
2018-11-15 15:21               ` Andreas Röhler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f5134a3f-de3d-87a7-a237-10e2408cd782@easy-emacs.de \
    --to=andreas.roehler@easy-emacs.de \
    --cc=33375@debbugs.gnu.org \
    --cc=npostavs@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).