annotate src/.gdbinit.in.in @ 5043:d0c14ea98592

various frame-geometry fixes -------------------- ChangeLog entries follow: -------------------- src/ChangeLog addition: 2010-02-15 Ben Wing <ben@xemacs.org> * EmacsFrame.c: * EmacsFrame.c (EmacsFrameResize): * console-msw-impl.h: * console-msw-impl.h (struct mswindows_frame): * console-msw-impl.h (FRAME_MSWINDOWS_TARGET_RECT): * device-tty.c: * device-tty.c (tty_asynch_device_change): * event-msw.c: * event-msw.c (mswindows_wnd_proc): * faces.c (Fface_list): * faces.h: * frame-gtk.c: * frame-gtk.c (gtk_set_initial_frame_size): * frame-gtk.c (gtk_set_frame_size): * frame-msw.c: * frame-msw.c (mswindows_init_frame_1): * frame-msw.c (mswindows_set_frame_size): * frame-msw.c (mswindows_size_frame_internal): * frame-msw.c (msprinter_init_frame_3): * frame.c: * frame.c (enum): * frame.c (Fmake_frame): * frame.c (adjust_frame_size): * frame.c (store_minibuf_frame_prop): * frame.c (Fframe_property): * frame.c (Fframe_properties): * frame.c (Fframe_displayable_pixel_height): * frame.c (Fframe_displayable_pixel_width): * frame.c (internal_set_frame_size): * frame.c (Fset_frame_height): * frame.c (Fset_frame_pixel_height): * frame.c (Fset_frame_displayable_pixel_height): * frame.c (Fset_frame_width): * frame.c (Fset_frame_pixel_width): * frame.c (Fset_frame_displayable_pixel_width): * frame.c (Fset_frame_size): * frame.c (Fset_frame_pixel_size): * frame.c (Fset_frame_displayable_pixel_size): * frame.c (frame_conversion_internal_1): * frame.c (get_frame_displayable_pixel_size): * frame.c (change_frame_size_1): * frame.c (change_frame_size): * frame.c (generate_title_string): * frame.h: * gtk-xemacs.c: * gtk-xemacs.c (gtk_xemacs_size_request): * gtk-xemacs.c (gtk_xemacs_size_allocate): * gtk-xemacs.c (gtk_xemacs_paint): * gutter.c: * gutter.c (update_gutter_geometry): * redisplay.c (end_hold_frame_size_changes): * redisplay.c (redisplay_frame): * toolbar.c: * toolbar.c (update_frame_toolbars_geometry): * window.c: * window.c (frame_pixsize_valid_p): * window.c (check_frame_size): Various fixes to frame geometry to make it a bit easier to understand and fix some bugs. 1. IMPORTANT: Some renamings. Will need to be applied carefully to the carbon repository, in the following order: -- pixel_to_char_size -> pixel_to_frame_unit_size -- char_to_pixel_size -> frame_unit_to_pixel_size -- pixel_to_real_char_size -> pixel_to_char_size -- char_to_real_pixel_size -> char_to_pixel_size -- Reverse second and third arguments of change_frame_size() and change_frame_size_1() to try to make functions consistent in putting width before height. -- Eliminate old round_size_to_char, because it didn't really do anything differently from round_size_to_real_char() -- round_size_to_real_char -> round_size_to_char; any places that called the old round_size_to_char should just call the new one. 2. IMPORTANT FOR CARBON: The set_frame_size() method is now passed sizes in "frame units", like all other frame-sizing functions, rather than some hacked-up combination of char-cell units and total pixel size. This only affects window systems that use "pixelated geometry", and I'm not sure if Carbon is one of them. MS Windows is pixelated, X and GTK are not. For pixelated-geometry systems, the size in set_frame_size() is in displayable pixels rather than total pixels and needs to be converted appropriately; take a look at the changes made to mswindows_set_frame_size() method if necessary. 3. Add a big long comment in frame.c describing how frame geometry works. 4. Remove MS Windows-specific character height and width fields, duplicative and unused. 5. frame-displayable-pixel-* and set-frame-displayable-pixel-* didn't use to work on MS Windows, but they do now. 6. In general, clean up the handling of "pixelated geometry" so that fewer functions have to worry about this. This is really an abomination that should be removed entirely but that will have to happen later. Fix some buggy code in frame_conversion_internal() that happened to "work" because it was countered by oppositely buggy code in change_frame_size(). 7. Clean up some frame-size code in toolbar.c and use functions already provided in frame.c instead of rolling its own. 8. Fix check_frame_size() in window.c, which formerly didn't take pixelated geometry into account.
author Ben Wing <ben@xemacs.org>
date Mon, 15 Feb 2010 22:14:11 -0600
parents 304aebb79cd3
children 14f0dd1fabdb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
1 ## gdb init file for XEmacs -*- ksh -*-
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
2 ## This is the source for src/.gdbinit. Edit it, and rerun configure.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
3 ## (Running config.status is not enough.)
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
4 ## The generated file depends on src/config.h (currently only in one place).
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
5
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
6 ## To insert comments that will remain in the generated file, we use the
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
7 ## imake XCOMM convention. Lines beginning with "XCOMM " exactly (no
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
8 ## leading whitespace, one trailing ASCII space, case sensitive) will be
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
9 ## transformed to gdb command file comments in the generated file.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
10
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
11 XCOMM gdb init file for XEmacs
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
12 XCOMM AUTOMATICALLY GENERATED FROM etc/gdbinit.in BY configure -- DO NOT EDIT.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
13 XCOMM See etc/gdbinit.in for licensing information and usage hints.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
14 XCOMM Copyright (C) 1998 Free Software Foundation, Inc.
4939
349f01075eb7 build fixes for gdbinit and config-dependent elc files
Ben Wing <ben@xemacs.org>
parents: 4935
diff changeset
15 XCOMM Copyright (C) 2010 Ben Wing.
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
16
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
17 ## This file is part of XEmacs.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
18
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
19 ## XEmacs is free software; you can redistribute it and/or modify it
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
20 ## under the terms of the GNU General Public License as published by the
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
21 ## Free Software Foundation; either version 2, or (at your option) any
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
22 ## later version.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
23
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
24 ## XEmacs is distributed in the hope that it will be useful, but WITHOUT
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
25 ## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
26 ## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
27 ## for more details.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
28
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
29 ## You should have received a copy of the GNU General Public License
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
30 ## along with XEmacs; see the file COPYING. If not, write to
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
31 ## the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
32 ## Boston, MA 02110-1301 USA
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
33
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
34 ## Author: Martin Buchholz
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
35
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
36 ## Other contributors you could ask for help: Ivan Golubev, Jerry James,
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
37 ## Stephen Turnbull.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
38
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
39 ## Some useful commands for debugging emacs with gdb 4.16 or better.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
40 ##
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
41 ## Since this file is called `.gdbinit', it will be read by gdb
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
42 ## automatically when gdb is run in the build directory, which is where
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
43 ## developers usually debug their xemacs. You can also source this
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
44 ## file from your ~/.gdbinit, if you like.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
45 ##
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
46 ## Configure xemacs with --debug, and compile with -g.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
47 ##
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
48 ## See also the question of the XEmacs FAQ, titled
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
49 ## "How to Debug an XEmacs problem with a debugger".
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
50 ##
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
51 ## This can be used to debug XEmacs no matter how the following are
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
52 ## specified:
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
53
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
54 ## USE_UNION_TYPE
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
55
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
56 ## (the above all have configure equivalents)
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
57
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
58 ## Some functions defined here require a running process, but most
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
59 ## don't. Considerable effort has been expended to this end.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
60
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
61 ## See the dbg_ C support code in src/alloc.c that allows the functions
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
62 ## defined in this file to work correctly.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
63
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
64 #define NOT_C_CODE
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
65 #include "config.h"
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
66
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
67 set print union off
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
68 set print pretty off
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
69
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
70 #ifdef VDB_POSIX
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
71 handle SIGSEGV SIGBUS nostop noprint
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
72 #endif
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
73
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
74 set $Lisp_Type_Int = -2
4643
e9ccbc62f7e7 Don't rely on GDB understanding the Lisp_Type_{Record,Char} enums, gdbinit.in
Aidan Kehoe <kehoea@parhasard.net>
parents: 3934
diff changeset
75 set $Lisp_Type_Record = 0
e9ccbc62f7e7 Don't rely on GDB understanding the Lisp_Type_{Record,Char} enums, gdbinit.in
Aidan Kehoe <kehoea@parhasard.net>
parents: 3934
diff changeset
76 set $Lisp_Type_Char = 2
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
77
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
78 define decode_object
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
79 set $obj = (unsigned long) $arg0
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
80 if $obj & 1
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
81 ## It's an int
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
82 set $val = $obj >> 1
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
83 set $type = $Lisp_Type_Int
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
84 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
85 set $type = $obj & dbg_typemask
4643
e9ccbc62f7e7 Don't rely on GDB understanding the Lisp_Type_{Record,Char} enums, gdbinit.in
Aidan Kehoe <kehoea@parhasard.net>
parents: 3934
diff changeset
86 if $type == $Lisp_Type_Char
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
87 set $val = ($obj & dbg_valmask) >> dbg_gctypebits
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
88 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
89 ## It's a record pointer
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
90 set $val = $obj
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
91 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
92 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
93
4643
e9ccbc62f7e7 Don't rely on GDB understanding the Lisp_Type_{Record,Char} enums, gdbinit.in
Aidan Kehoe <kehoea@parhasard.net>
parents: 3934
diff changeset
94 if $type == $Lisp_Type_Record
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
95 set $lheader = ((struct lrecord_header *) $val)
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
96 set $lrecord_type = ($lheader->type)
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
97 set $imp = ((struct lrecord_implementation *) lrecord_implementations_table[(int) $lrecord_type])
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
98 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
99 set $lrecord_type = -1
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
100 set $lheader = -1
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
101 set $imp = -1
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
102 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
103 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
104
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
105 document decode_object
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
106 Usage: decode_object lisp_object
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
107 Extract implementation information from a Lisp Object.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
108 Defines variables $val, $type and $imp.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
109 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
110
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
111 define xint
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
112 decode_object $arg0
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
113 print ((long) $val)
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
114 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
115
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
116 define xtype
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
117 decode_object $arg0
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
118 if $type == $Lisp_Type_Int
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
119 echo int\n
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
120 else
4643
e9ccbc62f7e7 Don't rely on GDB understanding the Lisp_Type_{Record,Char} enums, gdbinit.in
Aidan Kehoe <kehoea@parhasard.net>
parents: 3934
diff changeset
121 if $type == $Lisp_Type_Char
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
122 echo char\n
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
123 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
124 printf "record type: %s\n", $imp->name
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
125 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
126 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
127 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
128
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
129 document xtype
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
130 Usage: xtype lisp_object
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
131 Print the Lisp type of a lisp object.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
132 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
133
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
134 define lisp-shadows
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
135 run -batch -vanilla -f list-load-path-shadows
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
136 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
137
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
138 document lisp-shadows
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
139 Usage: lisp-shadows
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
140 Run xemacs to check for lisp shadows
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
141 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
142
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
143 define environment-to-run-temacs
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
144 unset env EMACSLOADPATH
4939
349f01075eb7 build fixes for gdbinit and config-dependent elc files
Ben Wing <ben@xemacs.org>
parents: 4935
diff changeset
145 set env EMACSBOOTSTRAPLOADPATH=@srcdir@/../lisp/:@srcdir@/..
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
146 set env EMACSBOOTSTRAPMODULEPATH=../modules/:..
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
147 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
148
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
149 define run-temacs
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
150 environment-to-run-temacs
4939
349f01075eb7 build fixes for gdbinit and config-dependent elc files
Ben Wing <ben@xemacs.org>
parents: 4935
diff changeset
151 run -nd -no-packages -batch -l @srcdir@/../lisp/loadup.el run-temacs -q
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
152 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
153
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
154 document run-temacs
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
155 Usage: run-temacs
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
156 Run temacs interactively, like xemacs.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
157 Use this with debugging tools (like purify) that cannot deal with dumping,
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
158 or when temacs builds successfully, but xemacs does not.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
159 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
160
4951
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
161 define check-xemacs-arg
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
162 run -vanilla -batch -l @srcdir@/../tests/automated/test-harness.el -f batch-test-emacs @srcdir@/../tests/$arg0
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
163 end
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
164
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
165 define check-xemacs
4951
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
166 if $argc == 0
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
167 check-xemacs-arg automated
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
168 else
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
169 check-xemacs-arg automated/$arg0
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
170 end
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
171 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
172
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
173 document check-xemacs
4951
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
174 Usage: check-xemacs [FILE]
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
175 Run the test suite. If no file given, run the whole suite, equivalent to
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
176 'make check'. If a file given, run the suite only on the specified file.
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
177 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
178
4951
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
179 define check-temacs-arg
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
180 environment-to-run-temacs
4951
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
181 run -nd -no-packages -batch -l @srcdir@/../lisp/loadup.el run-temacs -q -batch -l @srcdir@/../tests/automated/test-harness.el -f batch-test-emacs @srcdir@/../tests/$arg0
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
182
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
183 define check-temacs
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
184 if $argc == 0
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
185 check-temacs-arg automated
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
186 else
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
187 check-temacs-arg automated/$arg0
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
188 end
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
189 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
190
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
191 document check-temacs
4951
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
192 Usage: check-temacs [FILE]
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
193 Run the test suite on temacs. If no file given, run the whole suite,
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
194 equivalent to 'make check-temacs'. If a file given, run the suite only on
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
195 the specified file.
de60897044f4 some fixes to gdbinit.in.in
Ben Wing <ben@xemacs.org>
parents: 4939
diff changeset
196
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
197 Use this with debugging tools (like purify) that cannot deal with dumping,
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
198 or when temacs builds successfully, but xemacs does not.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
199 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
200
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
201 define update-elc
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
202 environment-to-run-temacs
4939
349f01075eb7 build fixes for gdbinit and config-dependent elc files
Ben Wing <ben@xemacs.org>
parents: 4935
diff changeset
203 run -nd -no-packages -batch -l @srcdir@/../lisp/update-elc.el
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
204 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
205
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
206 document update-elc
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
207 Usage: update-elc
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
208 Run the core lisp byte compilation part of the build procedure.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
209 Use when debugging temacs, not xemacs!
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
210 Use this when temacs builds successfully, but xemacs does not.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
211 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
212
4935
7ef913bf3c9a modify gdbinit to track Makefile.in.in, add command for update-elc-2
Ben Wing <ben@xemacs.org>
parents: 4643
diff changeset
213 define update-elc-2
7ef913bf3c9a modify gdbinit to track Makefile.in.in, add command for update-elc-2
Ben Wing <ben@xemacs.org>
parents: 4643
diff changeset
214 environment-to-run-temacs
4939
349f01075eb7 build fixes for gdbinit and config-dependent elc files
Ben Wing <ben@xemacs.org>
parents: 4935
diff changeset
215 run -no-packages -batch -no-autoloads -l update-elc-2.el -f batch-update-elc-2 @srcdir@/../lisp
4935
7ef913bf3c9a modify gdbinit to track Makefile.in.in, add command for update-elc-2
Ben Wing <ben@xemacs.org>
parents: 4643
diff changeset
216 end
7ef913bf3c9a modify gdbinit to track Makefile.in.in, add command for update-elc-2
Ben Wing <ben@xemacs.org>
parents: 4643
diff changeset
217
7ef913bf3c9a modify gdbinit to track Makefile.in.in, add command for update-elc-2
Ben Wing <ben@xemacs.org>
parents: 4643
diff changeset
218 document update-elc-2
7ef913bf3c9a modify gdbinit to track Makefile.in.in, add command for update-elc-2
Ben Wing <ben@xemacs.org>
parents: 4643
diff changeset
219 Usage: update-elc-2
7ef913bf3c9a modify gdbinit to track Makefile.in.in, add command for update-elc-2
Ben Wing <ben@xemacs.org>
parents: 4643
diff changeset
220 Run the post-dump core lisp byte compilation part of the build procedure.
7ef913bf3c9a modify gdbinit to track Makefile.in.in, add command for update-elc-2
Ben Wing <ben@xemacs.org>
parents: 4643
diff changeset
221 end
7ef913bf3c9a modify gdbinit to track Makefile.in.in, add command for update-elc-2
Ben Wing <ben@xemacs.org>
parents: 4643
diff changeset
222
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
223 define dmp
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
224 environment-to-run-temacs
4939
349f01075eb7 build fixes for gdbinit and config-dependent elc files
Ben Wing <ben@xemacs.org>
parents: 4935
diff changeset
225 run -nd -no-packages -batch -l @srcdir@/../lisp/loadup.el dump
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
226 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
227
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
228 document dmp
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
229 Usage: dmp
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
230 Run the dumping part of the build procedure.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
231 Use when debugging temacs, not xemacs!
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
232 Use this when temacs builds successfully, but xemacs does not.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
233 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
234
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
235 define ldp
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
236 printf "%s", "Lisp => "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
237 call debug_print($arg0)
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
238 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
239
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
240 document ldp
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
241 Usage: ldp lisp_object
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
242 Print a Lisp Object value using the Lisp printer.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
243 Requires a running xemacs process.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
244 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
245
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
246 define lbt
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
247 call debug_backtrace()
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
248 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
249
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
250 document lbt
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
251 Usage: lbt
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
252 Print the current Lisp stack trace.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
253 Requires a running xemacs process.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
254 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
255
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
256
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
257 define leval
4953
304aebb79cd3 function renamings to track names of char typedefs
Ben Wing <ben@xemacs.org>
parents: 4951
diff changeset
258 ldp Feval(Fcar(Fread_from_string(build_cistring($arg0),Qnil,Qnil)))
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
259 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
260
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
261 document leval
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
262 Usage: leval "SEXP"
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
263 Eval a lisp expression.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
264 Requires a running xemacs process.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
265
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
266 Example:
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
267 (gdb) leval "(+ 1 2)"
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
268 Lisp ==> 3
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
269 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
270
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
271
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
272 define wtype
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
273 print $arg0->core.widget_class->core_class.class_name
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
274 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
275
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
276 define xtname
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
277 print XrmQuarkToString(((Object)($arg0))->object.xrm_name)
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
278 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
279
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
280 ## GDB's command language makes you want to ...
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
281
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
282 define pptype
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
283 set $type_ptr = ($arg0 *) $val
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
284 print $type_ptr
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
285 print *$type_ptr
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
286 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
287
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
288 define pstructtype
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
289 set $type_ptr = (struct $arg0 *) $val
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
290 print $type_ptr
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
291 print *$type_ptr
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
292 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
293
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
294 define pobj
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
295 decode_object $arg0
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
296 if $type == $Lisp_Type_Int
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
297 printf "Integer: %d\n", $val
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
298 else
4643
e9ccbc62f7e7 Don't rely on GDB understanding the Lisp_Type_{Record,Char} enums, gdbinit.in
Aidan Kehoe <kehoea@parhasard.net>
parents: 3934
diff changeset
299 if $type == $Lisp_Type_Char
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
300 if $val > 32 && $val < 128
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
301 printf "Char: %c\n", $val
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
302 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
303 printf "Char: %d\n", $val
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
304 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
305 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
306 if $lrecord_type == lrecord_type_string
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
307 pptype Lisp_String
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
308 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
309 if $lrecord_type == lrecord_type_cons
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
310 pptype Lisp_Cons
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
311 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
312 if $lrecord_type == lrecord_type_symbol
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
313 pptype Lisp_Symbol
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
314 printf "Symbol name: %s\n", ((Lisp_String *)$type_ptr->name)->data_
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
315 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
316 if $lrecord_type == lrecord_type_vector
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
317 pptype Lisp_Vector
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
318 printf "Vector of length %d\n", $type_ptr->size
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
319 ##print *($type_ptr->data) @ $type_ptr->size
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
320 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
321 if $lrecord_type == lrecord_type_bit_vector
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
322 pptype Lisp_Bit_Vector
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
323 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
324 if $lrecord_type == lrecord_type_buffer
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
325 pstructtype buffer
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
326 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
327 if $lrecord_type == lrecord_type_char_table
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
328 pptype Lisp_Char_Table
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
329 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
330 if $lrecord_type == lrecord_type_char_table_entry
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
331 pptype Lisp_Char_Table_Entry
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
332 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
333 if $lrecord_type == lrecord_type_charset
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
334 pptype Lisp_Charset
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
335 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
336 if $lrecord_type == lrecord_type_coding_system
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
337 pptype Lisp_Coding_System
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
338 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
339 if $lrecord_type == lrecord_type_color_instance
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
340 pptype Lisp_Color_Instance
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
341 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
342 if $lrecord_type == lrecord_type_command_builder
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
343 pptype command_builder
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
344 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
345 if $lrecord_type == lrecord_type_compiled_function
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
346 pptype Lisp_Compiled_Function
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
347 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
348 if $lrecord_type == lrecord_type_console
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
349 pstructtype console
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
350 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
351 if $lrecord_type == lrecord_type_database
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
352 pptype Lisp_Database
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
353 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
354 if $lrecord_type == lrecord_type_device
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
355 pstructtype device
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
356 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
357 if $lrecord_type == lrecord_type_event
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
358 pptype Lisp_Event
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
359 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
360 if $lrecord_type == lrecord_type_extent
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
361 pstructtype extent
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
362 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
363 if $lrecord_type == lrecord_type_extent_auxiliary
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
364 pstructtype extent_auxiliary
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
365 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
366 if $lrecord_type == lrecord_type_extent_info
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
367 pstructtype extent_info
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
368 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
369 if $lrecord_type == lrecord_type_face
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
370 pptype Lisp_Face
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
371 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
372 if $lrecord_type == lrecord_type_float
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
373 pptype Lisp_Float
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
374 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
375 if $lrecord_type == lrecord_type_font_instance
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
376 pptype Lisp_Font_Instance
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
377 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
378 if $lrecord_type == lrecord_type_frame
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
379 pstructtype frame
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
380 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
381 if $lrecord_type == lrecord_type_glyph
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
382 pptype Lisp_Glyph
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
383 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
384 if $lrecord_type == lrecord_type_gui_item
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
385 pptype Lisp_Gui_Item
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
386 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
387 if $lrecord_type == lrecord_type_hash_table
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
388 pptype Lisp_Hash_Table
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
389 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
390 if $lrecord_type == lrecord_type_image_instance
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
391 pptype Lisp_Image_Instance
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
392 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
393 if $lrecord_type == lrecord_type_keymap
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
394 pptype Lisp_Keymap
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
395 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
396 if $lrecord_type == lrecord_type_lcrecord_list
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
397 pstructtype lcrecord_list
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
398 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
399 if $lrecord_type == lrecord_type_ldap
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
400 pptype Lisp_LDAP
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
401 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
402 if $lrecord_type == lrecord_type_lstream
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
403 pstructtype lstream
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
404 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
405 if $lrecord_type == lrecord_type_marker
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
406 pptype Lisp_Marker
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
407 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
408 if $lrecord_type == lrecord_type_opaque
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
409 pptype Lisp_Opaque
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
410 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
411 if $lrecord_type == lrecord_type_opaque_ptr
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
412 pptype Lisp_Opaque_Ptr
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
413 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
414 if $lrecord_type == lrecord_type_popup_data
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
415 pptype popup_data
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
416 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
417 if $lrecord_type == lrecord_type_process
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
418 pptype Lisp_Process
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
419 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
420 if $lrecord_type == lrecord_type_range_table
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
421 pptype Lisp_Range_Table
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
422 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
423 if $lrecord_type == lrecord_type_specifier
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
424 pptype Lisp_Specifier
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
425 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
426 if $lrecord_type == lrecord_type_subr
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
427 pptype Lisp_Subr
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
428 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
429 if $lrecord_type == lrecord_type_symbol_value_buffer_local
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
430 pstructtype symbol_value_buffer_local
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
431 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
432 if $lrecord_type == lrecord_type_symbol_value_forward
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
433 pstructtype symbol_value_forward
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
434 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
435 if $lrecord_type == lrecord_type_symbol_value_lisp_magic
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
436 pstructtype symbol_value_lisp_magic
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
437 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
438 if $lrecord_type == lrecord_type_symbol_value_varalias
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
439 pstructtype symbol_value_varalias
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
440 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
441 if $lrecord_type == lrecord_type_timeout
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
442 pptype Lisp_Timeout
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
443 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
444 if $lrecord_type == lrecord_type_toolbar_button
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
445 pstructtype toolbar_button
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
446 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
447 if $lrecord_type == lrecord_type_tooltalk_message
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
448 pptype Lisp_Tooltalk_Message
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
449 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
450 if $lrecord_type == lrecord_type_tooltalk_pattern
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
451 pptype Lisp_Tooltalk_Pattern
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
452 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
453 if $lrecord_type == lrecord_type_weak_list
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
454 pstructtype weak_list
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
455 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
456 if $lrecord_type == lrecord_type_window
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
457 pstructtype window
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
458 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
459 if $lrecord_type == lrecord_type_window_configuration
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
460 pstructtype window_config
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
461 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
462 if $lrecord_type == lrecord_type_fc_pattern
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
463 pstructtype fc_pattern
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
464 else
3934
8453b9b6286f [xemacs-hg @ 2007-05-01 14:01:46 by stephent]
stephent
parents: 3418
diff changeset
465 if $lrecord_type == lrecord_type_fc_config
8453b9b6286f [xemacs-hg @ 2007-05-01 14:01:46 by stephent]
stephent
parents: 3418
diff changeset
466 pstructtype fc_config
3418
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
467 else
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
468 echo Unknown Lisp Object type\n
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
469 print $arg0
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
470 ## Barf, gag, retch
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
471 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
472 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
473 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
474 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
475 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
476 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
477 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
478 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
479 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
480 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
481 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
482 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
483 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
484 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
485 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
486 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
487 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
488 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
489 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
490 ## Repeat after me... gdb sux, gdb sux, gdb sux...
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
491 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
492 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
493 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
494 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
495 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
496 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
497 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
498 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
499 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
500 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
501 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
502 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
503 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
504 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
505 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
506 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
507 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
508 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
509 ## Are we having fun yet??
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
510 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
511 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
512 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
513 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
514 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
515 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
516 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
517 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
518 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
519 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
520 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
521 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
522 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
523 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
524 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
525 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
526 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
527 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
528 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
529
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
530 document pobj
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
531 Usage: pobj lisp_object
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
532 Print the internal C representation of a Lisp Object.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
533 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
534
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
535 ## -------------------------------------------------------------
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
536 ## functions to test the debugging support itself.
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
537 ## If you change this file, make sure the following still work...
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
538 ## -------------------------------------------------------------
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
539 define test_xtype
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
540 printf "Vemacs_major_version: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
541 xtype Vemacs_major_version
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
542 printf "Vhelp_char: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
543 xtype Vhelp_char
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
544 printf "Qnil: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
545 xtype Qnil
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
546 printf "Qunbound: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
547 xtype Qunbound
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
548 printf "Vobarray: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
549 xtype Vobarray
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
550 printf "Vall_weak_lists: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
551 xtype Vall_weak_lists
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
552 printf "Vxemacs_codename: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
553 xtype Vxemacs_codename
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
554 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
555
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
556 define test_pobj
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
557 printf "Vemacs_major_version: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
558 pobj Vemacs_major_version
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
559 printf "Vhelp_char: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
560 pobj Vhelp_char
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
561 printf "Qnil: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
562 pobj Qnil
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
563 printf "Qunbound: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
564 pobj Qunbound
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
565 printf "Vobarray: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
566 pobj Vobarray
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
567 printf "Vall_weak_lists: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
568 pobj Vall_weak_lists
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
569 printf "Vxemacs_codename: "
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
570 pobj Vxemacs_codename
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
571 end
a1e20876b806 [xemacs-hg @ 2006-05-23 13:18:50 by stephent]
stephent
parents:
diff changeset
572