head 1.2; access; symbols pkgsrc-2013Q2:1.2.0.44 pkgsrc-2013Q2-base:1.2 pkgsrc-2012Q4:1.2.0.42 pkgsrc-2012Q4-base:1.2 pkgsrc-2011Q4:1.2.0.40 pkgsrc-2011Q4-base:1.2 pkgsrc-2011Q2:1.2.0.38 pkgsrc-2011Q2-base:1.2 pkgsrc-2009Q4:1.2.0.36 pkgsrc-2009Q4-base:1.2 pkgsrc-2008Q4:1.2.0.34 pkgsrc-2008Q4-base:1.2 pkgsrc-2008Q3:1.2.0.32 pkgsrc-2008Q3-base:1.2 cube-native-xorg:1.2.0.30 cube-native-xorg-base:1.2 pkgsrc-2008Q2:1.2.0.28 pkgsrc-2008Q2-base:1.2 pkgsrc-2008Q1:1.2.0.26 pkgsrc-2008Q1-base:1.2 pkgsrc-2007Q4:1.2.0.24 pkgsrc-2007Q4-base:1.2 pkgsrc-2007Q3:1.2.0.22 pkgsrc-2007Q3-base:1.2 pkgsrc-2007Q2:1.2.0.20 pkgsrc-2007Q2-base:1.2 pkgsrc-2007Q1:1.2.0.18 pkgsrc-2007Q1-base:1.2 pkgsrc-2006Q4:1.2.0.16 pkgsrc-2006Q4-base:1.2 pkgsrc-2006Q3:1.2.0.14 pkgsrc-2006Q3-base:1.2 pkgsrc-2006Q2:1.2.0.12 pkgsrc-2006Q2-base:1.2 pkgsrc-2006Q1:1.2.0.10 pkgsrc-2006Q1-base:1.2 pkgsrc-2005Q4:1.2.0.8 pkgsrc-2005Q4-base:1.2 pkgsrc-2005Q3:1.2.0.6 pkgsrc-2005Q3-base:1.2 pkgsrc-2005Q2:1.2.0.4 pkgsrc-2005Q2-base:1.2 pkgsrc-2005Q1:1.2.0.2 pkgsrc-2005Q1-base:1.2 pkgsrc-2004Q4:1.1.0.6 pkgsrc-2004Q4-base:1.1 pkgsrc-2004Q3:1.1.0.4 pkgsrc-2004Q3-base:1.1 pkgsrc-2004Q2:1.1.0.2 pkgsrc-2004Q2-base:1.1; locks; strict; comment @# @; 1.2 date 2005.01.11.09.04.16; author martti; state dead; branches; next 1.1; 1.1 date 2004.06.04.11.19.32; author shannonjr; state Exp; branches; next ; desc @@ 1.2 log @Updated ddd to 3.3.10 * New features and minor improvements - More fixes for perl 5.8.x -- it's now a lot more usable. - Fixes for Sun's SunONE Studio dbx (1). Build with -DHAVE_SUNDBX is necessary. Improvements for automatic detection of Sun DBX are welcome. - Fixes for MacOS X (mainly workarounds for bugs in gdb) (2). - Support for PHP debugger has been added (1). This is essentially not tested. - Source files in subdirectories should be located automatically when using dbx (tested on Solaris' dbx) (2). - The perl version supported by DDD is now 5.8.x. The perl debugger changed between perl 5.6.x and perl 5.8.0, which made this update necessary. This change is not backwards-compatible. If it is not possible to upgrade your perl version to 5.8.x or newer, then you can simply install the file "perl5db.pl" from a recent perl distribution into your old perl tree. - Through the maintenance menu ("ddd --maintenance"), it now possible to get a leak check of ddd if ddd is run under valgrind. This is only useful for ddd developers (or anybody that wants to help making ddd better). - Several minor bugs fixed, some memory leaks plugged, more code clean-up done. - A bug affecting platforms where the size of function pointers is 16 has been fixed. - The settings window now starts at a larger, more reasonable size, and allows the user to resize it. * Build fixes - automake 1.9 is now the minimum requirement. This affects only builds from CVS repository. - A warning is emitted if a version of g++ older than 3.1 is used. - libiberty is neither linked nor bundled anymore. - GNU libtermcap is not bundled anymore. A termcap like library (such as ncurses) is now required to build ddd. - The configure machinery has been updated to conform more closely to the autoconf 2.5x requirements. Several bugs have been fixed. Minimum requirements: autoconf 2.59, automake 1.7.9, libtool 1.5. - libiberty (which provides missing standard functions) is not linked by default anymore. configure has a new option '--with-libiberty' that enables the libiberty support if required. If nobody complains, libiberty will be unbundled in a next version. - The libiberty distributed with ddd has been upgraded to the one included in GCC 3.4 20040116. It fixes some configuration problems. - Builds with GCC 3.4, with IBM xlC on AIX, with Compaq/HP cxx on Tru64, on X11R5 based systems, with SGI CC on IRIX should be OK. - Builds on HP-UX should now work out-of-the-box. Motif is linked statically and the Athena libraries are now found by default. - Builds without Motif/Lesstif available abort with an adequate message. - Builds with readline support now work. readline is not bundled anymore. - Builds without -DNDEBUG (i.e. with "assert" enabled) now work. Default build enables assertions (i.e. -DNDEBUG is not used). - Several missing files in the distribution are now included. - Cygwin is supported again. @ text @$NetBSD: patch-am,v 1.1 2004/06/04 11:19:32 shannonjr Exp $ --- ddd/GDBAgent.h.orig 2003-10-11 05:03:34.000000000 -0600 +++ ddd/GDBAgent.h @@@@ -57,7 +57,7 @@@@ // Debugger types //----------------------------------------------------------------------------- -enum DebuggerType { GDB, DBX, XDB, JDB, PYDB, PERL, BASH }; +enum DebuggerType { BASH, DBX, GDB, JDB, PERL, PYDB, XDB }; //----------------------------------------------------------------------------- // Program language //----------------------------------------------------------------------------- @@@@ -67,15 +67,16 @@@@ enum DebuggerType { GDB, DBX, XDB, JDB, #endif enum ProgramLanguage { - LANGUAGE_C, // C-like: C, C++ - LANGUAGE_JAVA, // Java, as supported by GDB. - LANGUAGE_PASCAL, // Pascal-like: Pascal, Modula... LANGUAGE_ADA, // Ada (GNAT), as supported by GDB + LANGUAGE_BASH, // Bash, as supported by bashdb. + LANGUAGE_C, // C-like: C, C++ LANGUAGE_CHILL, // Chill, as supported by GDB. LANGUAGE_FORTRAN, // FORTRAN, as supported by GDB. - LANGUAGE_PYTHON, // Python, as supported by PYDB. + LANGUAGE_JAVA, // Java, as supported by GDB. + LANGUAGE_PASCAL, // Pascal-like: Pascal, Modula... LANGUAGE_PERL, // Perl, as supported by Perl. - LANGUAGE_BASH, // Bash, as supported by bashdb. + LANGUAGE_PHP, // PHP, as supported by DBG. + LANGUAGE_PYTHON, // Python, as supported by PYDB. LANGUAGE_OTHER // Others }; @@@@ -104,7 +105,7 @@@@ typedef void (* OAProc) (const string& a typedef void (* OACProc) (void* user_data); // Called from send_qu_array with the complete answers -typedef void (* OQACProc) (const StringArray& complete_answers, +typedef void (* OQACProc) (StringArray& complete_answers, const VoidArray& user_datas, void *user_data); @@@@ -162,6 +163,7 @@@@ private: bool _has_frame_command; // Debugger properties bool _has_func_command; + bool _has_file_command; bool _has_run_io_command; bool _has_print_r_option; bool _has_output_command; @@@@ -210,9 +212,11 @@@@ private: protected: // Return PREFIX + EXPR, parenthesizing EXPR if needed static string prepend_prefix(const string& prefix, const string& expr); + static string prepend_prefix(const char *prefix, const string& expr); // Return EXPR + SUFFIX, parenthesizing EXPR if needed static string append_suffix(const string& expr, const string& suffix); + static string append_suffix(const string& expr, const char *suffix); // General trace function void trace(const char *prefix, void *call_data) const; @@@@ -294,6 +298,10 @@@@ public: bool has_frame_command() const { return _has_frame_command; } bool has_frame_command(bool val) { return _has_frame_command = val; } + // True if debugger has `file' command + bool has_file_command() const { return _has_file_command; } + bool has_file_command(bool val) { return _has_file_command = val; } + // True if debugger has `func' command bool has_func_command() const { return _has_func_command; } bool has_func_command(bool val) { return _has_func_command = val; } @@@@ -433,8 +441,8 @@@@ public: // True if debugger can enable breakpoints bool has_enable_command() const { - return type() == GDB || type() == XDB || type() == PYDB || - type() == BASH || has_handler_command(); + return type() == BASH || type() == GDB + || type() == PYDB || type() == XDB || has_handler_command(); } bool has_disable_command() const { @@@@ -444,21 +452,22 @@@@ public: // True if debugger can set ignore counts on breakpoints bool has_ignore_command() const { - return type() == GDB || type() == XDB || type() == PYDB || - has_handler_command(); + return type() == GDB || type() == PYDB + || type() == XDB || has_handler_command(); } // True if debugger can set conditions on breakpoints bool has_condition_command() const { - return type() == GDB || type() == PYDB || type() == BASH; + return type() == BASH || type() == GDB + || type() == PYDB ; } // True if debugger can delete breakpoints by number bool has_delete_command() const { - return type() == GDB || type() == XDB || type() == BASH || - type() == DBX || type() == PYDB; + return type() == BASH || type() == DBX || type() == GDB + || type() == PYDB || type() == XDB ; } // True if debugger has volatile breakpoints (i.e. breakpoints may @@@@ -529,24 +538,26 @@@@ public: } // True if debugger has numbered breakpoints - bool has_numbered_breakpoints() + bool has_numbered_breakpoints() const { - return type() == GDB || type() == DBX || type() == XDB || type() == BASH - || type() == PYDB; + return type() == BASH || type() == DBX || type() == GDB + || type() == PYDB || type() == XDB; } // True if debugger supports temporary breakpoints bool has_temporary_breakpoints() const { - return type() == GDB || type() == XDB || type() == PYDB || type() == BASH - || has_when_command() || type() == PERL; + return type() == BASH || type() == GDB + || type() == PERL || type() == PYDB || type() == XDB + || has_when_command() ; } // True if debugger supports breakpoint conditions bool has_breakpoint_conditions() const { - return type() == GDB || type() == XDB || type() == BASH || - type() == DBX || type() == PYDB || type() == PERL; + return type() == BASH || type() == DBX + || type() == GDB || type() == PERL || type() == PYDB + || type() == XDB; } // True if debugger supports breakpoint commands @@@@ -597,7 +608,7 @@@@ public: } // True if debugger has numbered displays - bool has_numbered_displays() + bool has_numbered_displays() const { return type() == GDB || type() == PYDB; } @@@@ -678,11 +689,18 @@@@ public: // Several commands // GDB command // ----------------------- - string print_command(const string& expr = "", // print|output EXP + string print_command(const char *expr = "", // print|output EXP bool internal = true) const; + string print_command(const string& expr, + bool internal = true) const { + return print_command(expr.chars(), internal); + } string assign_command(const string& var, // set variable VAR = EXPR const string& expr) const; - string display_command(const string& expr = "") const; // display EXPR + string display_command(const char *expr = "") const; // display EXPR + string display_command(const string& expr) const { + return display_command(expr.chars()); + } string where_command(int count = 0) const; // where COUNT string pwd_command() const; // pwd string frame_command(int number) const; // frame NUMBER @@@@ -700,8 +718,11 @@@@ public: string info_locals_command() const; // info locals string info_args_command() const; // info args string info_display_command() const; // info display - string disassemble_command(string start, const string& end = "") const; + string disassemble_command(string start, const char *end = "") const; // disassemble START END + string disassemble_command(const string &start, const string& end ) const { + return disassemble_command(start, end.chars() ); + } string make_command(const string& target) const; // make TARGET string jump_command(const string& pc) const; // jump PC string regs_command(bool all = true) const; // info registers @@@@ -713,13 +734,22 @@@@ public: string delete_command(string bp = "") const; // delete BP string ignore_command(const string& bp, int count) const; // ignore BP COUNT - string condition_command(const string& bp, const string& expr) const; + string condition_command(const string& bp, const string& expr) const { + return condition_command(bp, expr.chars() ); + } + string condition_command(const string& bp, const char *expr) const; // cond BP EXPR string shell_command(const string& cmd) const; // shell CMD - string debug_command(const string& file = "", // file FILE + string debug_command(const char *file = "", // file FILE string args = "") const; + string debug_command(const string& file, string args = "") const { + return debug_command( file.chars(), args ); + } string signal_command(int sig) const; // signal SIG - string nop_command(const string& comment = "") const; // # comment + string nop_command(const char *comment = "") const; // # comment + string nop_command(const string& comment) const { + return nop_command(comment.chars()); + } // Bring VALUE of VAR into a form understood by DDD void munch_value(string& value, const string& var) const; @@@@ -755,11 +785,11 @@@@ public: // True if ANSWER ends in a prompt bool ends_with_prompt(const string& answer); - bool ends_with_secondary_prompt(const string& answer); - bool ends_with_yn(const string& answer); + bool ends_with_secondary_prompt(const string& answer) const; + bool ends_with_yn(const string& answer) const; // True if exception error message - bool is_exception_answer(const string& answer); + bool is_exception_answer(const string& answer) const; void set_exception_state(bool state); // Helpers @ 1.1 log @Re: PR 25546 Synopsis: The current release of ddd is 3.3.8. I have an updated pkg available for pkgsrc. Updating to revision 3.3.8 per assignment by Martti Kuparinen. This closes the referenced PR. @ text @d1 1 a1 1 $NetBSD$ @