Re: ddd-test6
Peter Wainwright <[email protected]>
| Newsgroups | gmane.comp.debugging.ddd.general |
|---|---|
| Message-ID | <[email protected]> |
On Fri, 2008-10-17 at 20:53 -0400, R. Bernstein wrote: > As promised, here are the patches since ddd-3.3.12-test5 to give > ddd-3.3.12-test6. (There is one additional change to extend the > expiration date on the source). The patch did not apply cleanly on my copy of test5. However, I went back to Sourceforge CVS and created my own patch (attached) between the release tags: cvs diff -u -rDDD_3_3_12_test5 -rDDD_3_3_12_test6 and this seems to work OK. I think I may also need to add an extra file manually (add x86.vsl and remove the old pydb directory). Rocky, can you check if these are the only changes necessary to sync with test6? Peter > > Actually, ddd-3.3.12-test6 is still available on sourceforge: > http://ddd.cvs.sourceforge.net/viewvc/ddd/ddd/?pathrev=DDD_3_3_12_test6 > > _______________________________________________ > ddd mailing list > [email protected] > http://lists.gnu.org/mailman/listinfo/ddd _______________________________________________ ddd mailing list [email protected] http://lists.gnu.org/mailman/listinfo/ddd
ddd-3.3.12-test5-test6.patch
(text/x-patch, 51.9 KB)
Index: CREDITS =================================================================== RCS file: /cvsroot/ddd/ddd/CREDITS,v retrieving revision 1.17 retrieving revision 1.17.2.1 diff -u -r1.17 -r1.17.2.1 --- CREDITS 5 Dec 2005 08:50:18 -0000 1.17 +++ CREDITS 15 Jul 2006 16:50:00 -0000 1.17.2.1 @@ -9,14 +9,15 @@ Major code contributions: -Rocky BERNSTEIN <[email protected]> - BASH debugger support +Rocky BERNSTEIN <[email protected]> - BASH debugger support - GNU Make debugger support (well, actually the - debuggers too) + debuggers too) + - Post 2006 Python support J.H.M. DASSEN <[email protected]> - Tips and bug reports Dmitri DMITRIENKO <dd.cron.ru> - PHP support Christian LINDIG <[email protected]> - PostScript and XFIG printing -Richard WOLFF <[email protected]> - Python support +Richard WOLFF <[email protected]> - Python support (retired) Significant suggestions and bug fixes: Index: INSTALL =================================================================== RCS file: /cvsroot/ddd/ddd/INSTALL,v retrieving revision 1.98.4.1 retrieving revision 1.98.4.2 diff -u -r1.98.4.1 -r1.98.4.2 --- INSTALL 21 Mar 2006 01:23:28 -0000 1.98.4.1 +++ INSTALL 3 Jun 2006 14:21:54 -0000 1.98.4.2 @@ -22,22 +22,23 @@ nearly ISO C++ conformant. If you are building with a compiler that is not g++, be sure to read the PROBLEMS file. - * A M*tif Widget library. Either + * A Motif Widget library. Either - LessTif, 0.90 or later, or + - openmotif, 2.3 or later, or - OSF/Motif (1.2 or later). - We recommend to use LessTif 0.92 or later, available from - `http://www.lesstif.org/'. + We recommend useing openmotif or LessTif 0.92 or later, available + from `http://www.lesstif.org/'. - Please note: LessTif can be built and installed as M*tif - 1.2-compatible version and as M*tif 2.0-compatible version. + Please note: LessTif can be built and installed as Motif + 1.2-compatible version and as Motif 2.0-compatible version. LessTif packages normally install both versions, with one being the default. If you use DDD with LessTif 0.92 or later, you can use any of the two LessTif versions. If you use DDD with an older LessTif - version, be sure to use the M*tif-1.2 compatible LessTif version. + version, be sure to use the Motif-1.2 compatible LessTif version. See `External Packages', below, for details. LessTif-0.93.40 is known to work well. Index: NEWS =================================================================== RCS file: /cvsroot/ddd/ddd/NEWS,v retrieving revision 1.597.2.4 retrieving revision 1.597.2.5 diff -u -r1.597.2.4 -r1.597.2.5 --- NEWS 23 Mar 2006 03:06:23 -0000 1.597.2.4 +++ NEWS 15 Jul 2006 11:34:55 -0000 1.597.2.5 @@ -2,6 +2,23 @@ ******** ========== +DDD-3.3.12-test6 + +- Remove pydb in this directory. Use + http://bashdb.sourceforge.net/pydb instead + +- "cont"inue button for pydb was broken. + +- Start informing ddd that bash and pydb now have (or will have in the + next release) "commands", and "display". + +- LynxOS support via Olli Savia + +- Add x86 theme for changing display expressions to x86 registers and + flag-bits. Change Data/Memory examine behavior when used on Intel + registers so that %reg is the same as $reg. + Contributed by Zarko Zivanov. + DDD-3.3.12-test5 - Had broken gdb support Index: configure.ac =================================================================== RCS file: /cvsroot/ddd/ddd/configure.ac,v retrieving revision 1.69.2.4 retrieving revision 1.69.2.6 diff -u -r1.69.2.4 -r1.69.2.6 --- configure.ac 25 Mar 2006 01:20:19 -0000 1.69.2.4 +++ configure.ac 2 Feb 2008 11:40:21 -0000 1.69.2.6 @@ -1,4 +1,4 @@ -dnl $Id: configure.ac,v 1.69.2.4 2006/03/25 01:20:19 rockyb Exp $ +dnl $Id: configure.ac,v 1.69.2.6 2008/02/02 11:40:21 rockyb Exp $ dnl Process this file with autoconf to produce a configure script. dnl dnl Copyright (C) 1996-1998 Technische Universitaet Braunschweig, Germany. @@ -34,15 +34,15 @@ dnl A version in the form `YYYY-MM-DD' is a release-of-the-day, i.e. a dnl snapshot of the current development tree. dnl -AC_INIT([ddd],[3.3.12-test5],[[email protected]]) -NICKNAME="Custard" +AC_INIT([ddd],[3.3.12-test6],[[email protected]]) +NICKNAME="Tapioca" AC_SUBST(NICKNAME) DDD_NAMES dnl dnl Revision Control. dnl AC_PREREQ(2.59) -AC_REVISION([$Id: configure.ac,v 1.69.2.4 2006/03/25 01:20:19 rockyb Exp $]) +AC_REVISION([$Id: configure.ac,v 1.69.2.6 2008/02/02 11:40:21 rockyb Exp $]) dnl dnl Initialization. dnl @@ -859,6 +859,8 @@ AH_TEMPLATE([HAVE_PTRACE_DECL],[Define if ptrace is declared in unistd.h sys/ptrace.h.]) ICE_CHECK_DECL(ptsname, stdlib.h) AH_TEMPLATE([HAVE_PTSNAME_DECL],[Define if ptsname is declared in stdlib.h.]) +ICE_CHECK_DECL(putenv, stdlib.h) +AH_TEMPLATE([HAVE_PUTENV_DECL],[Define if putenv is declared in stdlib.h.]) ICE_CHECK_DECL(raise, signal.h) AH_TEMPLATE([HAVE_RAISE_DECL],[Define if raise is declared in signal.h.]) ICE_CHECK_DECL(rand, stdlib.h) Index: ddd/BreakPoint.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/BreakPoint.C,v retrieving revision 1.88 retrieving revision 1.88.2.1 diff -u -r1.88 -r1.88.2.1 --- ddd/BreakPoint.C 6 Dec 2005 05:10:44 -0000 1.88 +++ ddd/BreakPoint.C 22 Jun 2006 10:27:40 -0000 1.88.2.1 @@ -804,7 +804,7 @@ if (!equal(new_bp.commands(), commands())) { - if (gdb->type() == GDB) + if (gdb->type() == GDB || gdb->type() == PYDB || gdb->type() == BASH) { undo_commands << "commands " << num << '\n'; for (int i = 0; i < commands().size(); i++) Index: ddd/Command.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/Command.C,v retrieving revision 1.61.2.1 retrieving revision 1.61.2.2 diff -u -r1.61.2.1 -r1.61.2.2 --- ddd/Command.C 17 Feb 2006 23:37:57 -0000 1.61.2.1 +++ ddd/Command.C 22 Jun 2006 10:25:02 -0000 1.61.2.2 @@ -160,6 +160,11 @@ command = "step up"; break; + case PYDB: + if (command == "cont") + command = "continue"; + break; + case PERL: // PERL only has one-letter commands // BASHDB doesn't but it accepts perl's one-letter commands @@ -182,7 +187,6 @@ case DBG: // I think this is right. case GDB: case MAKE: - case PYDB: break; } Index: ddd/Ddd.in.m4 =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/Ddd.in.m4,v retrieving revision 1.451 retrieving revision 1.451.2.1 diff -u -r1.451 -r1.451.2.1 --- ddd/Ddd.in.m4 22 Dec 2005 02:53:26 -0000 1.451 +++ ddd/Ddd.in.m4 15 Jul 2006 16:31:20 -0000 1.451.2.1 @@ -1,4 +1,4 @@ -! $Id$ -*- xrdb -*- +! $Id$ ! DDD Resource File. DO NOT INSTALL THIS FILE! See below for details. include(ifdef(`srcdir',srcdir()/macros.m4,macros.m4))dnl DDD_APP_WARNING @@ -8,7 +8,7 @@ ! Copyright (C) 1995-1999 Technische Universitaet Braunschweig, Germany. ! Copyright (C) 1999-2001 Universitaet Passau, Germany. ! Copyright (C) 2001 Universitaet des Saarlandes, Germany. -! Copyright (C) 2001-2004 Free Software Foundation, Inc. +! Copyright (C) 2001-2006 Free Software Foundation, Inc. ! Written by Andreas Zeller <[email protected]>. ! ! This file is part of DDD. @@ -337,14 +337,16 @@ ! letting all these commands fail may take some time... Ddd*wwwCommand: \ - mozilla -remote 'openURL(@URL@)' \ -|| netscape -remote 'openURL(@URL@)' \ + firefox -remote 'openURL(@URL@)' \ +|| mozilla -remote 'openURL(@URL@)' \ +|| opera -remote 'openURL(@URL@)' \ || ${WWWBROWSER-false} '@URL@' \ +|| konqueror 'openURL(@URL@)' \ || galeon 'openURL(@URL@)' \ || skipstone 'openURL(@URL@)' \ || light 'openURL(@URL@)' \ +|| netscape -remote 'openURL(@URL@)' \ || mozilla '@URL@' \ -|| konqueror 'openURL(@URL@)' \ || kfmbrowser '@URL@' \ || netscape '@URL@' \ || gnudoit '(w3-fetch \042@URL@\042)' \ Index: ddd/GDBAgent.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/GDBAgent.C,v retrieving revision 1.244.2.3 retrieving revision 1.244.2.6 diff -u -r1.244.2.3 -r1.244.2.6 --- ddd/GDBAgent.C 20 Mar 2006 22:40:35 -0000 1.244.2.3 +++ ddd/GDBAgent.C 15 Jul 2006 15:17:33 -0000 1.244.2.6 @@ -195,8 +195,10 @@ _has_print_r_option(false), _has_output_command(false), _has_where_h_option(false), - _has_display_command(tp == DBG || tp == DBX || tp == GDB || tp == PYDB), - _has_clear_command(tp == BASH || tp == DBG || tp == DBX || tp == GDB || tp == JDB || tp == PERL), + _has_display_command(tp == BASH || tp == DBG || tp == DBX || tp == GDB + || tp == PYDB), + _has_clear_command(tp == BASH || tp == DBG || tp == DBX || tp == GDB + || tp == JDB || tp == PERL), _has_handler_command(false), _has_pwd_command(tp == BASH || tp == DBG || tp == DBX || tp == GDB || tp == MAKE || tp == PYDB || tp == PERL), @@ -273,6 +275,8 @@ _has_watch_command = WATCH_CHANGE; else _has_watch_command = 0; + + cpu = cpu_unknown; } Index: ddd/GDBAgent.h =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/GDBAgent.h,v retrieving revision 1.139.2.4 retrieving revision 1.139.2.7 diff -u -r1.139.2.4 -r1.139.2.7 --- ddd/GDBAgent.h 20 Mar 2006 16:39:51 -0000 1.139.2.4 +++ ddd/GDBAgent.h 16 Jul 2006 20:53:31 -0000 1.139.2.7 @@ -1,4 +1,4 @@ -// $Id$ +// $Id$ -*- C++ -*- // Communicate with separate GDB process // Copyright (C) 1995 Technische Universitaet Braunschweig, Germany. @@ -54,6 +54,7 @@ //----------------------------------------------------------------------------- enum DebuggerType { BASH, DBG, DBX, GDB, JDB, PERL, PYDB, XDB, MAKE }; +enum DebuggerCPU { cpu_intel, cpu_unknown}; //----------------------------------------------------------------------------- // Program language //----------------------------------------------------------------------------- @@ -144,6 +145,7 @@ class GDBAgent: public TTYAgent { public: DECLARE_TYPE_INFO + DebuggerCPU cpu; protected: enum State { @@ -443,6 +445,14 @@ ProgramLanguage program_language(string text); // True if debugger can enable breakpoints + bool has_disassembly() const + { + return type() == GDB + // || type() == PYDB // In theory this could be done. + ; + } + + // True if debugger can enable breakpoints bool has_enable_command() const { return type() == BASH || type() == DBG || type() == GDB Index: ddd/SourceView.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/SourceView.C,v retrieving revision 1.494.2.4 retrieving revision 1.494.2.6 diff -u -r1.494.2.4 -r1.494.2.6 --- ddd/SourceView.C 22 Mar 2006 02:23:44 -0000 1.494.2.4 +++ ddd/SourceView.C 15 Jul 2006 11:34:55 -0000 1.494.2.6 @@ -3,6 +3,7 @@ // Copyright (C) 1995-1998 Technische Universitaet Braunschweig, Germany. // Copyright (C) 2000 Universitaet Passau, Germany. +// Copyright (C) 2001-2006 Free Software Foundation, Inc. // Written by Dorothea Luetkehaus <[email protected]> // and Andreas Zeller <[email protected]>. // @@ -6011,7 +6012,9 @@ set_sensitive(info->condition, gdb->has_breakpoint_conditions()); set_sensitive(XtParent(info->condition), gdb->has_breakpoint_conditions()); - bool can_record = gdb->type() == GDB && !gdb->recording(); + bool can_record = ((gdb->type() == GDB + || gdb->type() == PYDB || gdb->type() == BASH) + && !gdb->recording()); bool can_edit = gdb->has_breakpoint_commands() && !gdb->recording(); set_sensitive(info->record, can_record); set_sensitive(info->end, gdb->recording()); @@ -7506,7 +7509,7 @@ { string regname = item.through(rxidentifier); strip_space(regname); - item = "/x $" + regname; + item = "$" + regname; source_arg->set_string(item); } } Index: ddd/comm-manag.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/comm-manag.C,v retrieving revision 1.309.2.4 retrieving revision 1.309.2.6 diff -u -r1.309.2.4 -r1.309.2.6 --- ddd/comm-manag.C 22 Mar 2006 02:23:46 -0000 1.309.2.4 +++ ddd/comm-manag.C 15 Jul 2006 15:17:33 -0000 1.309.2.6 @@ -1,4 +1,4 @@ -// $Id$ +// $Id$ -*- C++ -*- // GDB communication manager // Copyright (C) 1995-1999 Technische Universitaet Braunschweig, Germany. @@ -2877,6 +2877,10 @@ static void process_config_gdb_version(const string& answer) { gdb->is_windriver_gdb(answer.contains("vxworks")); + if (answer.contains("i686") || answer.contains("i586") + || answer.contains("i386")) { + gdb->cpu = cpu_intel; + } } Index: ddd/ddd.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/ddd.C,v retrieving revision 1.666.2.4 retrieving revision 1.666.2.8 diff -u -r1.666.2.4 -r1.666.2.8 --- ddd/ddd.C 20 Mar 2006 16:39:52 -0000 1.666.2.4 +++ ddd/ddd.C 23 Jul 2006 13:46:27 -0000 1.666.2.8 @@ -3,7 +3,7 @@ // Copyright (C) 1995-1998 Technische Universitaet Braunschweig, Germany. // Copyright (C) 1999-2001 Universitaet Passau, Germany. -// Copyright (C) 2001-2004 Free Software Foundation, Inc. +// Copyright (C) 2001-2006 Free Software Foundation, Inc. // Written by Dorothea Luetkehaus <[email protected]> // and Andreas Zeller <[email protected]>. // @@ -592,8 +592,14 @@ { XRMOPTSTR("--attach"), XRMOPTSTR(XtCSeparate), XrmoptionNoArg, XPointer(OFF) }, +/* -attach is used by jdb to attach to another another running JVM. +It is even described as a useful option to use in the ddd reference. +If we add this as an option as yet a 4th way to specify --attach-windows, +we prevent its use in jdb. + { XRMOPTSTR("-attach"), XRMOPTSTR(XtCSeparate), XrmoptionNoArg, XPointer(OFF) }, +*/ { XRMOPTSTR("--attach-windows"), XRMOPTSTR(XtCSeparate), XrmoptionNoArg, XPointer(OFF) }, { XRMOPTSTR("-attach-windows"), XRMOPTSTR(XtCSeparate), @@ -2968,11 +2974,11 @@ // We don't need the source window, since we're invoked by Emacs. gdbCloseSourceWindowCB(gdb_w, 0, 0); - if (!app_data.disassemble) + if (!app_data.disassemble && !gdb->has_disassembly()) gdbCloseToolWindowCB(gdb_w, 0, 0); } - if (!app_data.disassemble) + if (!app_data.disassemble && !gdb->has_disassembly()) { // We don't disassemble. gdbCloseCodeWindowCB(gdb_w, 0, 0); @@ -7800,7 +7806,7 @@ // All options that remain fixed for a session go here. static void setup_options() { - set_sensitive(disassemble_w, gdb->type() == GDB || gdb->type() == PYDB); + set_sensitive(disassemble_w, gdb->has_disassembly()); set_sensitive(code_indent_w, gdb->type() == GDB); set_sensitive(examine_w, gdb->has_examine_command()); set_sensitive(print_examine_w, gdb->has_examine_command()); @@ -7904,6 +7910,11 @@ if (strcmp(theme, "rednil.vsl") == 0) { p.active() = true; p.add("*"); + //ZARKO - automatsko aktiviranje flags i regs tema + } else if (strcmp(theme, "x86.vsl") == 0) { + p.active() = true; + p.add("$eax*;$ebx*;$ecx*;$edx*"); + p.add("($eflags &*"); } else { p.active() = false; } Index: ddd/ddd.texi =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/ddd.texi,v retrieving revision 1.72 retrieving revision 1.72.2.6 diff -u -r1.72 -r1.72.2.6 --- ddd/ddd.texi 5 Dec 2005 08:46:36 -0000 1.72 +++ ddd/ddd.texi 16 Jul 2006 04:20:02 -0000 1.72.2.6 @@ -4,9 +4,10 @@ @c Copyright (C) 1999-2001 Universitaet Passau, Germany. @c Copyright (C) 2001-2004 Universitaet des Saarlandes, Germany. +@c Copyright (C) 2006 Free Software Foundation, Inc. @c -@c Sections on GNU Make and Bash -@c Copyright (C) 2005 Rocky Bernstein <[email protected]> +@c Sections on GNU Make, Bash, and Python +@c Copyright (C) 2005, 2006 Rocky Bernstein <[email protected]> @c @c Written by Andreas Zeller <[email protected]>. @c @@ -57,7 +58,7 @@ @set EDITION First @c !!set DDD manual's revision date -@set DATE 10 January, 2005 +@set DATE 15 July, 2006 @c Index stuff @c Labels @@ -83,16 +84,14 @@ @c PDF settings @iftex -@ifpdf @pdfcompresslevel=9 @pdfinfo{ /Title (Debugging with DDD) /Author (Andreas Zeller et. al.) /Subject (DDD - the Data Display Debugger) - /Keywords (Debugging Debugger DDD GNU GDB DBX XDB JDB Ladebug WDB - Python Perl Bash GNU Make) + /Keywords (Bash Debugging Debugger DDD GNU GDB DBX JDB Ladebug GNU Make + Perl Python WDB XDB) } -@fi @end iftex @c Formatting @@ -169,7 +168,6 @@ \subtitle \textsf{\value{EDITION} Edition, for \value{DDD} Version \value{VERSION}} \subtitle \textsf{Last updated \value{DATE}} \sp 2 -\center \image{PICS/dddlogo, 15cm} \author \titlesf{Andreas Zeller} @end tex @page @@ -820,32 +818,33 @@ (@DDD{} has been tested with @JDK{} 1.1 and @JDK{} 1.2.) @item -@cindex @acronym{PYDB} -@cindex Python -To debug @emph{Python programs}, you can use @DDD{} with -@dfn{@PYDB{}}, a Python debugger. - @item -@cindex Perl -@cindex Perl -To debug @emph{Perl programs}, you can use @DDD{} with the @dfn{Perl -debugger,} as of Perl 5.003 and later. - -@item -@cindex Bash @cindex Bash To debug @emph{Bash programs}, you need a version Bash that supports -extended debugging support. To get this enhanced version see -@uref{http://bashdb.sourceforge.net}. You will need version -2.05b-debugger-0.32 or later to work with @DDD{}. +extended debugging support; see +@uref{http://bashdb.sourceforge.net}. It important to make sure you +get the right version of the debugger that matches your version of +Bash. For bash version 2.05b, you need a patched version of bash as +well as the debugger for bash. @item @cindex GNU Make -@cindex GNU Make To debug @emph{GNU Make Makefiles}, you need a version GNU Make that supports extended debugging support. To get this enhanced version see -@uref{http://bashdb.sourceforge.net/remake}. You will need version -2.05b-debugger-0.32 or later to work with @DDD{}. +@uref{http://bashdb.sourceforge.net/remake}. + +@item +@cindex Perl +To debug @emph{Perl programs}, you can use @DDD{} with the @dfn{Perl +debugger,} as of Perl 5.003 and later. + +@item +@cindex Python +@cindex pydb + +To debug @emph{Python programs}, you need an extended version of the +python debugger called @dfn{@PYDB{}}. To get this, see +@uref{http://bashdb.sourceforge.net/pydb}. @end itemize @xref{Choosing an Inferior Debugger}, for choosing the appropriate @@ -1130,7 +1129,10 @@ to Daniel Schepler. @item Dec, 2005 -@DDD{} 3.3.12: GNU Make support added. +@DDD{} 3.3.12-test: GNU Make support added. + +@item Feb, 2006 +@DDD{} 3.3.12-test3: Modernize Python debugging @end table @@ -1654,20 +1656,27 @@ @itemize @bullet @item -If the program requires a specific interpreter, such as Java, Python, -Perl, Bash, or GNU Make, then you should use a @JDB{}, @PYDB{}, Perl, -Bash, or GNU Make inferior debugger. +If the program requires a specific interpreter, such as Bash, Java, +GNU Make, Perl, or Python, then you should use a Bash, @JDB{}, GNU +Make, Perl, @PYDB{}, Bash, or inferior debugger. Use +@cindex Bash, invoking @DDD{} with +@example +@value{ddd} --bash @var{program} +@value{ddd} --interpreter='@emph{path-to-debugger-bash} --debugger' @var{program} +@end example + @cindex @acronym{JDB}, invoking @DDD{} with @example @value{ddd} --jdb @var{program} @end example -@cindex @acronym{PYDB}, invoking @DDD{} with +@cindex GNU Make, invoking @DDD{} with @example -@value{ddd} --pydb @var{program} +@value{ddd} --make @var{program} +@value{ddd} --interpreter='@emph{path-to-debugger-make} --debugger' @var{program} @end example @cindex Perl, invoking @DDD{} with @@ -1675,16 +1684,9 @@ @value{ddd} --perl @var{program} @end example -@cindex Bash, invoking @DDD{} with -@example -@value{ddd} --bash @var{program} -@value{ddd} --interpreter='@emph{path-to-debugger-bash} --debugger' @var{program} -@end example - -@cindex GNU Make, invoking @DDD{} with +@cindex @acronym{PYDB}, invoking @DDD{} with @example -@value{ddd} --make @var{program} -@value{ddd} --interpreter='@emph{path-to-debugger-make} --debugger' @var{program} +@value{ddd} --pydb @var{program} @end example @noindent @@ -1692,30 +1694,30 @@ debugger. @item -If the program is an executable binary, you should use @GDB{}, @DBX{}, +If the program is an executable binary, you should use @DBX{}, @GDB{}, Ladebug, or @XDB{}. In general, @GDB{} (or its HP variant, @WDB{}) provides the most functionality of these debuggers. Use -@cindex @acronym{GDB}, invoking @DDD{} with +@cindex @acronym{DBX}, invoking @DDD{} with @example -@value{ddd} --gdb @var{program} +@value{ddd} --dbx @var{program} @end example -@cindex @acronym{WDB}, invoking @DDD{} with +@cindex @acronym{GDB}, invoking @DDD{} with @example -@value{ddd} --wdb @var{program} +@value{ddd} --gdb @var{program} @end example -@cindex @acronym{DBX}, invoking @DDD{} with +@cindex Ladebug, invoking @DDD{} with @example -@value{ddd} --dbx @var{program} +@value{ddd} --ladebug @var{program} @end example -@cindex Ladebug, invoking @DDD{} with +@cindex @acronym{WDB}, invoking @DDD{} with @example -@value{ddd} --ladebug @var{program} +@value{ddd} --wdb @var{program} @end example @cindex @acronym{XDB}, invoking @DDD{} with @@ -1831,14 +1833,15 @@ @item --debugger @var{name} -@pindex gdb -@pindex wdb @pindex dbx +@pindex gdb @pindex ladebug -@pindex xdb @pindex jdb -@pindex pydb +@pindex mdb @pindex perl +@pindex pydb +@pindex wdb +@pindex xdb Invoke the inferior debugger @var{name}. This is useful if you have several debugger versions around, or if the inferior debugger cannot be invoked under its usual name (i.e. @command{gdb}, @command{wdb}, @@ -1976,7 +1979,7 @@ Run @JDB{} as inferior debugger. Giving this option is equivalent to setting the @DDD{} -@samp{debugger} resource to @samp{gdb}. @xref{Customizing Debugger Interaction}, +@samp{debugger} resource to @samp{jdb}. @xref{Customizing Debugger Interaction}, for details. @@ -2428,10 +2431,10 @@ * DBX and Ladebug Options:: * XDB Options:: * JDB Options:: -* PYDB Options:: -* Perl Options:: * Bash Options:: * GNU Make Options:: +* Perl Options:: +* PYDB Options:: @end menu @node GDB Options @@ -2642,12 +2645,25 @@ Further options can be found in the @JDB{} documentation. +@node Bash Options +@subsubsection Bash Options -@node PYDB Options -@subsubsection PYDB Options +If you have the proper bash installed, the option needed to specify +debugging support is @option{--debugger}. If your bash doesn't +understand this option you need to pick up a version of bash that does +from @uref{http://bashdb.sourceforge.net}. Other options can be found +from the on-line documentation at +@uref{http://bashdb.sourceforge.net/bashdb.html} -For a list of useful @PYDB{} options, check out the @PYDB{} documentation. +@node GNU Make Options +@subsubsection GNU Make Options +If you have the proper @code{make} installed (for now it is probably +called @code{remake}), the option needed to specify debugging support +is @option{--debugger}. You can pick up a debugger-enabled version +from @uref{http://bashdb.sourceforge.net/remake}. Other options can be +found from the on-line documentation at +@uref{http://bashdb.sourceforge.net/remake/mdb.html} @node Perl Options @subsubsection Perl Options @@ -2656,22 +2672,14 @@ enables several important warnings. For further options, see the @cite{perlrun(1)} manual page. +@node PYDB Options +@subsubsection PYDB Options -@node Bash Options -@subsubsection Bash Options - -If you have the proper bash installed, the option needed to specify -debugging support is @option{--debugger}. (If your bash doesn't -understand this option you need to pick up a version of bash that does -from @uref{http://bashdb.sourceforge.net}.) - -@node GNU Make Options -@subsubsection GNU Make Options - -If you have the proper @code{make} installed (for now it is probably -called @code{remake}, the option needed to specify debugging support -is @option{--debugger} and you can pick up a debugger-enabled version -from @uref{http://bashdb.sourceforge.net/remake}.) +An older version of @PYDB{} used to come with @DDD{}. That is no +longer the case. Pick up the newer version of @PYDB{} from +@uref{http://bashdb.sourceforge.net/pydb}. For a list of useful +@PYDB{} options, check out the @PYDB{} documentation, +@uref{http://bashdb.sourceforge.net/pydb/pydb/lib/index.html}. @node Multiple Instances @subsection Multiple @value{DDD} Instances @@ -2707,8 +2715,6 @@ (@samp{on}) or not (@samp{off}, default). @end defvr - - @node X Warnings @subsection X warnings @@ -3256,13 +3262,28 @@ @end defvr @defvr Resource debugger (class Debugger) -The type of the inferior debugger to invoke (@samp{gdb}, @samp{dbx}, -@samp{ladebug}, @samp{xdb}, @samp{jdb}, @samp{pydb}, @samp{perl}, or -@samp{bash}). - -This resource is usually set through the @option{--gdb}, @option{--dbx}, -@option{--ladebug}, @option{--xdb}, @option{--jdb}, @option{--pydb}, -@option{--perl}, and @option{--bash} options; @xref{Options}, for details. +The type of the inferior debugger to invoke +(@samp{bash} +@samp{dbx}, +@samp{gdb}, +@samp{jdb}, +@samp{ladebug}, +@samp{make}, +@samp{perl}, +@samp{pydb}, or +@samp{xdb}). + +This resource is usually set through the +@option{--bash}, +@option{--dbx}, +@option{--gdb}, +@option{--jdb}, +@option{--ladebug}, +@option{--make}, +@option{--perl}, +@option{--pydb}, and +@option{--xdb}, +options; @xref{Options}, for details. @end defvr @defvr Resource debuggerCommand (class DebuggerCommand) @@ -3284,18 +3305,53 @@ inferior debugger (@pxref{Customizing}). @menu -* GDB Initialization:: +* Bash Initialization:: * DBX Initialization:: -* XDB Initialization:: +* GDB Initialization:: * JDB Initialization:: -* PYDB Initialization:: -* Perl Initialization:: -* Bash Initialization:: * GNU Make Initialization:: +* Perl Initialization:: +* PYDB Initialization:: +* XDB Initialization:: * Finding a Place to Start:: * Opening the Selection:: @end menu +@node Bash Initialization +@subsubsection Bash Initialization + +@defvr Resource bashInitCommands (class InitCommands) +This string contains a list of newline-separated commands that are +initially sent to the Bash debugger. By default, it is empty. + +This resource may be used to customize the Bash debugger. +@end defvr + +@defvr Resource bash (class Settings) +This string contains a list of newline-separated commands that are +also initially sent to the Bash debugger. By default, it is empty. + +This resource is used by @DDD{} to save and restore Bash +debugger settings. +@end defvr + +@node DBX Initialization +@subsubsection DBX Initialization + +@defvr Resource dbxInitCommands (class InitCommands) +This string contains a list of newline-separated commands that are +initially sent to @DBX{}. By default, it is empty. + +Do not use this resource to customize @DBX{}; instead, use a +personal @file{~/.dbxinit} or @file{~/.dbxrc} file. See +your @DBX{} documentation for details. +@end defvr + +@defvr Resource dbxSettings (class Settings) +This string contains a list of newline-separated commands that are +also initially sent to @DBX{}. By default, it is empty. +@end defvr + @node GDB Initialization @subsubsection GDB Initialization @@ -3346,41 +3402,6 @@ @end defvr -@node DBX Initialization -@subsubsection DBX Initialization - -@defvr Resource dbxInitCommands (class InitCommands) -This string contains a list of newline-separated commands that are -initially sent to @DBX{}. By default, it is empty. - -Do not use this resource to customize @DBX{}; instead, use a -personal @file{~/.dbxinit} or @file{~/.dbxrc} file. See -your @DBX{} documentation for details. -@end defvr - -@defvr Resource dbxSettings (class Settings) -This string contains a list of newline-separated commands that are -also initially sent to @DBX{}. By default, it is empty. -@end defvr - - -@node XDB Initialization -@subsubsection XDB Initialization - -@defvr Resource xdbInitCommands (class InitCommands) -This string contains a list of newline-separated commands that are -initially sent to @XDB{}. By default, it is empty. - -Do not use this resource to customize @DBX{}; instead, use a -personal @file{~/.xdbrc} file. See your @XDB{} -documentation for details. -@end defvr - -@defvr Resource xdbSettings (class Settings) -This string contains a list of newline-separated commands that are -also initially sent to @XDB{}. By default, it is empty. -@end defvr - @node JDB Initialization @subsubsection JDB Initialization @@ -3399,24 +3420,22 @@ settings. @end defvr +@node GNU Make Initialization +@subsubsection GNU Make Initialization - -@node PYDB Initialization -@subsubsection PYDB Initialization - -@defvr Resource pydbInitCommands (class InitCommands) +@defvr Resource makeInitCommands (class InitCommands) This string contains a list of newline-separated commands that are -initially sent to @PYDB{}. By default, it is empty. +initially sent to the Bash debugger. By default, it is empty. -This resource may be used to customize @PYDB{}. +This resource may be used to customize GNU Make debugging. @end defvr -@defvr Resource pydbSettings (class Settings) +@defvr Resource bash (class Settings) This string contains a list of newline-separated commands that are -also initially sent to @PYDB{}. By default, it is empty. +also initially sent to the GNU Make debugger. By default, it is empty. -This resource is used by @DDD{} to save and restore @PYDB{} -settings. +This resource is used by @DDD{} to save and restore GNU Make +debugger settings. @end defvr @@ -3439,44 +3458,45 @@ @end defvr -@node Bash Initialization -@subsubsection Bash Initialization -@defvr Resource bashInitCommands (class InitCommands) +@node PYDB Initialization +@subsubsection PYDB Initialization + +@defvr Resource pydbInitCommands (class InitCommands) This string contains a list of newline-separated commands that are -initially sent to the Bash debugger. By default, it is empty. +initially sent to @PYDB{}. By default, it is empty. -This resource may be used to customize the Bash debugger. +This resource may be used to customize @PYDB{}. @end defvr -@defvr Resource bash (class Settings) +@defvr Resource pydbSettings (class Settings) This string contains a list of newline-separated commands that are -also initially sent to the Bash debugger. By default, it is empty. +also initially sent to @PYDB{}. By default, it is empty. -This resource is used by @DDD{} to save and restore Bash -debugger settings. +This resource is used by @DDD{} to save and restore @PYDB{} +settings. @end defvr +@node XDB Initialization +@subsubsection XDB Initialization -@node GNU Make Initialization -@subsubsection GNU Make Initialization - -@defvr Resource makeInitCommands (class InitCommands) +@defvr Resource xdbInitCommands (class InitCommands) This string contains a list of newline-separated commands that are -initially sent to the Bash debugger. By default, it is empty. +initially sent to @XDB{}. By default, it is empty. -This resource may be used to customize GNU Make debugging. +Do not use this resource to customize @DBX{}; instead, use a +personal @file{~/.xdbrc} file. See your @XDB{} +documentation for details. @end defvr -@defvr Resource bash (class Settings) +@defvr Resource xdbSettings (class Settings) This string contains a list of newline-separated commands that are -also initially sent to the GNU Make debugger. By default, it is empty. - -This resource is used by @DDD{} to save and restore GNU Make -debugger settings. +also initially sent to @XDB{}. By default, it is empty. @end defvr + + @node Finding a Place to Start @subsubsection Finding a Place to Start @@ -4483,15 +4503,15 @@ Shows what's new in this @DDD{} release. @item Debugger Reference +@lbindex Bash Reference +@lbindex DBX Reference @lbindex Debugger Reference @lbindex GDB Reference -@lbindex DBX Reference -@lbindex Ladebug Reference -@lbindex XDB Reference @lbindex JDB Reference -@lbindex PYDB Reference +@lbindex Ladebug Reference @lbindex Perl Reference -@lbindex Bash Reference +@lbindex PYDB Reference +@lbindex XDB Reference Shows the on-line documentation for the inferior debugger. @item @DDD{} License @@ -5481,7 +5501,7 @@ @pindex mozilla @pindex emacs @pindex xemacs -@pindex mosaic +@pindex firefox @pindex gnudoit @pindex lynx The command to invoke a @WWW{} browser. The string @samp{@@URL@@} is @@ -5489,7 +5509,7 @@ Netscape first (trying @command{mozilla}, then @command{netscape}), then @command{$WWWBROWSER}, then to invoke a new Netscape process, then to let a running Emacs or XEmacs do the job (via @command{gnudoit}), then -to invoke Mosaic, then to invoke Lynx in an xterm. +to invoke Firefox, then to invoke Lynx in an xterm. To specify @samp{netscape-6.0} as browser, use the setting: @@ -9454,16 +9474,61 @@ @table @samp @item Small Titles @lbindex Small Titles -Apply this theme to show display titles in a smaller font. +If enabled, display titles in a smaller font. @item Small Values @lbindex Small Values Apply this theme to display values in a smaller font. @item Tiny Values @lbindex Tiny Values +If enabled, display values in a tiny font. +This could be combined with a pattern like @code{*\[*\]} to make +all array members tiny. Apply this theme to display values in a tiny font. @item Suppress Values @lbindex Suppress Values -Apply this theme to display values not at all. +If enabled, the given value will be suppressed. This should be +combined with a pattern like @code{*->X} to suppress all members named +`X'. Apply this theme to display values not at all. +@item Red Background +@lbindex Red Background +Use this with a self-defined button +associated with the command @code{graph apply red.vsl "()"} +@item Red nil pointers +@lbindex Red Background +If enabled, show nil pointers in red. +@item Green background +@lbindex Green background +Use this with a self-defined button associated with the command +@code{graph apply green.vsl "()"}. +@item Intel x86 flag bits and registers +@lbindex Intel x86 flab gits and registers +To use this theme, set up some data buttons like this: + +@example + Ddd*dataButtons: \ + graph display ($eflags & 1) != 0 // c\n\ + graph display ($eflags & 64) != 0 // z\n\ + graph display ($eflags & 128) != 0 // s\n\ + graph display ($eflags & 1024) != 0 // d\n\ + graph display ($eflags & 2048) != 0 // o\n\ + graph display $eax & 255 // al\n\ + graph display $eax >> 8 & 255 // ah\n\ + graph display $eax & 65535 // ax\n\ + graph display $ebx & 255 // bl\n\ + graph display $ebx >> 8 & 255 // bh\n\ + graph display $ebx & 65535 // bx\n\ + graph display $ecx & 255 // cl\n\ + graph display $ecx >> 8 & 255 // ch\n\ + graph display $ecx & 65535 // cx\n\ + graph display $edx & 255 // dl\n\ + graph display $edx >> 8 & 255 // dh\n\ + graph display $edx & 65535 // dx +@end example + +Whenever the these displays is shown, the title will be replaced by a +more intuitive title like ``carry'', or ``zero'' for one of the flag bits +and ``al'' ``ax'', etc. for one of the registers. + @end table Each of these themes can be applied for specific displays. @@ -10770,11 +10835,17 @@ In the @emph{debugger console}, you can interact with the command interface of the inferior debugger. Enter commands at the -@emph{debugger prompt}---that is, @samp{(gdb)} for @GDB{}, -@samp{(dbx)} for @DBX{}, @samp{(ladebug)} for Ladebug, @samp{>} for -@XDB{}, @samp{>} and @samp{@var{thread}[@var{depth}]} for @JDB{}, or -@samp{(Pydb)} for @PYDB{}, or @samp{DB<>} for Perl, or -@samp{bashdb<>} for Bash. You can use arbitrary debugger commands; use the +@emph{debugger prompt}---that is, +@samp{(gdb)} for @GDB{}, +@samp{bashdb<>} for Bash, +@samp{(dbx)} for @DBX{}, +@samp{>} @samp{@var{thread}[@var{depth}]} for @JDB{}, +@samp{(ladebug)} for Ladebug, +@samp{mdb<>} for the GNU Make debugger, +@samp{DB<>} for Perl, +@samp{(Pydb)} for @PYDB{}, +or @samp{>} for @XDB{}. +You can use arbitrary debugger commands; use the @key{Return} key to enter them. @menu @@ -12502,13 +12573,14 @@ @menu * GDB:: Using @DDD{} with @GDB{} +* Bash:: Using @DDD{} with Bash * DBX:: Using @DDD{} with @DBX{} * Ladebug:: Using @DDD{} with Ladebug -* XDB:: Using @DDD{} with @XDB{} * JDB:: Using @DDD{} with @JDB{} -* Perl:: Using @DDD{} with Perl -* Bash:: Using @DDD{} with Bash * Make:: Using @DDD{} with GNU Make +* Perl:: Using @DDD{} with Perl +* Python:: Using @DDD{} with Python +* XDB:: Using @DDD{} with @XDB{} * LessTif:: Using @DDD{} with LessTif @end menu @@ -12694,6 +12766,33 @@ @xref{GDB}, for further configuration notes. +@node Bash +@section Using @value{DDD} with Bash + +@BASH{} support is rather new. As a programming language, @BASH{} is +not feature rich: there are no record structures or hash tables (yet), +no pointers, package variable scoping or methods. So much of the data +display and visualization features of @value{DDD} are disabled. + +As with any scripting or interpreted language like Perl, stepping +a machine-language instructions (commands Stepi/Nexti) doesn't exist. + +Some @BASH{} settings are essential for @DDD{} to work correctly. +These settings with their correct values are: + +@example +set annotate 1 +set prompt set prompt bashdb$_Dbg_less$_Dbg_greater$_Dbg_space +@end example + +@DDD{} sets these values automatically when invoking @BASH{}; if these +values are changed, there may be some malfunctions. + +Pay special attention when the prompt has extra angle brackets (a +nested shell) or has any parenthesis (is in a subshell). Quitting may +merely exit out of one of these nested (sub)shells rather than leave +the program. + @node DBX @section Using @value{DDD} with DBX @@ -12718,14 +12817,6 @@ All @DBX{} limitations (@pxref{DBX}) apply to Ladebug as well. -@node XDB -@section Using @value{DDD} with XDB - -There is no automatic data display in @XDB{}. As a workaround, -@DDD{} uses the @samp{p} command to access data values. This -means that variable names are interpreted according to the current -frame; variables outside the current frame cannot be displayed. - @node JDB @section Using @value{DDD} with JDB @@ -12745,42 +12836,6 @@ case, have the program run with @option{-debug} in a separate window and attach @JDB{} to it using the @option{-passwd} option. -@node Perl -@section Using @value{DDD} with Perl - -There is no automatic data display in Perl. As a workaround, -@DDD{} uses the @samp{x} command to access data values. This -means that variable names are interpreted according to the current -frame; variables outside the current frame cannot be displayed. - - -@node Bash -@section Using @value{DDD} with Bash - -@BASH{} support is rather new. As a programming language, @BASH{} is -not feature rich: there are no record structures or hash tables (yet), -no pointers, package variable scoping or methods. So much of the data -display and visualization features of @value{DDD} are disabled. - -As with any scripting or interpreted language like Perl, stepping -a machine-language instructions (commands Stepi/Nexti) doesn't exist. - -Some @BASH{} settings are essential for @DDD{} to work correctly. -These settings with their correct values are: - -@example -set annotate 1 -set prompt set prompt bashdb$_Dbg_less$_Dbg_greater$_Dbg_space -@end example - -@DDD{} sets these values automatically when invoking @BASH{}; if these -values are changed, there may be some malfunctions. - -Pay special attention when the prompt has extra angle brackets (a -nested shell) or has any parenthesis (is in a subshell). Quitting may -merely exit out of one of these nested (sub)shells rather than leave -the program. - @node Make @section Using @value{DDD} with GNU Make @@ -12803,6 +12858,51 @@ brackets---nested invocation of GNU MAKE. Quitting may merely exit out of one of these nested invocations rather than leave the program. +@node Perl +@section Using @value{DDD} with Perl + +There is no automatic data display in Perl. As a workaround, +@DDD{} uses the @samp{x} command to access data values. This +means that variable names are interpreted according to the current +frame; variables outside the current frame cannot be displayed. + + +@node Python +@section Using @value{DDD} with Python + +In short, make sure you use a newer version of @PYDB{}, one from +@uref{http://bashdb.sourceforge.net/pydb}. Older versions that had +been supplied with @DDD{} will no longer work. + +History: Up to around 1999 there was parallel development that went on +between @DDD{}'s Python debugger @PYDB{} and the stock python debugger +@code{pdb}. These were not necessarily @emph{competing} efforts, just +parallel. In fact the same person worked a little bit on both. + +One feature that @PYDB{} supported that wasn't in @code{pdb} was @GDB{}'s +@code{display} command. + +After 1999, maintaining @PYDB{} more or less fell into disuse and @code{pdb} +sort of inched ahead with bug fixes and redisigned interaces. Around +the beginning of 2006, new work was started to enhance pdb and to make +it more like @GDB{}. Since @DDD{} already understands a large set of +@GDB{} commands, many of these enhancements were immediately +realizable by @DDD{}. These things include command completion, +restarting the debugger, and using set/show/info commands. + +With the blessing of the original author of @PYDB{}, the new effort +took over the name of the old one, Although it did not actually start +out from the @PYDB{} base but from pdb adding the old @PYDB{} +features. + +@node XDB +@section Using @value{DDD} with XDB + +There is no automatic data display in @XDB{}. As a workaround, +@DDD{} uses the @samp{p} command to access data values. This +means that variable names are interpreted according to the current +frame; variables outside the current frame cannot be displayed. + @node LessTif @section Using @value{DDD} with LessTif Index: ddd/environ.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/environ.C,v retrieving revision 1.11 retrieving revision 1.11.4.1 diff -u -r1.11 -r1.11.4.1 --- ddd/environ.C 7 Jun 2004 11:52:55 -0000 1.11 +++ ddd/environ.C 17 Jun 2006 09:43:56 -0000 1.11.4.1 @@ -37,6 +37,10 @@ #include <stdlib.h> // getenv, putenv #include <string.h> +#if !HAVE_PUTENV_DECL +extern "C" int putenv(char *string); +#endif + static StringArray environment_names; // Put NAME=VALUE into the environment Index: ddd/examine.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/examine.C,v retrieving revision 1.17 retrieving revision 1.17.2.2 diff -u -r1.17 -r1.17.2.2 --- ddd/examine.C 20 Nov 2005 03:38:12 -0000 1.17 +++ ddd/examine.C 15 Jul 2006 15:17:33 -0000 1.17.2.2 @@ -2,6 +2,7 @@ // Examine range of memory // Copyright (C) 1998 Technische Universitaet Braunschweig, Germany. +// Copyright (C) 2001-2006 Free Software Foundation, Inc. // Written by Andreas Zeller <[email protected]>. // // This file is part of DDD. @@ -196,6 +197,79 @@ strip_space(repeat); strip_space(address); + if (GDB == gdb->type() && gdb->cpu == cpu_intel) { + + /* Intel x86 8 and 16-bit handling: + When you have an assembly line like this: + movw array(,%ecx,2), %ax + + there is no easy way to show memory addressed by + "array(,%ecx,2)", which is very useful for debugging. This was + solved via Data/Memory dialog, which was changed to handle + these expressions. + + This way, by putting "array(,%ecx,2)" in the argument field, + and calling Data/Memory dialog, correct value(s) will be + shown. But, there is a catch: all data displays shown this way + will have "X" as their name. I didn't figure out how to name + them correctly (or, in fact, now to name them at all). + */ + + //ZARKO - prikaz sadrzaja memorije kod opsteg formata adresiranja + int left_par, right_par, comma1, comma2; + string addr,addr_addr,addr_base,addr_index,addr_mul; + addr = address; + char added = 0; + addr.gsub(" ",""); //izbaci sve razmake + addr.gsub("\t",""); //izbaci sve tabove + + //zameni % sa $, pa ako je bilo ikakvih zamena, radi dalje + if (addr.gsub("%","$") > 0) { + left_par = addr.index("("); + right_par = addr.index(")", left_par+1); + + //samo ako ima zagrada, treba dalje analizirati + if ((left_par != -1) && (right_par != -1)) { + addr_addr = ""; //adresa + addr_base = ""; //baza + addr_mul = ""; //mnozilac + addr_index = ""; //indeks + if ((comma1 = addr.index(",",left_par+1)) != -1) { + if ((comma2 = addr.index(",", comma1+1)) == -1) + comma2 = right_par; + } else comma1 = comma2 = right_par; + if (left_par > 0) addr_addr = addr.at(0,left_par); + if (comma1 > left_par+1) + addr_base = addr.at(left_par+1, comma1-left_par-1); + if (comma2 > comma1+1) + addr_index = addr.at(comma1+1,comma2-comma1-1); + if (right_par > comma2+1) + addr_mul = addr.at(comma2+1,right_par-comma2-1); + address = "("; + if (addr_addr.length()) { + if (((addr_addr.at(0,1) >= '0') && (addr_addr.at(0,1) <= '9')) + || (addr_addr.at(0,1) == '-')) + address += addr_addr; + else + address += "(char*)&"+addr_addr; + added = 1; + } + if (addr_base.length()) { + if (added) address += "+"; + address += addr_base; + added = 1; + } + if (addr_index.length()) { + if (added) address += "+"; + address += addr_index; + } + if (addr_mul.length()) address += "*"+addr_mul; + address += ")"; + } + } + //ZARKO - prikaz sadrzaja memorije kod opsteg formata adresiranja + } + string fmt = "/" + repeat + format(the_format, the_size); switch (gdb->type()) { Index: ddd/macros.texi =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/macros.texi,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -u -r1.3 -r1.3.2.1 --- ddd/macros.texi 6 Dec 2005 05:10:44 -0000 1.3 +++ ddd/macros.texi 15 Jul 2006 22:16:08 -0000 1.3.2.1 @@ -1,7 +1,8 @@ -@c $Id$ -*- texinfo -*- +@c $Id$ @c DDD macros @c Copyright (C) 2000 Universitaet Passau, Germany. +@c Copyright (C) 2006 Free Software Foundation, Inc. @c Written by Andreas Zeller <[email protected]>. @c @c This file is part of DDD. @@ -76,7 +77,7 @@ @end macro @macro PYDB {} -@acronym{PYDB} +@code{pydb} @end macro @macro VSL {} Index: ddd/options.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/options.C,v retrieving revision 1.187 retrieving revision 1.187.2.1 diff -u -r1.187 -r1.187.2.1 --- ddd/options.C 20 Nov 2005 03:38:12 -0000 1.187 +++ ddd/options.C 17 Jun 2006 09:43:57 -0000 1.187.2.1 @@ -1439,7 +1439,7 @@ #if HAVE_SYMLINK // Try a symlink link from target to current core file - if (symlink(info.core.chars(), target.chars()) == 0) + if (symlink((char *)info.core.chars(), (char *)target.chars()) == 0) return true; #endif Index: ddd/resources.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/resources.C,v retrieving revision 1.176 retrieving revision 1.176.2.1 diff -u -r1.176 -r1.176.2.1 --- ddd/resources.C 20 Nov 2005 03:38:12 -0000 1.176 +++ ddd/resources.C 15 Jul 2006 11:34:56 -0000 1.176.2.1 @@ -3,6 +3,7 @@ // Copyright (C) 1996-1998 Technische Universitaet Braunschweig, Germany. // Copyright (C) 1999-2000 Universitaet Passau, Germany. +// Copyright (C) 2001-2006 Free Software Foundation, Inc. // Written by Andreas Zeller <[email protected]>. // // This file is part of DDD. Index: ddd/session.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/session.C,v retrieving revision 1.72 retrieving revision 1.72.2.1 diff -u -r1.72 -r1.72.2.1 --- ddd/session.C 20 Nov 2005 03:38:12 -0000 1.72 +++ ddd/session.C 17 Jun 2006 09:43:57 -0000 1.72.2.1 @@ -116,6 +116,9 @@ #define S_IRWXO 07 #endif +#if !HAVE_PUTENV_DECL +extern "C" int putenv(char *string); +#endif // --------------------------------------------------------------------------- // How to present a default session to the user Index: ddd/settings.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/settings.C,v retrieving revision 1.160.2.1 retrieving revision 1.160.2.2 diff -u -r1.160.2.1 -r1.160.2.2 --- ddd/settings.C 21 Feb 2006 15:37:25 -0000 1.160.2.1 +++ ddd/settings.C 14 Jan 2007 20:06:48 -0000 1.160.2.2 @@ -345,7 +345,7 @@ pclose(fp); s = info; - int start = s.index(" - Macro: int " + sig); + int start = s.index("- Macro: int " + sig); start = s.index('\n', start); s = s.after(start); int end = s.index("\n - "); Index: ddd/xconfig.C =================================================================== RCS file: /cvsroot/ddd/ddd/ddd/xconfig.C,v retrieving revision 1.36 retrieving revision 1.36.4.1 diff -u -r1.36 -r1.36.4.1 --- ddd/xconfig.C 7 Jun 2004 11:52:56 -0000 1.36 +++ ddd/xconfig.C 17 Jun 2006 09:43:57 -0000 1.36.4.1 @@ -58,7 +58,9 @@ #if !HAVE_PCLOSE_DECL extern "C" int pclose(FILE *stream); #endif - +#if !HAVE_PUTENV_DECL +extern "C" int putenv(char *string); +#endif //----------------------------------------------------------------------------- // Determine X project root Index: themes/Makefile.am =================================================================== RCS file: /cvsroot/ddd/ddd/themes/Makefile.am,v retrieving revision 1.6 retrieving revision 1.6.4.1 diff -u -r1.6 -r1.6.4.1 --- themes/Makefile.am 17 Dec 2003 12:28:08 -0000 1.6 +++ themes/Makefile.am 15 Jul 2006 11:34:56 -0000 1.6.4.1 @@ -39,13 +39,14 @@ # ----------------------------------------------------------------------------- themesrootdir = $(dddrootdir)/themes -themesroot_DATA = \ - green.vsl \ - red.vsl \ - rednil.vsl \ +themesroot_DATA = \ + green.vsl \ + red.vsl \ + rednil.vsl \ smalltitles.vsl \ smallvalues.vsl \ - suppress.vsl \ - tinyvalues.vsl + suppress.vsl \ + tinyvalues.vsl \ + x86.vsl EXTRA_DIST = $(themesroot_DATA)