aboutsummaryrefslogtreecommitdiff
path: root/gdb/python/lib
AgeCommit message (Collapse)AuthorFilesLines
2012-08-10 Add $_memeq, $_regex, $_streq, $_strlen convenience functions.Doug Evans2-0/+122
* NEWS: Document them. * data-directory/Makefile.in (PYTHON_FILES): Add function/__init__.py, function/strfns.py. * python/py-type.c (typy_array_1): New function. (typy_array): Call it. (typy_vector): New function. (type_object_methods): Add "vector". * python/lib/gdb/function/__init__.py: New file. * python/lib/gdb/function/strfns.py: New file. doc/ * gdb.texinfo (Convenience Funs): New node. (Types In Python): Document Type.vector. testsuite/ * gdb.python/py-strfns.c: New file. * gdb.python/py-strfns.exp: New file. * gdb.python/py-type.exp (test_fields): Add vector tests.
2012-04-18gdb/Jan Kratochvil2-4/+4
PR symtab/7259: * ada-exp.y (convert_char_literal): Use TYPE_FIELD_ENUMVAL. * ada-lang.c (ada_discrete_type_high_bound) (ada_discrete_type_low_bound): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM. (ada_identical_enum_types_p): Use TYPE_FIELD_ENUMVAL. (pos_atr, value_val_atr): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM. * ada-typeprint.c (print_enum_type): Change variable lastval to LONGEST. Use TYPE_FIELD_ENUMVAL. * ada-valprint.c (print_optional_low_bound, ada_print_scalar) (ada_val_print_1): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM. * c-typeprint.c (c_type_print_base): Move variable lastval to inner block, change it to LONGEST. Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM. * coffread.c (coff_read_enum_type): Use SET_FIELD_ENUMVAL. * dwarf2read.c (process_enumeration_scope): Likewise. * gdb-gdb.py (TypeFlagsPrinter): Use field.enumval instead of field.bitpos. (class StructMainTypePrettyPrinter): Support also FIELD_LOC_KIND_ENUMVAL. * gdbtypes.c (get_discrete_bounds): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM. (recursive_dump_type): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM. (copy_type_recursive): Support also FIELD_LOC_KIND_ENUMVAL. * gdbtypes.h (enum field_loc_kind): New FIELD_LOC_KIND_ENUMVAL. (struct main_type.flds_bnds.fields.loc): Adjust bitpos comment. New field enumval. (struct main_type.flds_bnds.bields): Adjust loc_kind and bitsize to accommodate enumval. (struct call_site): Adjust loc_kind to accommodate enumval. (FIELD_ENUMVAL, FIELD_ENUMVAL_LVAL, SET_FIELD_ENUMVAL) (TYPE_FIELD_ENUMVAL): New macros. * m2-typeprint.c (m2_enum): Use TYPE_FIELD_ENUMVAL. * mdebugread.c (parse_symbol): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM. * p-typeprint.c (pascal_type_print_base): Likewise. * python/lib/gdb/printing.py (class FlagEnumerationPrinter): Use enumval. * python/lib/gdb/types.py (make_enum_dict): Likewise. * python/py-type.c (convert_field): New variable addrstring. Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM. (check_types_equal): Support also FIELD_LOC_KIND_ENUMVAL. * stabsread.c (read_enum_type): Use SET_FIELD_ENUMVAL. * typepint.c (print_type_scalar): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM. * valprint.c (generic_val_print): Likewise. gdb/testsuite/ PR symtab/7259: * gdb.base/enumval.c: New test case. * gdb.base/enumval.exp: New test case. * gdb.python/py-type.exp (test_enums): Use field.enumval instead of field.bitpos.
2012-04-112012-04-02 Siva Chandra Reddy <sivachandra@google.com>Siva Chandra Reddy1-0/+755
New command 'explore' which helps explore values and types in scope. * NEWS: Add an entry about the new 'explore' command. * data-directory/Makefile.in: Add gdb/command/explore.py * python/lib/gdb/command/explore.py: Implemention of the 'explore' command using the GDB Python API. * doc/gdb.texinfo (Examining Data): Document the 'explore' command. * testsuite/gdb.python/Makefile.in: Add py-explore to EXECUTABLES. * testsuite/gdb.python/py-explore.c: C program used for testing the new 'explore' command on C constructs. * testsuite/gdb.python/py-explore.cc: C++ program used for testing the new 'explore' command on C++ constructs. * testsuite/gdb-python/py-explore.exp: Tests for the new 'explore' command on C constructs. * testsuite/gdb-python/py-explore-cc.exp: Tests for the new 'explore' command on C++ constructs.
2012-01-16gdbTom Tromey1-0/+50
PR python/13281: * gdbtypes.h (TYPE_FLAG_ENUM): New macro. (struct main_type) <flag_flag_enum>: New field. * dwarf2read.c (process_enumeration_scope): Detect "flag" enums. * NEWS: Add entries. * c-valprint.c (c_val_print) <TYPE_CODE_ENUM>: Handle "flag" enums. * python/lib/gdb/printing.py (_EnumInstance): New class. (FlagEnumerationPrinter): Likewise. gdb/doc * gdb.texinfo (gdb.printing): Document FlagEnumerationPrinter. gdb/testsuite * gdb.base/printcmds.c (enum flag_enum): New. (three): New global. * gdb.base/printcmds.exp (test_print_enums): Add test for flag enum printing. * gdb.python/py-pp-maint.py (build_pretty_printer): Instantiate FlagEnumerationPrinter. * gdb.python/py-pp-maint.exp: Add tests for FlagEnumerationPrinter. * gdb.python/py-pp-maint.c (enum flag_enum): New. (fval): New global.
2012-01-04Copyright year update in most files of the GDB Project.Joel Brobecker7-7/+7
gdb/ChangeLog: Copyright year update in most files of the GDB Project.
2011-12-06 * python/lib/gdb/command/pretty_printers.pyTom Tromey1-1/+1
(InfoPrettyPrinter.invoke1): Remove extra double quote.
2011-10-28* python/lib/gdb/types.py (deep_items): Rename from deepitems.Paul Koning1-2/+2
* NEWS: Mention deep_items.
2011-10-26* python/lib/gdb/types.py (deepitems): New function.Paul Koning1-0/+20
2011-10-07 * python/lib/gdb/printing.py (register_pretty_printer): New argumentDoug Evans1-5/+13
`replace'. testsuite/ * gdb.python/py-pp-maint.py: Add tests for `replace' arg.
2011-10-07 * python/lib/gdb/printing.py: Whitespace cleanup.Doug Evans1-9/+11
2011-08-172011-08-17 Phil Muldoon <pmuldoon@redhat.com>Phil Muldoon2-0/+215
Tom Tromey <tromey@redhat.com> Matt Rice <ratmice@gmail.com> * python/lib/gdb/prompt.py: New file. * python/lib/gdb/command/prompt.py: New file. * NEWS: Document set extended-prompt and gdb.prompt library 2011-08-17 Phil Muldoon <pmuldoon@redhat.com> * gdb.texinfo (Prompt): Add set/show extended-prompt documentation (Basic Python): Add prompt_hook anchor. (Python modules): Reword module text to reflect multiple modules. (gdb.prompt): Document gdb.prompt module. 2011-08-17 Phil Muldoon <pmuldoon@redhat.com> * gdb.python/python.exp: Add extended-prompt tests.
2011-08-092011-08-09 Phil Muldoon <pmuldoon@redhat.com>Phil Muldoon2-2/+27
* python/lib/gdb/__init__.py: Auto-load files in command and function directories. * python/python.c (finish_python_initialization): Use os.path.join. * python/lib/gdb/command/pretty_printers.py: Self register command. * NEWS: Document auto-loading. 2011-08-09 Phil Muldoon <pmuldoon@redhat.com> * gdb.texinfo (Python): Document command and function auto-loading.
2011-05-23 * python/lib/gdb/printing.py (register_pretty_printer): Add missingDoug Evans1-0/+1
entry for RuntimeError to doc string.
2011-01-01run copyright.sh for 2011.Joel Brobecker5-5/+5
2010-11-29 * python/lib/gdb/printing.py (register_pretty_printer): ChangeDoug Evans2-10/+10
printer-name:subprinter-name to printer-name;subprinter-name. * python/lib/gdb/command/pretty_printers.py (parse_printer_regexps): Ditto. (InfoPrettyPrinter, EnablePrettyPrinter, DisablePrettyPrinter): Ditto. doc/ * gdb.texinfo (Pretty-Printer Introduction): Change printer-name:subprinter-name to printer-name;subprinter-name. testsuite/ * gdb.python/py-pp-maint.exp: Change printer-name:subprinter-name to printer-name;subprinter-name.
2010-11-10 * python/lib/gdb/command/pretty_printers.pyDoug Evans1-1/+2
(do_enable_pretty_printer_1): Handle printer.subprinters is None.
2010-11-02 New python module gdb.printing, and new commands info pretty-printer,Doug Evans4-0/+586
enable pretty-printer, disable pretty-printer. * NEWS: Mention them. * data-directory/Makefile.in (PYTHON_FILES): Add gdb/printing.py, gdb/command/__init__.py, gdb/command/pretty_printers.py. * python/lib/gdb/__init__.py: Install pretty-printer commands. * python/lib/gdb/printing.py: New file. * python/lib/gdb/command/__init__.py: New file. * python/lib/gdb/command/pretty_printers.py: New file. doc/ * gdb.texinfo (Pretty Printing): Expand into three sections, introduction, example, and commands. (Python API): Delete section Disabling Pretty-Printers, merge into Selecting Pretty-Printers. (Writing a Pretty-Printer): New section. Move the pretty-printer example here, and reformat to match python coding style. Add a second example using the gdb.printing module. (Python modules): Add gdb.printing. testsuite/ * gdb.python/py-pp-maint.c: New file. * gdb.python/py-pp-maint.exp: New file. * gdb.python/py-pp-maint.py: New file.
2010-10-13 New python module gdb.types.Doug Evans1-0/+91
* NEWS: Document it. * data-directory/Makefile.in (PYTHON_FILES): Add gdb/types.py. * python/lib/gdb/types.py: New file. testsuite/ * lib/gdb-python.exp (gdb_check_python_config): New function. * gdb.python/Makefile.in (EXECUTABLES): Add lib-types. * gdb.python/lib-types.cc: New file. * gdb.python/lib-types.exp: New file. doc/ * gdb.texinfo (Python): Add "Python modules". (Types in Python): Add reference to gdb.types section. (Python modules): New node.
2010-10-06 Create subdir data-directory.Doug Evans1-0/+14
* Makefile.in (XML_SYSCALL_DIR, XML_SYSCALL_FILES): Moved to data-directory/Makefile.in. (SUBDIRS): Add data-directory. (all): Remove xml-syscall-copy dependency. (xml-syscall-copy): Moved to data-directory/Makefile.in as stamp-syscalls. (xml-syscall-install): Moved to data-directory/Makefile.in as install-syscalls. (install-only): Remove xml-syscall-install dependency. (all-data-directory): New rule. (data-directory/Makefile): New rule. * configure.ac (AC_OUTPUT): Add data-directory/Makefile. * configure: Regenerate. * data-directory/Makefile.in: New file. * python/lib/gdb/__init__.py: New file. testsuite/ * gdb.base/catch-syscall.exp (do_syscall_tests): Update location of syscall staging area.