Mercurial > hg > xemacs-beta
view src/EmacsManagerP.h @ 5658:289cf21be887
Don't augment ENVIRONMENT when that's not indicated, #'macroexpand.
This reflects better understanding on my part of the &environment macro
keyword, and I've expanded the Lisp manual and docstrings to reflect that.
lisp/ChangeLog addition:
2012-05-06 Aidan Kehoe <kehoea@parhasard.net>
* cl-macs.el (block): Comment on why we can't use &environment
here.
* cl-macs.el (defmacro*): Document &environment in more detail.
* cl-macs.el (macrolet): Use &environment, instead of referencing
byte-compile-macro-environment directly.
* cl-macs.el (symbol-macrolet): Ditto.
* cl-macs.el (lexical-let): Ditto.
* cl-macs.el (labels): Ditto.
man/ChangeLog addition:
2012-05-06 Aidan Kehoe <kehoea@parhasard.net>
* lispref/macros.texi (Expansion):
Cross-reference to documentation of #'cl-prettyexpand, #'defmacro*
when talking about #'macroexpand.
tests/ChangeLog addition:
2012-05-06 Aidan Kehoe <kehoea@parhasard.net>
* automated/lisp-tests.el:
Use &environment appropriately in #'macrolet, instead of relying
on #'macroexpand to guess what we mean.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sun, 06 May 2012 15:29:59 +0100 |
parents | 308d34e9f07d |
children |
line wrap: on
line source
/* Copyright (C) 1995 Free Software Foundation, Inc. Copyright (C) 1993-1995 Sun Microsystems, Inc. Copyright (C) 1995 Ben Wing. This file is part of XEmacs. XEmacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. XEmacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with XEmacs. If not, see <http://www.gnu.org/licenses/>. */ /* Synched up with: Not in FSF. */ /* Written by Ben Wing. */ #ifndef INCLUDED_EmacsManagerP_h_ #define INCLUDED_EmacsManagerP_h_ #include "xintrinsicp.h" #ifdef LWLIB_USES_MOTIF #include "xmmanagerp.h" #endif #include "EmacsManager.h" typedef struct { /* new fields for EmacsManager class */ int dummy; } EmacsManagerClassPart; typedef struct _EmacsManagerClassRec { /* full class record declaration */ CoreClassPart core_class; CompositeClassPart composite_class; #ifdef LWLIB_USES_MOTIF ConstraintClassPart constraint_class; XmManagerClassPart manager_class; #endif EmacsManagerClassPart emacs_manager_class; } EmacsManagerClassRec; typedef struct { /* new fields for EmacsManager widget */ XtCallbackList resize_callback; XtCallbackList query_geometry_callback; XtPointer user_data; } EmacsManagerPart; typedef struct _EmacsManagerRec { /* full instance record */ CorePart core; CompositePart composite; #ifdef LWLIB_USES_MOTIF ConstraintPart constraint; XmManagerPart manager; #endif EmacsManagerPart emacs_manager; } EmacsManagerRec; extern EmacsManagerClassRec emacsManagerClassRec; /* class pointer */ #endif /* INCLUDED_EmacsManagerP_h_ */